Skip to content

Commit e9156f7

Browse files
Merge pull request #108 from CodeWithJuber/claude/loop-goal-worktree-issues-il3uk9
docs: sync code ↔ docs ↔ Mintlify site, add a Mintlify drift guard
2 parents e483059 + 30cecc6 commit e9156f7

50 files changed

Lines changed: 227 additions & 124 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

ARCHITECTURE.md

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,11 @@ every intra-repo Markdown anchor (`#x` and `path.md#x`) against the target's rea
242242
version; and `checkCrosswalk` resolves every `.js`/`.sh` binding the research paper's
243243
crosswalk (`research/formal-synthesis/crosswalk.json`) claims for this repo against the
244244
files that actually exist in `src/`, `global/guards/`, and `hooks/` (kit-only names opt
245-
out with a `kit:` prefix), so the paper's stated bindings can no longer trail the code. The two public pages
245+
out with a `kit:` prefix), so the paper's stated bindings can no longer trail the code; and
246+
`checkMintlify` extends the reconcile to the hand-maintained Mintlify site (`mintlify/`,
247+
previously unchecked and prone to drift) — every command must be documented on the English
248+
site as `forge <name>`, and any env var the site names must be one the code reads (no
249+
phantom vars). The two public pages
246250
(`landing/index.html` + the `build-pages.mjs` status page) derive from ONE color source —
247251
`brand.json.colors` (full dark + light palettes), emitted as CSS by `src/brand.js`
248252
(`rootTokensCss()`). `test/pages.test.js` enforces full-palette parity: every hex in
@@ -363,6 +367,11 @@ self-correction` (rules) · project-layer template.
363367
**`forge init`** (one-command bootstrap) · **`cost-budget` guard** ·
364368
**Start-Here catalog** · **`recall`** unified memory subsystem.
365369

370+
**Bundled skills (model-invoked, shipped in `global/tools/`):** beyond the reuse skills
371+
above, `problem-solver` (a framework-driven Clarify → Classify → Diagnose → Generate →
372+
Decide → Act cycle) and `catchup` (session re-orientation, pairs with `forge decide`) ship
373+
as native skills through the plugin's `skills` directory.
374+
366375
## `atlas` — the code graph
367376

368377
`forge atlas build [path]` walks the tree and writes a **portable JSON artifact**,

CHANGELOG.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,20 @@ to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
66

77
## [Unreleased]
88

9+
### Changed
10+
11+
- **Synced the docs with the code and added a Mintlify drift guard.** `docs check` now has
12+
a `checkMintlify` reconciler that reconciles the hand-maintained Mintlify site
13+
(`mintlify/`) against the code the same way it already does README/GUIDE — every command
14+
must be documented on the English site as `forge <name>`, and any env var the site names
15+
must be one the code reads (no phantom vars). The site had drifted (it was outside the
16+
reconciler) and is now brought current: the `FORGE_LEDGER_ONLY` default flip, the
17+
`problem-solver` skill, the `forge dash` write guard, the `Labs (experimental)` command
18+
group, and version-neutral wording (was "new in v0.19"). Top-level docs updated too —
19+
`ROADMAP.md` (legacy-store retirement now shipped), a stale `forge cortex` sample in
20+
`docs/GUIDE.md`, and the `ARCHITECTURE.md` tool map (adds `problem-solver`/`catchup`).
21+
`mintlify/docs.json` locale code `zh` aligned with its `zh-CN/` directory.
22+
923
## [0.27.1] - 2026-07-21
1024

1125
### Security

ROADMAP.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -60,12 +60,14 @@ confidence only from independent oracles, and merges across teammates conflict-f
6060

6161
## Next
6262

63-
- **Legacy store retirement** — the read-path flip has shipped: every read surface
64-
(cortex injection/status, the substrate advisory, routing, `recall list`, brain's
65-
AGENTS.md index) is now a merged view (legacy ∪ ledger) via `src/ledger_read.js`,
66-
so teammate knowledge from `forge ledger merge` reaches injection. The legacy
67-
formats (`lessons/*.md`, recall/brain fact files) are still written as the canonical
68-
local state; the remaining step is retiring them so the ledger is the only store.
63+
- **Legacy store retirement** — mostly shipped. The read-path flip (every read surface —
64+
cortex injection/status, the substrate advisory, routing, `recall list`, brain's
65+
AGENTS.md index — is a merged view (legacy ∪ ledger) via `src/ledger_read.js`) landed
66+
first, and the **write default has now flipped too**: `FORGE_LEDGER_ONLY` defaults on, so
67+
the legacy formats (`lessons/*.md`, recall/brain fact files) are no longer written and the
68+
ledger is the sole store. `FORGE_LEDGER_ONLY=0` is a one-release escape hatch that restores
69+
the file store. The only remaining step is deleting the now-dormant legacy write/read code
70+
once that escape hatch is removed in a later release.
6971
- **OpenAI + Gemini provider detection** — extend `autoDetectProvider()` beyond
7072
Anthropic/OpenRouter/LiteLLM (`OPENAI_API_KEY`, `GEMINI_API_KEY`) with the same
7173
guided, low-configuration auto-detect contract.

docs/GUIDE.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -653,7 +653,7 @@ Forge cortex — self-correcting project memory
653653

654654
(no active lessons yet — Cortex learns from corrections as you work)
655655

656-
stored in .forge/lessons/ (git-committable, auditable)
656+
stored in the .forge/ ledger (content-addressed, git-mergeable)
657657
```
658658

659659
`forge cortex why <symbol>` shows the lessons that would be injected when you touch it.
@@ -1040,7 +1040,7 @@ Plain `forge cost` remains the per-day spend view via `ccusage`.
10401040
| `forge init` | Emit every tool's native config from one source. |
10411041
| `forge sync` | Recompile `source/` → each tool's files (idempotent). |
10421042
| `forge doctor` | Health check: layers, install, drift, cortex. `forge doctor --fix` auto-repairs the safely fixable findings (missing settings hooks/permissions, ledger union-merge rule, stale `AGENTS.md`, non-executable guards) by reusing the same idempotent functions `forge init`/`forge sync` use, then re-checks. |
1043-
| `forge docs check` | Docs↔code drift: commands, env vars, MCP tools, CHANGELOG reconciled against the code (CI-gated on the forge repo itself). |
1043+
| `forge docs check` | Docs↔code drift: commands, env vars, MCP tools, CHANGELOG, and the Mintlify site (`mintlify/`) reconciled against the code (CI-gated on the forge repo itself). |
10441044
| `forge docs sync` | Diff-driven stale-docs sweep: UPDATED / STALE (file:line hits) / VERIFIED-UNAFFECTED per artifact (see the full section above). |
10451045
| `forge docs impact` | Documentation-reference graph: extract typed entities (commands/flags/env/MCP/symbols/version), index every doc surface, and report which docs reference the entities THIS diff changed — ranked by confidence (see the full section above). |
10461046
| `forge catalog` | Start-Here index of every tool / crew / guard. |

mintlify/ar/cli/config.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ forge cost --stages # measured per-stage cost factors
3434
لوحة معلومات محلية فوق السجل والقياسات ونصف قطر الانفجار.
3535

3636
```bash
37-
forge dash # localhost-only, read-only (default port 4242)
37+
forge dash # localhost-only (default port 4242)
3838
```
3939

4040
## `forge brand`
@@ -72,7 +72,7 @@ forge stack
7272
وأُطر العمل، ومديري الحِزم، وأوامر الاختبار **الفعلية** للمستودع — التي تُغذّي قائمة
7373
تحقق الركيزة.
7474

75-
## `forge report` <sub>v0.19+</sub>
75+
## `forge report`
7676

7777
توليد تقرير HTML ثابت عن حالة Forge للمستودع — السجل والقياسات ونصف قطر الانفجار
7878
مُصيَّرة في ملف مكتفٍ ذاتيًا يمكنك مشاركته أو أرشفته.
@@ -81,7 +81,7 @@ forge stack
8181
forge report
8282
```
8383

84-
## `forge tools` <sub>v0.19+</sub>
84+
## `forge tools`
8585

8686
اختَر أداة الترميز الأساسية بالذكاء الاصطناعي لهذا المستودع، ووصِّل مدخلات `.gitignore`
8787
المطابقة، ليتم تجاهل الإعدادات المُولَّدة وقطع `.forge/` تجاهلًا صحيحًا لإعدادك.

mintlify/ar/cli/core.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ forge docs sync # diff-driven stale-docs sweep
107107
```bash
108108
forge update # apply the update (git checkout or npm/copy install)
109109
forge update --check # report whether a newer version is available
110-
forge update --to <version> # pin or downgrade to a specific version (v0.19+)
110+
forge update --to <version> # pin or downgrade to a specific version
111111
```
112112

113113
كل مسار يفشل بلطف — دون اتصال أو منبع أو رأس منفصل يُرجَع "غير معروف"، لا خطأ.

mintlify/ar/cli/memory.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ forge ledger query "<text>" # retrieve by relevance
5656
forge ledger ratify <id> # human accept
5757
forge ledger retract <id> # tombstone a claim
5858
forge ledger merge <path> # fold a teammate's ledger in, conflict-free
59-
forge ledger import # bridge legacy stores into the ledger
59+
forge ledger import # back-fill pre-ledger history into the ledger
6060
```
6161

6262
أضف `--personal` للحصول على سجل خاص بالمستخدم.
@@ -88,7 +88,7 @@ forge decide "<decision> — <reason>"
8888
forge decide # read the log before re-deciding
8989
```
9090

91-
## `forge know` <sub>v0.19+</sub>
91+
## `forge know`
9292

9393
توجيه حقيقة إلى موطن تخزينها الصحيح — يقرر ما إذا كانت المعرفة تنتمي إلى
9494
`recall`، أو `remember`/`brain`، أو قرار، أو درس cortex، ويودعها هناك.
@@ -97,7 +97,7 @@ forge decide # read the log before re-deciding
9797
forge know "<fact>"
9898
```
9999

100-
## `forge deja` <sub>v0.19+</sub>
100+
## `forge deja`
101101

102102
بحث عن أعمال سابقة مماثلة — يُظهر الأعمال السابقة في السجل التي تشبه ما توشك على
103103
عمله، لتعيد استخدام الإثبات بدلًا من التوليد من جديد.

mintlify/ar/cli/overview.mdx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,15 +49,16 @@ description: "كل أمر من أوامر forge مُصنَّف حسب المجم
4949
| `FORGE_NO_HINT=1` | كتم تلميح init المُعروض لمرة واحدة الذي يدفعك إلى تشغيل `forge init`. |
5050
| `FORGE_VERBOSE=1` | إظهار عنوان الأمر (`Forge <cmd> — …`) المخفي افتراضيًا. |
5151
| `FORGE_EMBED=1` | تفعيل طبقة التضمينات لاسترجاع الذاكرة (يبقى MinHash افتراضًا بدون تبعيات). |
52+
| `FORGE_LEDGER_ONLY=0` | منفذ هروب. وضع «السجل فقط» هو الافتراضي — تعيش الذاكرة في `.forge/ledger` فقط، ولم تعد ملفات `lessons/*.md` وملفات الحقائق القديمة تُكتب. اضبطه على `0` لاستعادة مخزن الملفات القديم. |
5253

5354
<Note>
5455
شغّل `forge --help` للقائمة المحدَّثة دائمًا، أو `forge catalog` لفهرس البدء لكل
5556
أداة وطاقم وحاجز مع سبب موجز.
5657
</Note>
5758

58-
## جديد في v0.19+
59+
## أوامر وعلامات أحدث
5960

60-
عدة أوامر وعلامات تصل في خط v0.19. موثقة في صفحات مجموعاتها وموسومة داخل النص:
61+
هذه الأوامر والعلامات متاحة. موثقة في صفحات مجموعاتها وموسومة داخل النص:
6162

6263
| الأمر / العلامة | المجموعة | ماذا يفعل |
6364
| ---------------------- | -------- | ----------------------------------------------- |

mintlify/ar/cli/quality.mdx

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
title: "أوامر Quality"
3-
description: "التحقق والسلامة: verify وscan وspec وtaste وuicheck وharden — إضافةً إلى بوّابتَي precommit وradar في الإصدار v0.19+."
3+
description: "التحقق والسلامة: verify وscan وspec وtaste وuicheck وharden — إضافةً إلى بوّابتَي precommit وradar."
44
---
55

66
مجموعة Quality هي سطح التحقق والسلامة. راجع
@@ -12,7 +12,7 @@ description: "التحقق والسلامة: verify وscan وspec وtaste وuich
1212

1313
```bash
1414
forge verify
15-
forge verify --deep # multi-lens consensus (v0.19+)
15+
forge verify --deep # multi-lens consensus
1616
```
1717

1818
يُبلِّغ `forge verify --deep` عن `status` رباعي الحالات بدلًا من نجاح/إخفاق ثنائي:
@@ -76,7 +76,7 @@ forge uicheck visual <file-or-url> # Playwright-rendered check (opt-in tier)
7676
forge harden
7777
```
7878

79-
## `forge precommit` <sub>v0.19+</sub>
79+
## `forge precommit`
8080

8181
بوّابة على مستوى الالتزام — تُشغّل الحد الأدنى للتحقق عند وقت الالتزام، فيُلتقط
8282
العمل الجزئي أو غير المُتحقَّق منه قبل أن يستقر.
@@ -85,7 +85,7 @@ forge harden
8585
forge precommit
8686
```
8787

88-
## `forge radar` <sub>v0.19+</sub>
88+
## `forge radar`
8989

9090
حلقات حداثة التبعيات — تُجمِّع تبعيات المشروع بحسب مدى حداثتها، ليظهر ما هو بائت أو
9191
منحرف قبل أن يعضّ.

mintlify/ar/concepts/verification-gates.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ forge verify --deep # multi-lens consensus — several independent checks
2424
```
2525

2626
<Note>
27-
يُصعّد `--deep` (v0.19+) إلى إجماع متعدد العدسات: يجب أن يجتاز التغيير عدة عدسات
27+
يُصعّد `--deep` إلى إجماع متعدد العدسات: يجب أن يجتاز التغيير عدة عدسات
2828
تحقق مستقلة، لا عدسة واحدة فقط.
2929
</Note>
3030

@@ -92,7 +92,7 @@ forge harden # gitleaks pre-commit + sandbox settings
9292
## بوابة على مستوى الالتزام — `forge precommit`
9393

9494
<Note>
95-
`forge precommit` (v0.19+) هي بوابة على مستوى الالتزام (commit) — تُشغّل الحد الأدنى للتحقق
95+
`forge precommit` هي بوابة على مستوى الالتزام (commit) — تُشغّل الحد الأدنى للتحقق
9696
وقت الالتزام حتى يُصطاد العمل الجزئي أو غير المُتحقَق منه قبل أن يهبط.
9797
</Note>
9898

0 commit comments

Comments
 (0)