@bongos/core 1.24.34 → 1.24.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.bongos-core.json +17 -17
- package/docs/copy-inventory.md +6 -6
- package/docs/copy-registry.json +8 -8
- package/docs/module-api-changelog.md +2 -0
- package/docs/onboarding/primer.md +2 -0
- package/docs/page-readings.json +167 -165
- package/modules/hall-ui/public/primer.js +10 -3
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/release-notes.json +6 -0
- package/scripts/bongos/gen-hall-sitemap.js +12 -2
- package/src/module-api.js +1 -1
- package/tests/hall_sitemap.mjs +25 -0
package/.bongos-core.json
CHANGED
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
"artifact": "bongos-core",
|
|
3
3
|
"manifest_schema": 1,
|
|
4
4
|
"generator": "scripts/bongos/package-core.js",
|
|
5
|
-
"core_version": "1.24.
|
|
6
|
-
"core_contract": "1.24.
|
|
7
|
-
"source_commit": "
|
|
5
|
+
"core_version": "1.24.35",
|
|
6
|
+
"core_contract": "1.24.35",
|
|
7
|
+
"source_commit": "a82045c6c75138672798e2c7e182583e7365d58c",
|
|
8
8
|
"source_ref": "HEAD",
|
|
9
|
-
"built_at": "2026-11-
|
|
9
|
+
"built_at": "2026-11-04T20:05:21.885Z",
|
|
10
10
|
"redaction": {
|
|
11
11
|
"model": "docs-redacted+functional-verbatim",
|
|
12
12
|
"docs_redacted": 636,
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"gate": "passed"
|
|
18
18
|
},
|
|
19
19
|
"file_count": 4534,
|
|
20
|
-
"tree_sha256": "
|
|
20
|
+
"tree_sha256": "409e0c31fe32fc74b0adf245106125daa12bdb8c0d74bc88833c5240df8a2b3f",
|
|
21
21
|
"files": [
|
|
22
22
|
{
|
|
23
23
|
"path": ".claude/skills/ask-for-help/SKILL.md",
|
|
@@ -2487,12 +2487,12 @@
|
|
|
2487
2487
|
{
|
|
2488
2488
|
"path": "docs/copy-inventory.md",
|
|
2489
2489
|
"mode": "0000644",
|
|
2490
|
-
"sha256": "
|
|
2490
|
+
"sha256": "c6bded350bc1ca79f1ac76474498900c77c52f2446ee675d965cf898bb5e6b07"
|
|
2491
2491
|
},
|
|
2492
2492
|
{
|
|
2493
2493
|
"path": "docs/copy-registry.json",
|
|
2494
2494
|
"mode": "0000644",
|
|
2495
|
-
"sha256": "
|
|
2495
|
+
"sha256": "229b43eed3a49670f4d3750d4af475dbb05320f9b8505ea0ecbb4dcb18c13013"
|
|
2496
2496
|
},
|
|
2497
2497
|
{
|
|
2498
2498
|
"path": "docs/design/apex-pass-2-direction.md",
|
|
@@ -3002,7 +3002,7 @@
|
|
|
3002
3002
|
{
|
|
3003
3003
|
"path": "docs/module-api-changelog.md",
|
|
3004
3004
|
"mode": "0000644",
|
|
3005
|
-
"sha256": "
|
|
3005
|
+
"sha256": "38bed4a35ac179d3c478dc9aaff6e026220eda2c722c8ea9e9753f5a7c851c6b"
|
|
3006
3006
|
},
|
|
3007
3007
|
{
|
|
3008
3008
|
"path": "docs/modules-contract.md",
|
|
@@ -3062,7 +3062,7 @@
|
|
|
3062
3062
|
{
|
|
3063
3063
|
"path": "docs/onboarding/primer.md",
|
|
3064
3064
|
"mode": "0000644",
|
|
3065
|
-
"sha256": "
|
|
3065
|
+
"sha256": "21bfe0b7d1223820cb0ccaab56888ced3504d106bedb6e0c5bbf2f01a7b8f05f"
|
|
3066
3066
|
},
|
|
3067
3067
|
{
|
|
3068
3068
|
"path": "docs/onboarding/slash-commands.md",
|
|
@@ -3092,7 +3092,7 @@
|
|
|
3092
3092
|
{
|
|
3093
3093
|
"path": "docs/page-readings.json",
|
|
3094
3094
|
"mode": "0000644",
|
|
3095
|
-
"sha256": "
|
|
3095
|
+
"sha256": "b9194759775e9080c8e6b4a8154e16cf2b844ec68ff8dd4b539cc88300a63a4f"
|
|
3096
3096
|
},
|
|
3097
3097
|
{
|
|
3098
3098
|
"path": "docs/project-context.template.md",
|
|
@@ -6862,7 +6862,7 @@
|
|
|
6862
6862
|
{
|
|
6863
6863
|
"path": "modules/hall-ui/public/primer.js",
|
|
6864
6864
|
"mode": "0000644",
|
|
6865
|
-
"sha256": "
|
|
6865
|
+
"sha256": "c59d4bdcd03d496b34571ec7fc78a02aa05a4d4431fd20d50cf86c236da9ca61"
|
|
6866
6866
|
},
|
|
6867
6867
|
{
|
|
6868
6868
|
"path": "modules/hall-ui/public/primer.states.json",
|
|
@@ -11862,12 +11862,12 @@
|
|
|
11862
11862
|
{
|
|
11863
11863
|
"path": "package-lock.json",
|
|
11864
11864
|
"mode": "0000644",
|
|
11865
|
-
"sha256": "
|
|
11865
|
+
"sha256": "ff0147df149a0d91651e57cf92d490cdd26b3026b9d4f9f5d17ebfb7b40418c2"
|
|
11866
11866
|
},
|
|
11867
11867
|
{
|
|
11868
11868
|
"path": "package.json",
|
|
11869
11869
|
"mode": "0000644",
|
|
11870
|
-
"sha256": "
|
|
11870
|
+
"sha256": "156ee2c1055d7499c5b1e4ac012598e0ee316f15e7f6f0fa17ab6b5122dbc523"
|
|
11871
11871
|
},
|
|
11872
11872
|
{
|
|
11873
11873
|
"path": "public-docs/index.html",
|
|
@@ -11887,7 +11887,7 @@
|
|
|
11887
11887
|
{
|
|
11888
11888
|
"path": "release-notes.json",
|
|
11889
11889
|
"mode": "0000644",
|
|
11890
|
-
"sha256": "
|
|
11890
|
+
"sha256": "10a519c96825d610839bcd4762a09b3527f9e413b1ba07472692d46ae5bec7fd"
|
|
11891
11891
|
},
|
|
11892
11892
|
{
|
|
11893
11893
|
"path": "scripts/bongos/CLAUDE.md",
|
|
@@ -12487,7 +12487,7 @@
|
|
|
12487
12487
|
{
|
|
12488
12488
|
"path": "scripts/bongos/gen-hall-sitemap.js",
|
|
12489
12489
|
"mode": "0000644",
|
|
12490
|
-
"sha256": "
|
|
12490
|
+
"sha256": "2ba7a030084202304798a40fec8a6a072fa8c26daa0771f3c19815cefade8457"
|
|
12491
12491
|
},
|
|
12492
12492
|
{
|
|
12493
12493
|
"path": "scripts/bongos/gen-interaction-posture.js",
|
|
@@ -15792,7 +15792,7 @@
|
|
|
15792
15792
|
{
|
|
15793
15793
|
"path": "src/module-api.js",
|
|
15794
15794
|
"mode": "0000644",
|
|
15795
|
-
"sha256": "
|
|
15795
|
+
"sha256": "e15984067cd3f3ee65537676d73aa6800c6e91d5436dbc5c74b3adad7531c3b4"
|
|
15796
15796
|
},
|
|
15797
15797
|
{
|
|
15798
15798
|
"path": "src/module-loader/catalog.js",
|
|
@@ -18802,7 +18802,7 @@
|
|
|
18802
18802
|
{
|
|
18803
18803
|
"path": "tests/hall_sitemap.mjs",
|
|
18804
18804
|
"mode": "0000644",
|
|
18805
|
-
"sha256": "
|
|
18805
|
+
"sha256": "4fee1eef26dd92553cb2e4245886f48a21e76b41b2b85a42f1ecc7a556ab6e0f"
|
|
18806
18806
|
},
|
|
18807
18807
|
{
|
|
18808
18808
|
"path": "tests/hall_sky.mjs",
|
package/docs/copy-inventory.md
CHANGED
|
@@ -237,7 +237,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
|
|
|
237
237
|
| `ecfbb10d4ca9` | certain | Awaiting the owner/manager's approval | `modules/hall-ui/public/goals-render.js:964` |
|
|
238
238
|
| `08afb1257b71` | certain | Back to home | `modules/hall-ui/public/drachmae.html:83` |
|
|
239
239
|
| `08afb1257b71` | certain | Back to home | `modules/hall-ui/public/primer.html:85` |
|
|
240
|
-
| `08afb1257b71` | certain | Back to home | `modules/hall-ui/public/primer.js:
|
|
240
|
+
| `08afb1257b71` | certain | Back to home | `modules/hall-ui/public/primer.js:289` |
|
|
241
241
|
| `97d710b0e6a8` | certain | Back to studio | `modules/hall-ui/public/tweak-editor.html:54` |
|
|
242
242
|
| `ef2fab4901d6` | certain | Back to tasks | `modules/hall-ui/public/task.js:208` |
|
|
243
243
|
| `2deb6dd36e58` | certain | Back to the city overview | `modules/hall-ui/public/street.html:67` |
|
|
@@ -416,7 +416,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
|
|
|
416
416
|
| `9d533e811dec` | certain | Could not load your sessions: {…} | `modules/hall-ui/public/settings-sessions.js:114` |
|
|
417
417
|
| `64f9d51f0fa2` | certain | Could not load your settings. | `modules/hall-ui/public/settings.js:1025` |
|
|
418
418
|
| `de244c45d916` | certain | Could not load {…} | `modules/hall-ui/public/task.js:1060` |
|
|
419
|
-
| `2366356926b4` | certain | Could not mark the primer just now. Try again. | `modules/hall-ui/public/primer.js:
|
|
419
|
+
| `2366356926b4` | certain | Could not mark the primer just now. Try again. | `modules/hall-ui/public/primer.js:266` |
|
|
420
420
|
| `48bb6a9b80b3` | certain | Could not reach the server. | `modules/hall-ui/public/market-watch-lib.js:259` |
|
|
421
421
|
| `753987b5da13` | certain | Could not reach the submit endpoint. | `modules/hall-ui/public/modules.js:584` |
|
|
422
422
|
| `6f500726f0ac` | certain | Could not read the report: {…} | `modules/hall-ui/public/watch.js:768` |
|
|
@@ -660,7 +660,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
|
|
|
660
660
|
| `1a87d112d002` | certain | How your work has changed over time. | `modules/hall-ui/public/hall-widgets.js:182` |
|
|
661
661
|
| `8f0951b59496` | certain | I am | `modules/hall-ui/public/settings.html:108` |
|
|
662
662
|
| `08d3bf741a2c` | certain | I have read it | `modules/hall-ui/public/primer.html:97` |
|
|
663
|
-
| `08d3bf741a2c` | certain | I have read it | `modules/hall-ui/public/primer.js:
|
|
663
|
+
| `08d3bf741a2c` | certain | I have read it | `modules/hall-ui/public/primer.js:265` |
|
|
664
664
|
| `edc4ed246faf` | certain | I tried this on the live site | `modules/hall-ui/public/criterion-uat-ui.js:148` |
|
|
665
665
|
| `a4ff1e9c34e3` | certain | Idea {…} | `modules/hall-ui/public/idea.js:445` |
|
|
666
666
|
| `a4ff1e9c34e3` | certain | Idea {…} | `modules/hall-ui/public/idea.js:487` |
|
|
@@ -910,7 +910,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
|
|
|
910
910
|
| `2947c1ddea9a` | certain | No running box to deploy. | `modules/hall-ui/public/deploy.js:720` |
|
|
911
911
|
| `c8fa4bdba44a` | certain | No saved views yet. Set the filters you want, then save them here. | `modules/hall-ui/public/hall-kit.js:409` |
|
|
912
912
|
| `b67c628da0c1` | certain | No screen to record: this is signed off without a video | `modules/hall-ui/public/criterion-uat-ui.js:64` |
|
|
913
|
-
| `9fb9f766450d` | certain | No sections yet | `modules/hall-ui/public/primer.js:
|
|
913
|
+
| `9fb9f766450d` | certain | No sections yet | `modules/hall-ui/public/primer.js:137` |
|
|
914
914
|
| `bef9fe43ba84` | certain | No sessions recorded yet. They land here as builders ship and end sessions. | `modules/hall-ui/public/sessions.js:149` |
|
|
915
915
|
| `084748fd85b4` | certain | No shipped work is recorded between core {…} and {…}. | `modules/hall-ui/public/deploy.js:549` |
|
|
916
916
|
| `3f2dfb5a98ce` | certain | No signed works hang here yet. A page an artist tweaks, or a design that ships with its picture, hangs here on | `modules/hall-ui/public/home-gallery.js:111` |
|
|
@@ -1091,7 +1091,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
|
|
|
1091
1091
|
| `152331290026` | certain | Preview {…} sound | `modules/hall-ui/public/settings.js:218` |
|
|
1092
1092
|
| `4644c8289f13` | certain | Previous page | `modules/hall-ui/public/hall-kit.js:72` |
|
|
1093
1093
|
| `5670f974fa5d` | certain | Previous work | `modules/hall-ui/public/home-gallery.js:112` |
|
|
1094
|
-
| `d637875ef146` | certain | Primer acknowledged. | `modules/hall-ui/public/primer.js:
|
|
1094
|
+
| `d637875ef146` | certain | Primer acknowledged. | `modules/hall-ui/public/primer.js:261` |
|
|
1095
1095
|
| `0ecbc4ee23f0` | certain | Primer required | `modules/hall-ui/public/work.html:42` |
|
|
1096
1096
|
| `04f8740a0cb4` | certain | Primer — {{worldName}} | `modules/hall-ui/public/primer.html:6` |
|
|
1097
1097
|
| `04f8740a0cb4` | certain | Primer — {{worldName}} | `modules/hall-ui/public/primer.html:6` |
|
|
@@ -1737,7 +1737,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
|
|
|
1737
1737
|
| `cf0c107a39fc` | certain | You created this task, but it has shipped. Shipped work is immutable history — nobody can retire it, whatever | `modules/hall-ui/public/task.js:819` |
|
|
1738
1738
|
| `b91183c02c63` | certain | You created this task, but someone is holding a claim on it. Once that is released you can retire it yourself. | `modules/hall-ui/public/task.js:824` |
|
|
1739
1739
|
| `da274462bb30` | certain | You have no open asks. | `modules/hall-ui/public/collab.html:83` |
|
|
1740
|
-
| `6b759151f722` | certain | You have reached the end. The button below is now active. | `modules/hall-ui/public/primer.js:
|
|
1740
|
+
| `6b759151f722` | certain | You have reached the end. The button below is now active. | `modules/hall-ui/public/primer.js:316` |
|
|
1741
1741
|
| `044387a6f90c` | certain | You haven’t joined any open goals. | `modules/hall-ui/public/goals.js:100` |
|
|
1742
1742
|
| `819dfb951611` | certain | You {…}. | `modules/hall-ui/public/board-room.js:471` |
|
|
1743
1743
|
| `8e1915b19274` | certain | You're in the {…} server with your rank role. | `modules/hall-ui/public/settings.js:530` |
|
package/docs/copy-registry.json
CHANGED
|
@@ -854,7 +854,7 @@
|
|
|
854
854
|
"at": [
|
|
855
855
|
"modules/hall-ui/public/drachmae.html:83",
|
|
856
856
|
"modules/hall-ui/public/primer.html:85",
|
|
857
|
-
"modules/hall-ui/public/primer.js:
|
|
857
|
+
"modules/hall-ui/public/primer.js:289"
|
|
858
858
|
]
|
|
859
859
|
},
|
|
860
860
|
{
|
|
@@ -1797,7 +1797,7 @@
|
|
|
1797
1797
|
"occurrences": 2,
|
|
1798
1798
|
"at": [
|
|
1799
1799
|
"modules/hall-ui/public/primer.html:97",
|
|
1800
|
-
"modules/hall-ui/public/primer.js:
|
|
1800
|
+
"modules/hall-ui/public/primer.js:265"
|
|
1801
1801
|
]
|
|
1802
1802
|
},
|
|
1803
1803
|
{
|
|
@@ -4672,7 +4672,7 @@
|
|
|
4672
4672
|
"surface": "builders-hall",
|
|
4673
4673
|
"text": "Back to home",
|
|
4674
4674
|
"file": "modules/hall-ui/public/primer.js",
|
|
4675
|
-
"line":
|
|
4675
|
+
"line": 289,
|
|
4676
4676
|
"origin": "js-markup",
|
|
4677
4677
|
"confidence": "certain"
|
|
4678
4678
|
},
|
|
@@ -6283,7 +6283,7 @@
|
|
|
6283
6283
|
"surface": "builders-hall",
|
|
6284
6284
|
"text": "Could not mark the primer just now. Try again.",
|
|
6285
6285
|
"file": "modules/hall-ui/public/primer.js",
|
|
6286
|
-
"line":
|
|
6286
|
+
"line": 266,
|
|
6287
6287
|
"origin": "js-notice",
|
|
6288
6288
|
"confidence": "certain"
|
|
6289
6289
|
},
|
|
@@ -8479,7 +8479,7 @@
|
|
|
8479
8479
|
"surface": "builders-hall",
|
|
8480
8480
|
"text": "I have read it",
|
|
8481
8481
|
"file": "modules/hall-ui/public/primer.js",
|
|
8482
|
-
"line":
|
|
8482
|
+
"line": 265,
|
|
8483
8483
|
"origin": "js-text-assign",
|
|
8484
8484
|
"confidence": "certain"
|
|
8485
8485
|
},
|
|
@@ -10729,7 +10729,7 @@
|
|
|
10729
10729
|
"surface": "builders-hall",
|
|
10730
10730
|
"text": "No sections yet",
|
|
10731
10731
|
"file": "modules/hall-ui/public/primer.js",
|
|
10732
|
-
"line":
|
|
10732
|
+
"line": 137,
|
|
10733
10733
|
"origin": "js-markup",
|
|
10734
10734
|
"confidence": "certain"
|
|
10735
10735
|
},
|
|
@@ -12358,7 +12358,7 @@
|
|
|
12358
12358
|
"surface": "builders-hall",
|
|
12359
12359
|
"text": "Primer acknowledged.",
|
|
12360
12360
|
"file": "modules/hall-ui/public/primer.js",
|
|
12361
|
-
"line":
|
|
12361
|
+
"line": 261,
|
|
12362
12362
|
"origin": "js-notice",
|
|
12363
12363
|
"confidence": "certain"
|
|
12364
12364
|
},
|
|
@@ -18172,7 +18172,7 @@
|
|
|
18172
18172
|
"surface": "builders-hall",
|
|
18173
18173
|
"text": "You have reached the end. The button below is now active.",
|
|
18174
18174
|
"file": "modules/hall-ui/public/primer.js",
|
|
18175
|
-
"line":
|
|
18175
|
+
"line": 316,
|
|
18176
18176
|
"origin": "js-text-assign",
|
|
18177
18177
|
"confidence": "certain"
|
|
18178
18178
|
},
|
|
@@ -3322,5 +3322,7 @@ is load-bearing: the script throws rather than guess if it is missing, and
|
|
|
3322
3322
|
landed since 1.24.32 with no explicit bump. run 41880114152. (task 1002620)
|
|
3323
3323
|
1.24.34 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
|
|
3324
3324
|
landed since 1.24.33 with no explicit bump. run 41899266144. (task 1002620)
|
|
3325
|
+
1.24.35 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
|
|
3326
|
+
landed since 1.24.34 with no explicit bump. run 41902956083. (task 1002620)
|
|
3325
3327
|
---------------------------------------------------------------------------
|
|
3326
3328
|
```
|
|
@@ -113,6 +113,8 @@ Other depth, in roughly the order you'll need it:
|
|
|
113
113
|
|
|
114
114
|
- [`docs/onboarding/example-and-karma.md`](drachmae-and-karma.md) — the full reward economy: how example and karma are earned, the cost-plus session reward, and the monthly budget cap
|
|
115
115
|
- [`docs/onboarding/slash-commands.md`](slash-commands.md) — which slash commands ship with Claude Code and which are this project's, and what to do about the ones that collide
|
|
116
|
+
- [The Commands page](../../modules/hall-ui/public/commands.html) — every slash command and terminal command this project has, what each does and what it costs
|
|
117
|
+
- [The Repo Atlas](../../modules/hall-ui/public/atlas.html) — a live map of the code: how it is organised and which modules stand on their own
|
|
116
118
|
- [`docs/architecture.md`](../architecture.md) — live system: droplet, stack, schema, API surface
|
|
117
119
|
- [`docs/modules-contract.md`](../modules-contract.md) — the product is built as a small core plus swappable `modules/<key>/` (the game, Discord, art, and more); this is the live roster and how a task lands inside one
|
|
118
120
|
- [`docs/canonical-permissions.md`](../canonical-permissions.md) — who can do what (rank gates)
|
package/docs/page-readings.json
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
"adr": "0341 D3",
|
|
6
6
|
"reread": "node scripts/bongos/page-reader.js --stale",
|
|
7
7
|
"how": ["Generated by node scripts/bongos/page-reader.js (BV2.TW04, task 1004315; ADR 0341 D3). Do not hand-edit.","One entry per page of docs/page-inventory.json. Lines are in page order: the default state first, and a line only another state shows sits where that state shows it, with its state named.","placement: placed = a docs/copy-registry.json row renders it (file, line, string_id); shared = shell text every page of the surface carries (top bar, sidebar, footer), with its row when the registry has one; unplaced = the registry cannot place it (a rewrite becomes an engineer task, ADR 0341 D4).","text keeps {…} where the registry row has a hole, or where a value the page read from its API was filled in. A string that is only such data is counted under omitted.data, not listed.","reading_hash is over the non-shared lines (key, section, text); files_hash is over the page's inventory files. --check compares files_hash only and never opens a browser.","Rendered through the hall-preview harness (hall) and the ui-design kit stub (landing, status), at 1280x800 with the clock pinned, so a reading is the fixture world's page."],
|
|
8
|
-
"counts": {"pages":51,"lines":
|
|
8
|
+
"counts": {"pages":51,"lines":5650,"placed":1749,"shared":493,"unplaced":3408,"omitted_data":3851},
|
|
9
9
|
"pages": [
|
|
10
10
|
{
|
|
11
11
|
"id": "builders:ai-studio",
|
|
@@ -2143,9 +2143,9 @@
|
|
|
2143
2143
|
"surface": "builders",
|
|
2144
2144
|
"title": "Primer",
|
|
2145
2145
|
"states_read": ["in","toc-open","out"],
|
|
2146
|
-
"files_hash": "
|
|
2147
|
-
"reading_hash": "
|
|
2148
|
-
"counts": {"lines":
|
|
2146
|
+
"files_hash": "1c41687792e0c832",
|
|
2147
|
+
"reading_hash": "cd191b1f0c8f407b",
|
|
2148
|
+
"counts": {"lines":425,"placed":43,"shared":9,"unplaced":373},
|
|
2149
2149
|
"omitted": {"data":7},
|
|
2150
2150
|
"notes": [],
|
|
2151
2151
|
"lines": [
|
|
@@ -2410,168 +2410,170 @@
|
|
|
2410
2410
|
{"key":"L0259","section":"Where to find more depth","text":"(Architecture Decision Records). Each ADR is one {…} with the trade-offs that drove it.","placement":"unplaced"},
|
|
2411
2411
|
{"key":"L0260","section":"Where to find more depth","text":"Other depth, in roughly the order you'll need it:","placement":"unplaced"},
|
|
2412
2412
|
{"key":"L0261","section":"Where to find more depth","text":"docs/onboarding/example-and-karma.md","placement":"unplaced"},
|
|
2413
|
-
{"key":"L0262","section":"Where to find more depth","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232","occurrences":
|
|
2413
|
+
{"key":"L0262","section":"Where to find more depth","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232","occurrences":8},
|
|
2414
2414
|
{"key":"L0263","section":"Where to find more depth","text":"docs/onboarding/slash-commands.md","placement":"unplaced"},
|
|
2415
|
-
{"key":"L0264","section":"Where to find more depth","text":"
|
|
2416
|
-
{"key":"L0265","section":"Where to find more depth","text":"
|
|
2417
|
-
{"key":"L0266","section":"Where to find more depth","text":"docs/
|
|
2418
|
-
{"key":"L0267","section":"Where to find more depth","text":"—
|
|
2419
|
-
{"key":"L0268","section":"Where to find more depth","text":"modules
|
|
2420
|
-
{"key":"L0269","section":"Where to find more depth","text":"
|
|
2421
|
-
{"key":"L0270","section":"Where to find more depth","text":"
|
|
2422
|
-
{"key":"L0271","section":"Where to find more depth","text":"
|
|
2423
|
-
{"key":"L0272","section":"Where to find more depth","text":"
|
|
2424
|
-
{"key":"L0273","section":"Where to find more depth","text":"
|
|
2425
|
-
{"key":"L0274","section":"Where to find more depth","text":"
|
|
2426
|
-
{"key":"L0275","section":"Where to find more depth","text":"docs/
|
|
2427
|
-
{"key":"L0276","section":"Where to find more depth","text":"
|
|
2428
|
-
{"key":"L0277","section":"
|
|
2429
|
-
{"key":"L0278","section":"
|
|
2430
|
-
{"key":"L0279","section":"Get set up on your machine","text":"
|
|
2431
|
-
{"key":"L0280","section":"Get set up on your machine","text":"
|
|
2432
|
-
{"key":"L0281","section":"Get set up on your machine","text":"
|
|
2433
|
-
{"key":"L0282","section":"Get set up on your machine","text":"
|
|
2434
|
-
{"key":"L0283","section":"Get set up on your machine","text":"
|
|
2435
|
-
{"key":"L0284","section":"
|
|
2436
|
-
{"key":"L0285","section":"
|
|
2437
|
-
{"key":"L0286","section":"Where your work runs — screen, worker, brain","text":"
|
|
2438
|
-
{"key":"L0287","section":"Where your work runs — screen, worker, brain","text":"
|
|
2439
|
-
{"key":"L0288","section":"Where your work runs — screen, worker, brain","text":"
|
|
2440
|
-
{"key":"L0289","section":"Where your work runs — screen, worker, brain","text":"
|
|
2441
|
-
{"key":"L0290","section":"Where your work runs — screen, worker, brain","text":"
|
|
2442
|
-
{"key":"L0291","section":"Where your work runs — screen, worker, brain","text":"
|
|
2443
|
-
{"key":"L0292","section":"Where your work runs — screen, worker, brain","text":"The
|
|
2444
|
-
{"key":"L0293","section":"Where your work runs — screen, worker, brain","text":"— the
|
|
2445
|
-
{"key":"L0294","section":"Where your work runs — screen, worker, brain","text":"
|
|
2446
|
-
{"key":"L0295","section":"Where your work runs — screen, worker, brain","text":"
|
|
2447
|
-
{"key":"L0296","section":"Where your work runs — screen, worker, brain","text":"
|
|
2448
|
-
{"key":"L0297","section":"Where your work runs — screen, worker, brain","text":"
|
|
2449
|
-
{"key":"L0298","section":"Where your work runs — screen, worker, brain","text":"
|
|
2450
|
-
{"key":"L0299","section":"Where your work runs — screen, worker, brain","text":"
|
|
2451
|
-
{"key":"L0300","section":"Where your work runs — screen, worker, brain","text":"
|
|
2452
|
-
{"key":"L0301","section":"Where your work runs — screen, worker, brain","text":"
|
|
2453
|
-
{"key":"L0302","section":"Where your work runs — screen, worker, brain","text":"
|
|
2454
|
-
{"key":"L0303","section":"Where your work runs — screen, worker, brain","text":"
|
|
2455
|
-
{"key":"L0304","section":"Where your work runs — screen, worker, brain","text":"
|
|
2456
|
-
{"key":"L0305","section":"Where your work runs — screen, worker, brain","text":"
|
|
2457
|
-
{"key":"L0306","section":"Where your work runs — screen, worker, brain","text":"
|
|
2458
|
-
{"key":"L0307","section":"Where your work runs — screen, worker, brain","text":"
|
|
2459
|
-
{"key":"L0308","section":"Where your work runs — screen, worker, brain","text":"
|
|
2460
|
-
{"key":"L0309","section":"Where your work runs — screen, worker, brain","text":"
|
|
2461
|
-
{"key":"L0310","section":"Where your work runs — screen, worker, brain","text":"
|
|
2462
|
-
{"key":"L0311","section":"
|
|
2463
|
-
{"key":"L0312","section":"
|
|
2464
|
-
{"key":"L0313","section":"The steps","text":"
|
|
2465
|
-
{"key":"L0314","section":"The steps","text":"
|
|
2466
|
-
{"key":"L0315","section":"The steps","text":"
|
|
2467
|
-
{"key":"L0316","section":"The steps","text":"
|
|
2468
|
-
{"key":"L0317","section":"The steps","text":"
|
|
2469
|
-
{"key":"L0318","section":"The steps","text":"
|
|
2470
|
-
{"key":"L0319","section":"The steps","text":"
|
|
2471
|
-
{"key":"L0320","section":"The steps","text":"
|
|
2472
|
-
{"key":"L0321","section":"The steps","text":"
|
|
2473
|
-
{"key":"L0322","section":"The steps","text":"
|
|
2474
|
-
{"key":"L0323","section":"The steps","text":"
|
|
2475
|
-
{"key":"L0324","section":"The steps","text":"
|
|
2476
|
-
{"key":"L0325","section":"The steps","text":"
|
|
2477
|
-
{"key":"L0326","section":"The steps","text":"
|
|
2478
|
-
{"key":"L0327","section":"The steps","text":"
|
|
2479
|
-
{"key":"L0328","section":"The steps","text":"
|
|
2480
|
-
{"key":"L0329","section":"The steps","text":"
|
|
2481
|
-
{"key":"L0330","section":"The steps","text":"
|
|
2482
|
-
{"key":"L0331","section":"The steps","text":"
|
|
2483
|
-
{"key":"L0332","section":"The steps","text":"
|
|
2484
|
-
{"key":"L0333","section":"The steps","text":"
|
|
2485
|
-
{"key":"L0334","section":"The steps","text":"is","placement":"unplaced"},
|
|
2486
|
-
{"key":"L0335","section":"The steps","text":"
|
|
2487
|
-
{"key":"L0336","section":"The steps","text":"
|
|
2488
|
-
{"key":"L0337","section":"The steps","text":"the","placement":"unplaced"},
|
|
2489
|
-
{"key":"L0338","section":"The steps","text":"
|
|
2490
|
-
{"key":"L0339","section":"The steps","text":"
|
|
2491
|
-
{"key":"L0340","section":"The steps","text":"
|
|
2492
|
-
{"key":"L0341","section":"The steps","text":"
|
|
2493
|
-
{"key":"L0342","section":"The steps","text":"
|
|
2494
|
-
{"key":"L0343","section":"The steps","text":"
|
|
2495
|
-
{"key":"L0344","section":"The steps","text":"
|
|
2496
|
-
{"key":"L0345","section":"The steps","text":"
|
|
2497
|
-
{"key":"L0346","section":"The steps","text":"
|
|
2498
|
-
{"key":"L0347","section":"The steps","text":"
|
|
2499
|
-
{"key":"L0348","section":"The steps","text":"
|
|
2500
|
-
{"key":"L0349","section":"The steps","text":"
|
|
2501
|
-
{"key":"L0350","section":"The steps","text":"
|
|
2502
|
-
{"key":"L0351","section":"The steps","text":"
|
|
2503
|
-
{"key":"L0352","section":"The steps","text":"
|
|
2504
|
-
{"key":"L0353","section":"The steps","text":"
|
|
2505
|
-
{"key":"L0354","section":"The steps","text":"
|
|
2506
|
-
{"key":"L0355","section":"The steps","text":"
|
|
2507
|
-
{"key":"L0356","section":"The steps","text":"
|
|
2508
|
-
{"key":"L0357","section":"The steps","text":"
|
|
2509
|
-
{"key":"L0358","section":"The steps","text":"
|
|
2510
|
-
{"key":"L0359","section":"The steps","text":"
|
|
2511
|
-
{"key":"L0360","section":"The steps","text":"
|
|
2512
|
-
{"key":"L0361","section":"The steps","text":"
|
|
2513
|
-
{"key":"L0362","section":"The steps","text":"
|
|
2514
|
-
{"key":"L0363","section":"The steps","text":"
|
|
2515
|
-
{"key":"L0364","section":"The steps","text":"
|
|
2516
|
-
{"key":"L0365","section":"The steps","text":"
|
|
2517
|
-
{"key":"L0366","section":"The steps","text":"
|
|
2518
|
-
{"key":"L0367","section":"The steps","text":"
|
|
2519
|
-
{"key":"L0368","section":"The steps","text":"
|
|
2520
|
-
{"key":"L0369","section":"The steps","text":"
|
|
2521
|
-
{"key":"L0370","section":"The steps","text":"
|
|
2522
|
-
{"key":"L0371","section":"The steps","text":"git
|
|
2523
|
-
{"key":"L0372","section":"The steps","text":"
|
|
2524
|
-
{"key":"L0373","section":"The steps","text":"
|
|
2525
|
-
{"key":"L0374","section":"The steps","text":"
|
|
2526
|
-
{"key":"L0375","section":"The steps","text":"
|
|
2527
|
-
{"key":"L0376","section":"The steps","text":"
|
|
2528
|
-
{"key":"L0377","section":"The steps","text":"
|
|
2529
|
-
{"key":"L0378","section":"The steps","text":"
|
|
2530
|
-
{"key":"L0379","section":"The steps","text":"
|
|
2531
|
-
{"key":"L0380","section":"The steps","text":"
|
|
2532
|
-
{"key":"L0381","section":"The steps","text":"
|
|
2533
|
-
{"key":"L0382","section":"The steps","text":"
|
|
2534
|
-
{"key":"L0383","section":"The steps","text":"
|
|
2535
|
-
{"key":"L0384","section":"The steps","text":"
|
|
2536
|
-
{"key":"L0385","section":"The steps","text":"
|
|
2537
|
-
{"key":"L0386","section":"The steps","text":"
|
|
2538
|
-
{"key":"L0387","section":"The steps","text":"
|
|
2539
|
-
{"key":"L0388","section":"The steps","text":"
|
|
2540
|
-
{"key":"L0389","section":"The steps","text":"
|
|
2541
|
-
{"key":"L0390","section":"The steps","text":"
|
|
2542
|
-
{"key":"L0391","section":"
|
|
2543
|
-
{"key":"L0392","section":"
|
|
2544
|
-
{"key":"L0393","section":"Your first task","text":"
|
|
2545
|
-
{"key":"L0394","section":"Your first task","text":"
|
|
2546
|
-
{"key":"L0395","section":"Your first task","text":"
|
|
2547
|
-
{"key":"L0396","section":"Your first task","text":"
|
|
2548
|
-
{"key":"L0397","section":"Your first task","text":"
|
|
2549
|
-
{"key":"L0398","section":"Your first task","text":"
|
|
2550
|
-
{"key":"L0399","section":"Your first task","text":"/builder-
|
|
2551
|
-
{"key":"L0400","section":"Your first task","text":"
|
|
2552
|
-
{"key":"L0401","section":"Your first task","text":"
|
|
2553
|
-
{"key":"L0402","section":"Your first task","text":"
|
|
2554
|
-
{"key":"L0403","section":"Your first task","text":"
|
|
2555
|
-
{"key":"L0404","section":"Your first task","text":"
|
|
2556
|
-
{"key":"L0405","section":"
|
|
2557
|
-
{"key":"L0406","section":"
|
|
2558
|
-
{"key":"L0407","section":"Previewing your change","text":"
|
|
2559
|
-
{"key":"L0408","section":"Previewing your change","text":"
|
|
2560
|
-
{"key":"L0409","section":"Previewing your change","text":"
|
|
2561
|
-
{"key":"L0410","section":"Previewing your change","text":"{…}
|
|
2562
|
-
{"key":"L0411","section":"
|
|
2563
|
-
{"key":"L0412","section":"
|
|
2564
|
-
{"key":"L0413","section":"Acknowledge the primer","text":"
|
|
2565
|
-
{"key":"L0414","section":"
|
|
2566
|
-
{"key":"L0415","section":"Acknowledge the primer","text":"
|
|
2567
|
-
{"key":"L0416","section":"
|
|
2568
|
-
{"key":"L0417","section":"
|
|
2569
|
-
{"key":"L0418","section":"What are you doing now?","text":"
|
|
2570
|
-
{"key":"L0419","section":"What are you doing now?","text":"
|
|
2571
|
-
{"key":"L0420","section":"What are you doing now?","text":"
|
|
2572
|
-
{"key":"L0421","section":"What are you doing now?","text":"
|
|
2573
|
-
{"key":"L0422","section":"What are you doing now?","text":"
|
|
2574
|
-
{"key":"L0423","section":"What are you doing now?","text":"
|
|
2415
|
+
{"key":"L0264","section":"Where to find more depth","text":"The Commands page","placement":"unplaced"},
|
|
2416
|
+
{"key":"L0265","section":"Where to find more depth","text":"The Repo Atlas","placement":"unplaced"},
|
|
2417
|
+
{"key":"L0266","section":"Where to find more depth","text":"docs/architecture.md","placement":"unplaced"},
|
|
2418
|
+
{"key":"L0267","section":"Where to find more depth","text":"— live system: droplet, stack, schema, API surface","placement":"unplaced"},
|
|
2419
|
+
{"key":"L0268","section":"Where to find more depth","text":"docs/modules-contract.md","placement":"unplaced"},
|
|
2420
|
+
{"key":"L0269","section":"Where to find more depth","text":"— the product is built as a small core plus swappable","placement":"unplaced"},
|
|
2421
|
+
{"key":"L0270","section":"Where to find more depth","text":"modules/<key>/","placement":"unplaced"},
|
|
2422
|
+
{"key":"L0271","section":"Where to find more depth","text":"docs/canonical-permissions.md","placement":"unplaced"},
|
|
2423
|
+
{"key":"L0272","section":"Where to find more depth","text":"— who can do what (rank gates)","placement":"unplaced"},
|
|
2424
|
+
{"key":"L0273","section":"Where to find more depth","text":"GOVERNMENT.md","placement":"unplaced"},
|
|
2425
|
+
{"key":"L0274","section":"Where to find more depth","text":"docs/file-map.md","placement":"unplaced"},
|
|
2426
|
+
{"key":"L0275","section":"Where to find more depth","text":"docs/recipes/","placement":"unplaced"},
|
|
2427
|
+
{"key":"L0276","section":"Where to find more depth","text":"— long-form ops gotchas (read before deploying)","placement":"unplaced"},
|
|
2428
|
+
{"key":"L0277","section":"Where to find more depth","text":"docs/onboarding/diagrams/","placement":"unplaced"},
|
|
2429
|
+
{"key":"L0278","section":"Where to find more depth","text":"You {…}.","placement":"placed","file":"modules/hall-ui/public/board-room.js","line":471,"string_id":"819dfb951611"},
|
|
2430
|
+
{"key":"L0279","section":"Get set up on your machine","text":"Get set up on your machine","placement":"unplaced"},
|
|
2431
|
+
{"key":"L0280","section":"Get set up on your machine","text":"You don't need to be a programmer to build here. Entry to the project is","placement":"unplaced"},
|
|
2432
|
+
{"key":"L0281","section":"Get set up on your machine","text":"approval-gated","placement":"unplaced"},
|
|
2433
|
+
{"key":"L0282","section":"Get set up on your machine","text":": a stranger can't just sign in with GitHub — you first ask for entry on the","placement":"unplaced"},
|
|
2434
|
+
{"key":"L0283","section":"Get set up on your machine","text":"builders' hall","placement":"unplaced"},
|
|
2435
|
+
{"key":"L0284","section":"Get set up on your machine","text":"and an Archon admits you. Since you're reading this gated primer, you've already been admitted.","placement":"unplaced"},
|
|
2436
|
+
{"key":"L0285","section":"Get set up on your machine","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232"},
|
|
2437
|
+
{"key":"L0286","section":"Where your work runs — screen, worker, brain","text":"Where your work runs — screen, worker, brain","placement":"unplaced"},
|
|
2438
|
+
{"key":"L0287","section":"Where your work runs — screen, worker, brain","text":"Claude Code is","placement":"unplaced"},
|
|
2439
|
+
{"key":"L0288","section":"Where your work runs — screen, worker, brain","text":"three pieces that can live in different places","placement":"unplaced"},
|
|
2440
|
+
{"key":"L0289","section":"Where your work runs — screen, worker, brain","text":"The screen","placement":"unplaced"},
|
|
2441
|
+
{"key":"L0290","section":"Where your work runs — screen, worker, brain","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232","occurrences":4},
|
|
2442
|
+
{"key":"L0291","section":"Where your work runs — screen, worker, brain","text":"your","placement":"unplaced"},
|
|
2443
|
+
{"key":"L0292","section":"Where your work runs — screen, worker, brain","text":"The worker","placement":"unplaced"},
|
|
2444
|
+
{"key":"L0293","section":"Where your work runs — screen, worker, brain","text":"— the part that opens files, runs commands, edits code, runs the project.","placement":"unplaced"},
|
|
2445
|
+
{"key":"L0294","section":"Where your work runs — screen, worker, brain","text":"The brain","placement":"unplaced"},
|
|
2446
|
+
{"key":"L0295","section":"Where your work runs — screen, worker, brain","text":"— the AI model itself.","placement":"unplaced"},
|
|
2447
|
+
{"key":"L0296","section":"Where your work runs — screen, worker, brain","text":"Always on Anthropic's servers","placement":"unplaced"},
|
|
2448
|
+
{"key":"L0297","section":"Where your work runs — screen, worker, brain","text":"Today the worker runs in one place:","placement":"unplaced"},
|
|
2449
|
+
{"key":"L0298","section":"Where your work runs — screen, worker, brain","text":"your own computer","placement":"unplaced"},
|
|
2450
|
+
{"key":"L0299","section":"Where your work runs — screen, worker, brain","text":"{…} of {…}","placement":"placed","file":"modules/hall-ui/public/sky-panel.js","line":120,"string_id":"73c1372b43d9","occurrences":2},
|
|
2451
|
+
{"key":"L0300","section":"Where your work runs — screen, worker, brain","text":"and","placement":"placed","file":"modules/hall-ui/public/deploy.js","line":549,"string_id":"084748fd85b4"},
|
|
2452
|
+
{"key":"L0301","section":"Where your work runs — screen, worker, brain","text":"diagram 4,","placement":"unplaced"},
|
|
2453
|
+
{"key":"L0302","section":"Where your work runs — screen, worker, brain","text":"The complete architecture","placement":"unplaced"},
|
|
2454
|
+
{"key":"L0303","section":"Where your work runs — screen, worker, brain","text":"The","placement":"unplaced"},
|
|
2455
|
+
{"key":"L0304","section":"Where your work runs — screen, worker, brain","text":"/builder-*","placement":"unplaced"},
|
|
2456
|
+
{"key":"L0305","section":"Where your work runs — screen, worker, brain","text":"commands you'll use every session aren't a separate download — they live","placement":"unplaced"},
|
|
2457
|
+
{"key":"L0306","section":"Where your work runs — screen, worker, brain","text":"inside","placement":"unplaced"},
|
|
2458
|
+
{"key":"L0307","section":"Where your work runs — screen, worker, brain","text":"the project's code (in","placement":"unplaced"},
|
|
2459
|
+
{"key":"L0308","section":"Where your work runs — screen, worker, brain","text":".claude/skills/","placement":"unplaced"},
|
|
2460
|
+
{"key":"L0309","section":"Where your work runs — screen, worker, brain","text":"). The moment Claude Code","placement":"unplaced"},
|
|
2461
|
+
{"key":"L0310","section":"Where your work runs — screen, worker, brain","text":"starts a session on a folder that already holds the code","placement":"unplaced"},
|
|
2462
|
+
{"key":"L0311","section":"Where your work runs — screen, worker, brain","text":"clone the code mid-session into a folder that started empty","placement":"unplaced"},
|
|
2463
|
+
{"key":"L0312","section":"Where your work runs — screen, worker, brain","text":", the commands won't appear until you start a fresh session on that folder — step 3 handles it.)","placement":"unplaced"},
|
|
2464
|
+
{"key":"L0313","section":"The steps","text":"The steps","placement":"unplaced"},
|
|
2465
|
+
{"key":"L0314","section":"The steps","text":"Take them in order — each one sets up the next, from \"I'm admitted\" to \"I'm looking at work I can claim.\"","placement":"unplaced"},
|
|
2466
|
+
{"key":"L0315","section":"The steps","text":"1. Install the Claude desktop app.","placement":"unplaced"},
|
|
2467
|
+
{"key":"L0316","section":"The steps","text":"Claude Code runs in a desktop app,","placement":"unplaced"},
|
|
2468
|
+
{"key":"L0317","section":"The steps","text":"not","placement":"unplaced"},
|
|
2469
|
+
{"key":"L0318","section":"The steps","text":"in the website — so you can't do this from a browser tab. Download it for your computer at","placement":"unplaced"},
|
|
2470
|
+
{"key":"L0319","section":"The steps","text":"claude.com/download","placement":"unplaced","occurrences":2},
|
|
2471
|
+
{"key":"L0320","section":"The steps","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232","occurrences":14},
|
|
2472
|
+
{"key":"L0321","section":"The steps","text":"Code","placement":"unplaced","occurrences":2},
|
|
2473
|
+
{"key":"L0322","section":"The steps","text":"tab.","placement":"unplaced"},
|
|
2474
|
+
{"key":"L0323","section":"The steps","text":"2. Accept your invitation to the code (check your email).","placement":"unplaced"},
|
|
2475
|
+
{"key":"L0324","section":"The steps","text":"When the Archon admitted you, GitHub emailed you a message like","placement":"unplaced"},
|
|
2476
|
+
{"key":"L0325","section":"The steps","text":"\"… invited you to collaborate.\"","placement":"unplaced"},
|
|
2477
|
+
{"key":"L0326","section":"The steps","text":"Open {…}","placement":"placed","file":"modules/hall-ui/public/goals.js","line":84,"string_id":"f6f68ba322be"},
|
|
2478
|
+
{"key":"L0327","section":"The steps","text":"View invitation","placement":"unplaced"},
|
|
2479
|
+
{"key":"L0328","section":"The steps","text":", then","placement":"unplaced"},
|
|
2480
|
+
{"key":"L0329","section":"The steps","text":"Accept","placement":"unplaced"},
|
|
2481
|
+
{"key":"L0330","section":"The steps","text":"You don't need to do anything there","placement":"unplaced"},
|
|
2482
|
+
{"key":"L0331","section":"The steps","text":"{…} of {…}","placement":"placed","file":"modules/hall-ui/public/sky-panel.js","line":120,"string_id":"73c1372b43d9"},
|
|
2483
|
+
{"key":"L0332","section":"The steps","text":"3. Open the code in Claude Code.","placement":"unplaced"},
|
|
2484
|
+
{"key":"L0333","section":"The steps","text":"Back in the Claude desktop app's","placement":"unplaced"},
|
|
2485
|
+
{"key":"L0334","section":"The steps","text":"Claude handles the rest (this is the \"git\" plumbing you may have heard about — you don't need to learn it). When Claude asks for permission to reach GitHub, say yes — the repository is private, so it needs your go-ahead. If it asks which repository, paste the web address from the repo page you landed on in step 2.","placement":"unplaced"},
|
|
2486
|
+
{"key":"L0335","section":"The steps","text":"Once it finishes, that folder","placement":"unplaced"},
|
|
2487
|
+
{"key":"L0336","section":"The steps","text":"is","placement":"unplaced"},
|
|
2488
|
+
{"key":"L0337","section":"The steps","text":"the project.","placement":"unplaced"},
|
|
2489
|
+
{"key":"L0338","section":"The steps","text":"One catch worth knowing:","placement":"unplaced"},
|
|
2490
|
+
{"key":"L0339","section":"The steps","text":"the","placement":"unplaced"},
|
|
2491
|
+
{"key":"L0340","section":"The steps","text":"/builder-*","placement":"unplaced","occurrences":3},
|
|
2492
|
+
{"key":"L0341","section":"The steps","text":"commands came down","placement":"unplaced"},
|
|
2493
|
+
{"key":"L0342","section":"The steps","text":"with","placement":"unplaced"},
|
|
2494
|
+
{"key":"L0343","section":"The steps","text":"the code, but Claude Code only loads them when a session","placement":"unplaced"},
|
|
2495
|
+
{"key":"L0344","section":"The steps","text":"starts","placement":"unplaced"},
|
|
2496
|
+
{"key":"L0345","section":"The steps","text":"empty","placement":"unplaced"},
|
|
2497
|
+
{"key":"L0346","section":"The steps","text":"folder. So before the next step,","placement":"unplaced"},
|
|
2498
|
+
{"key":"L0347","section":"The steps","text":"start a fresh Claude Code session on this same folder","placement":"unplaced"},
|
|
2499
|
+
{"key":"L0348","section":"The steps","text":"commands will all be there.)","placement":"unplaced"},
|
|
2500
|
+
{"key":"L0349","section":"The steps","text":"In the","placement":"unplaced"},
|
|
2501
|
+
{"key":"L0350","section":"The steps","text":"fresh","placement":"unplaced"},
|
|
2502
|
+
{"key":"L0351","section":"The steps","text":"session, send this one message —","placement":"unplaced"},
|
|
2503
|
+
{"key":"L0352","section":"The steps","text":"Install this project's dependencies, then run npx bongos setup.","placement":"unplaced"},
|
|
2504
|
+
{"key":"L0353","section":"The steps","text":"Node","placement":"unplaced"},
|
|
2505
|
+
{"key":"L0354","section":"The steps","text":"(version 22 or newer) on your computer; if Claude says it's missing, let it walk you through installing it from","placement":"unplaced"},
|
|
2506
|
+
{"key":"L0355","section":"The steps","text":"nodejs.org","placement":"unplaced","occurrences":2},
|
|
2507
|
+
{"key":"L0356","section":"The steps","text":"npx bongos setup","placement":"placed","file":"modules/hall-ui/public/hall-render.js","line":761,"string_id":"f3733d6a021e","occurrences":3},
|
|
2508
|
+
{"key":"L0357","section":"The steps","text":"/builder-start","placement":"unplaced","occurrences":2},
|
|
2509
|
+
{"key":"L0358","section":"The steps","text":"to see the works you can claim right now.","placement":"unplaced"},
|
|
2510
|
+
{"key":"L0359","section":"The steps","text":"If a","placement":"unplaced"},
|
|
2511
|
+
{"key":"L0360","section":"The steps","text":"command ever says \"no Bongos session,\" run","placement":"unplaced"},
|
|
2512
|
+
{"key":"L0361","section":"The steps","text":"again — that re-links you. And if","placement":"unplaced"},
|
|
2513
|
+
{"key":"L0362","section":"The steps","text":"comes back","placement":"unplaced"},
|
|
2514
|
+
{"key":"L0363","section":"The steps","text":"\"unknown command,\"","placement":"unplaced"},
|
|
2515
|
+
{"key":"L0364","section":"The steps","text":"Prefer a terminal? (the quicker path if you're technical.)","placement":"unplaced"},
|
|
2516
|
+
{"key":"L0365","section":"The steps","text":"Steps 3–4 above are the no-terminal route. If you're {…} on a command line, skip them — clone the repo yourself,","placement":"unplaced"},
|
|
2517
|
+
{"key":"L0366","section":"The steps","text":"cd","placement":"unplaced","occurrences":2},
|
|
2518
|
+
{"key":"L0367","section":"The steps","text":"Before you start","placement":"unplaced"},
|
|
2519
|
+
{"key":"L0368","section":"The steps","text":", have four things ready:","placement":"unplaced"},
|
|
2520
|
+
{"key":"L0369","section":"The steps","text":"Git","placement":"unplaced"},
|
|
2521
|
+
{"key":"L0370","section":"The steps","text":"(check","placement":"unplaced","occurrences":2},
|
|
2522
|
+
{"key":"L0371","section":"The steps","text":"git --version","placement":"unplaced"},
|
|
2523
|
+
{"key":"L0372","section":"The steps","text":"; get it from","placement":"unplaced","occurrences":2},
|
|
2524
|
+
{"key":"L0373","section":"The steps","text":"git-scm.com","placement":"unplaced"},
|
|
2525
|
+
{"key":"L0374","section":"The steps","text":"Node ≥ 22","placement":"unplaced"},
|
|
2526
|
+
{"key":"L0375","section":"The steps","text":"node --version","placement":"unplaced"},
|
|
2527
|
+
{"key":"L0376","section":"The steps","text":"— it provides the","placement":"unplaced"},
|
|
2528
|
+
{"key":"L0377","section":"The steps","text":"npm","placement":"unplaced"},
|
|
2529
|
+
{"key":"L0378","section":"The steps","text":"and","placement":"placed","file":"modules/hall-ui/public/deploy.js","line":549,"string_id":"084748fd85b4"},
|
|
2530
|
+
{"key":"L0379","section":"The steps","text":"npx","placement":"unplaced"},
|
|
2531
|
+
{"key":"L0380","section":"The steps","text":"commands below), the","placement":"unplaced"},
|
|
2532
|
+
{"key":"L0381","section":"The steps","text":"Claude Code","placement":"placed","file":"modules/hall-ui/public/hall-render.js","line":785,"string_id":"18a03475e536"},
|
|
2533
|
+
{"key":"L0382","section":"The steps","text":"desktop app (","placement":"unplaced"},
|
|
2534
|
+
{"key":"L0383","section":"The steps","text":"GitHub account that's been invited to this private repo","placement":"unplaced"},
|
|
2535
|
+
{"key":"L0384","section":"The steps","text":"(accept the emailed invite from step 2).","placement":"unplaced"},
|
|
2536
|
+
{"key":"L0385","section":"The steps","text":"Step 0 — get the project onto your machine.","placement":"unplaced"},
|
|
2537
|
+
{"key":"L0386","section":"The steps","text":"Clone the repo and","placement":"unplaced"},
|
|
2538
|
+
{"key":"L0387","section":"The steps","text":"into the folder it creates:","placement":"unplaced"},
|
|
2539
|
+
{"key":"L0388","section":"The steps","text":"git clone https://github.com/example-{…}/example.git cd example","placement":"unplaced"},
|
|
2540
|
+
{"key":"L0389","section":"The steps","text":"Then sign in","placement":"unplaced"},
|
|
2541
|
+
{"key":"L0390","section":"The steps","text":"npm install npx bongos setup","placement":"unplaced"},
|
|
2542
|
+
{"key":"L0391","section":"The steps","text":"npm install","placement":"placed","file":"modules/hall-ui/public/hall-render.js","line":761,"string_id":"e2c643fbf4d6"},
|
|
2543
|
+
{"key":"L0392","section":"The steps","text":"fetches the project's dependencies;","placement":"unplaced"},
|
|
2544
|
+
{"key":"L0393","section":"Your first task","text":"Your first task","placement":"unplaced"},
|
|
2545
|
+
{"key":"L0394","section":"Your first task","text":"Run","placement":"unplaced"},
|
|
2546
|
+
{"key":"L0395","section":"Your first task","text":"/builder-start","placement":"unplaced"},
|
|
2547
|
+
{"key":"L0396","section":"Your first task","text":"to see what you can claim — no acknowledgment step needed, the queue is open. New builders see only","placement":"unplaced"},
|
|
2548
|
+
{"key":"L0397","section":"Your first task","text":"newcomer_friendly","placement":"unplaced"},
|
|
2549
|
+
{"key":"L0398","section":"Your first task","text":"tasks — small, well-scoped, easy to finish in one sitting. Pick one that looks interesting, claim it with","placement":"unplaced"},
|
|
2550
|
+
{"key":"L0399","section":"Your first task","text":"/builder-claim N","placement":"unplaced"},
|
|
2551
|
+
{"key":"L0400","section":"Your first task","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232","occurrences":3},
|
|
2552
|
+
{"key":"L0401","section":"Your first task","text":"/builder-ship","placement":"unplaced"},
|
|
2553
|
+
{"key":"L0402","section":"Your first task","text":"When you ship your","placement":"unplaced"},
|
|
2554
|
+
{"key":"L0403","section":"Your first task","text":"first","placement":"unplaced"},
|
|
2555
|
+
{"key":"L0404","section":"Your first task","text":"third","placement":"unplaced"},
|
|
2556
|
+
{"key":"L0405","section":"Your first task","text":"and you graduate to","placement":"unplaced"},
|
|
2557
|
+
{"key":"L0406","section":"Your first task","text":"Thetes","placement":"unplaced"},
|
|
2558
|
+
{"key":"L0407","section":"Previewing your change","text":"Previewing your change","placement":"unplaced"},
|
|
2559
|
+
{"key":"L0408","section":"Previewing your change","text":"Before you ship a change that touches the game, run","placement":"unplaced"},
|
|
2560
|
+
{"key":"L0409","section":"Previewing your change","text":"/builder-{…}","placement":"unplaced"},
|
|
2561
|
+
{"key":"L0410","section":"Previewing your change","text":"{…} of {…}","placement":"placed","file":"modules/hall-ui/public/sky-panel.js","line":120,"string_id":"73c1372b43d9"},
|
|
2562
|
+
{"key":"L0411","section":"Previewing your change","text":"http://localhost:<port>","placement":"unplaced"},
|
|
2563
|
+
{"key":"L0412","section":"Previewing your change","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232"},
|
|
2564
|
+
{"key":"L0413","section":"Acknowledge the primer","text":"Acknowledge the primer","placement":"placed","file":"modules/hall-ui/public/primer.html","line":94,"string_id":"6ca31dd5eb91"},
|
|
2565
|
+
{"key":"L0414","section":"Acknowledge the primer","text":"Already acknowledged — you can re-read the primer any time.","placement":"unplaced"},
|
|
2566
|
+
{"key":"L0415","section":"Acknowledge the primer","text":"Back to home","placement":"placed","file":"modules/hall-ui/public/primer.html","line":85,"string_id":"08afb1257b71"},
|
|
2567
|
+
{"key":"L0416","section":"footer","text":"Sign out","placement":"shared","file":"modules/hall-ui/public/shell.js","line":519,"string_id":"1883ad7f07fc"},
|
|
2568
|
+
{"key":"L0417","section":"Acknowledge the primer","text":"Builders hall · this session","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":679,"string_id":"fd1903586e8e"},
|
|
2569
|
+
{"key":"L0418","section":"What are you doing now?","text":"What are you doing now?","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":680,"string_id":"60853319f290"},
|
|
2570
|
+
{"key":"L0419","section":"What are you doing now?","text":"Pick one. You can switch any time from the top bar.","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":681,"string_id":"4f87d5b17b54"},
|
|
2571
|
+
{"key":"L0420","section":"What are you doing now?","text":"Building","placement":"unplaced"},
|
|
2572
|
+
{"key":"L0421","section":"What are you doing now?","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232","occurrences":3},
|
|
2573
|
+
{"key":"L0422","section":"What are you doing now?","text":"Artistry","placement":"unplaced"},
|
|
2574
|
+
{"key":"L0423","section":"What are you doing now?","text":"Ideating","placement":"unplaced"},
|
|
2575
|
+
{"key":"L0424","section":"What are you doing now?","text":"Turn thoughts into ideas.","placement":"unplaced"},
|
|
2576
|
+
{"key":"L0425","section":"What are you doing now?","text":"Ask me again next session","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":684,"string_id":"fa86bf403775"}
|
|
2575
2577
|
]
|
|
2576
2578
|
},
|
|
2577
2579
|
{
|
|
@@ -57,9 +57,12 @@
|
|
|
57
57
|
const MD = window.OTBMdReader;
|
|
58
58
|
const escapeHtml = (s) => window.OTB.escapeHtml(s); // task 1004876: the old fallback escaped nothing
|
|
59
59
|
|
|
60
|
-
// The shared resolver, plus the
|
|
60
|
+
// The shared resolver, plus the rewrites that are the primer's alone: the
|
|
61
61
|
// economy doc has an in-hall reader page (task 1472), so a link to it stays in
|
|
62
|
-
// the hall instead of bouncing the reader out to GitHub.
|
|
62
|
+
// the hall instead of bouncing the reader out to GitHub. And a link to a hall
|
|
63
|
+
// page's own file (../../modules/hall-ui/public/<page>.html) opens that page
|
|
64
|
+
// here (task 1005069); on GitHub the same link shows the file.
|
|
65
|
+
const HALL_PAGE = /^(?:\.\.\/)+modules\/hall-ui\/public\/([a-z0-9-]+)\.html$/;
|
|
63
66
|
const resolveLinkHref = (() => {
|
|
64
67
|
if (!MD) return (h) => h;
|
|
65
68
|
const base = MD.makeResolveLinkHref({
|
|
@@ -67,7 +70,11 @@
|
|
|
67
70
|
getBlobBase: () => repoBlobBase,
|
|
68
71
|
getTreeBase: () => repoTreeBase,
|
|
69
72
|
});
|
|
70
|
-
return (href) =>
|
|
73
|
+
return (href) => {
|
|
74
|
+
if (href === 'drachmae-and-karma.md') return '/builders/drachmae';
|
|
75
|
+
const page = HALL_PAGE.exec(href || '');
|
|
76
|
+
return page ? '/builders/' + page[1] : base(href);
|
|
77
|
+
};
|
|
71
78
|
})();
|
|
72
79
|
|
|
73
80
|
function toast(msg, type) {
|
package/package-lock.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bongos/core",
|
|
3
|
-
"version": "1.24.
|
|
3
|
+
"version": "1.24.35",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@bongos/core",
|
|
9
|
-
"version": "1.24.
|
|
9
|
+
"version": "1.24.35",
|
|
10
10
|
"license": "AGPL-3.0-or-later",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"express": "^4.21.2",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bongos/core",
|
|
3
|
-
"version": "1.24.
|
|
3
|
+
"version": "1.24.35",
|
|
4
4
|
"description": "Cloud Bongos — the AI-first build platform core (GDS + platform surfaces + module system), installed as a versioned dependency (ADR 0108).",
|
|
5
5
|
"license": "AGPL-3.0-or-later",
|
|
6
6
|
"main": "src/platform-server.js",
|
package/release-notes.json
CHANGED
|
@@ -11167,5 +11167,11 @@
|
|
|
11167
11167
|
"id": "1005068",
|
|
11168
11168
|
"text": "The builders hall now has a generated map of every page and link, with a check that flags broken links and pages nobody can reach."
|
|
11169
11169
|
}
|
|
11170
|
+
],
|
|
11171
|
+
"1.24.35": [
|
|
11172
|
+
{
|
|
11173
|
+
"id": "1005069",
|
|
11174
|
+
"text": "The Primer now links to the Repo Atlas and the Commands page, so every mode can find them."
|
|
11175
|
+
}
|
|
11170
11176
|
]
|
|
11171
11177
|
}
|
|
@@ -16,7 +16,8 @@
|
|
|
16
16
|
// • the crafts: craft-mode.js RUN in a vm, asked tabsFor(mode) — the same answer the hall uses;
|
|
17
17
|
// • the server's page gates: serve-internal.js's *_PAGE_RE literals and their gdsAuth
|
|
18
18
|
// dispatch, the static parse tests/hall_page_gate_map.mjs established;
|
|
19
|
-
// • the links: every in-hall href in a page's HTML and in each script the page loads
|
|
19
|
+
// • the links: every in-hall href in a page's HTML and in each script the page loads, and in
|
|
20
|
+
// the markdown a reading page fetches (CONTENT: the Primer's hall-page links, task 1005069).
|
|
20
21
|
// Scripts nearly every page loads (the shell, the palette, the craft switch) are the CHROME: their
|
|
21
22
|
// links are the nav, reported once, never charged to every page.
|
|
22
23
|
//
|
|
@@ -64,6 +65,14 @@ const ROUTES = {
|
|
|
64
65
|
const EXTERNAL = [/^\/api\//, /^\/auth\b/, /^\/login\b/, /^\/logout\b/, /^\/signin\b/, /^\/status\b/,
|
|
65
66
|
/^\/account\b/, /^\/modules\//, /^\/docs\b/, /^\/diagrams\//, /^\/healthz\b/, /^\/version\b/, /\.[a-z0-9]{2,5}$/i];
|
|
66
67
|
|
|
68
|
+
// Pages whose words come from a markdown file they fetch. A link in that file to a hall page's
|
|
69
|
+
// own file (../../modules/hall-ui/public/<page>.html) opens the page in the hall (primer.js,
|
|
70
|
+
// task 1005069), so it is the page's link.
|
|
71
|
+
const CONTENT = { '/primer': 'docs/onboarding/primer.md' };
|
|
72
|
+
function mdHallLinks(md) {
|
|
73
|
+
return [...md.matchAll(/\]\((?:\.\.\/)+modules\/hall-ui\/public\/([a-z0-9-]+)\.html\)/g)].map((m) => '/' + m[1]);
|
|
74
|
+
}
|
|
75
|
+
|
|
67
76
|
function read(rel) { return fs.readFileSync(path.join(ROOT, rel), 'utf8'); }
|
|
68
77
|
|
|
69
78
|
// ---- the pages ----
|
|
@@ -210,6 +219,7 @@ function build() {
|
|
|
210
219
|
};
|
|
211
220
|
for (const h of linksIn(p.html)) add(h, p.file);
|
|
212
221
|
for (const s of p.scripts) if (!chrome.includes(s)) for (const h of linksOf(s)) add(h, s);
|
|
222
|
+
if (CONTENT[p.url]) for (const h of mdHallLinks(read(CONTENT[p.url]))) add(h, CONTENT[p.url]);
|
|
213
223
|
}
|
|
214
224
|
// the chrome's own links that are not nav items are checked too (the palette, the shell)
|
|
215
225
|
for (const s of chrome) for (const h of linksOf(s)) resolve(h, '(every page)', s);
|
|
@@ -364,5 +374,5 @@ function main(argv) {
|
|
|
364
374
|
return 0;
|
|
365
375
|
}
|
|
366
376
|
|
|
367
|
-
module.exports = { build, render, normalise, linksIn, classify, ROUTES, OUT };
|
|
377
|
+
module.exports = { build, render, normalise, linksIn, classify, mdHallLinks, ROUTES, CONTENT, OUT };
|
|
368
378
|
if (require.main === module) process.exit(main(process.argv.slice(2)));
|
package/src/module-api.js
CHANGED
|
@@ -81,7 +81,7 @@ const { sleep } = require('./sleep');
|
|
|
81
81
|
// MAJOR (see allowBoxScope below): passes the request through untouched.
|
|
82
82
|
function deprecatedNoopMiddleware(_req, _res, next) { next(); }
|
|
83
83
|
|
|
84
|
-
const CORE_VERSION = '1.24.
|
|
84
|
+
const CORE_VERSION = '1.24.35'; // CI auto-patch carrier (ADR 0161); changelog: docs/module-api-changelog.md
|
|
85
85
|
|
|
86
86
|
// A namespaced logger so a module's log lines are attributable + consistent.
|
|
87
87
|
// Usage: const log = api.logger('discord'); log.info('mounted');
|
package/tests/hall_sitemap.mjs
CHANGED
|
@@ -61,6 +61,31 @@ test('a link is read the ways the hall writes one, and an unknown one is broken'
|
|
|
61
61
|
assert.equal(gen.classify('/builders/style.css?v=1', urls), null, 'an asset is not a page link');
|
|
62
62
|
});
|
|
63
63
|
|
|
64
|
+
test('the Primer links to Repo Atlas and Commands, and in the hall they open those pages (task 1005069)', () => {
|
|
65
|
+
const primer = model.pages.find((p) => p.url === '/primer');
|
|
66
|
+
for (const u of ['/atlas', '/commands']) {
|
|
67
|
+
assert.ok(primer.out.includes(u), `/primer links to ${u}`);
|
|
68
|
+
assert.ok(model.pages.find((p) => p.url === u).in.includes('/primer'), `${u} is linked from /primer`);
|
|
69
|
+
}
|
|
70
|
+
// primer.js's own rewrite, run on the primer's own links: each opens its hall page
|
|
71
|
+
const src = fs.readFileSync(path.join(ROOT, 'modules/hall-ui/public/primer.js'), 'utf8');
|
|
72
|
+
const literal = /const HALL_PAGE = (\/.+\/);/.exec(src);
|
|
73
|
+
assert.ok(literal, 'primer.js declares the hall-page rewrite');
|
|
74
|
+
const HALL_PAGE = new RegExp(literal[1].slice(1, -1));
|
|
75
|
+
const md = fs.readFileSync(path.join(ROOT, gen.CONTENT['/primer']), 'utf8');
|
|
76
|
+
const hrefs = [...md.matchAll(/\]\(((?:\.\.\/)+modules\/hall-ui\/public\/[a-z0-9-]+\.html)\)/g)].map((m) => m[1]);
|
|
77
|
+
assert.ok(hrefs.length >= 2);
|
|
78
|
+
const urls = new Set(model.pages.map((p) => p.url));
|
|
79
|
+
for (const h of hrefs) {
|
|
80
|
+
const m = HALL_PAGE.exec(h);
|
|
81
|
+
assert.ok(m, `${h} is rewritten by primer.js`);
|
|
82
|
+
assert.ok(urls.has('/' + m[1]), `${h} names a real hall page`);
|
|
83
|
+
}
|
|
84
|
+
// a primer link to a page that does not exist is a broken link, not a silent miss
|
|
85
|
+
assert.deepEqual(gen.mdHallLinks('[x](../../modules/hall-ui/public/no-such-page.html)'), ['/no-such-page']);
|
|
86
|
+
assert.equal(gen.classify('/no-such-page', urls), false);
|
|
87
|
+
});
|
|
88
|
+
|
|
64
89
|
test('the street is Governing\'s home: no nav item, reached by clicking from the city', () => {
|
|
65
90
|
const street = model.pages.find((p) => p.url === '/street');
|
|
66
91
|
assert.ok(street, 'the street is a hall page');
|