@bongos/core 1.21.47 → 1.21.49

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.
Files changed (39) hide show
  1. package/.bongos-core.json +50 -60
  2. package/.claude/skills/bongos-feedback/SKILL.md +5 -4
  3. package/bin/bongos.js +0 -0
  4. package/docs/adr/0087-bongos-app-architecture-and-handoff-contract.md +2 -2
  5. package/docs/copy-inventory.md +33 -31
  6. package/docs/copy-registry.json +103 -75
  7. package/docs/file-map.md +0 -1
  8. package/docs/module-api-changelog.md +4 -0
  9. package/docs/onboarding/primer.md +23 -16
  10. package/docs/page-readings.json +154 -145
  11. package/modules/hall-ui/public/commands-lib.js +1 -1
  12. package/modules/hall-ui/public/hall-render.js +13 -11
  13. package/modules/hall-ui/public/settings.html +4 -4
  14. package/modules/hall-ui/public/settings.js +1 -1
  15. package/modules/hall-ui/public/style.css +9 -0
  16. package/modules/onboarding/onboarding-state.js +5 -5
  17. package/package-lock.json +2 -2
  18. package/package.json +1 -1
  19. package/release-notes.json +16 -0
  20. package/scripts/gds/claude-materialize.js +3 -0
  21. package/scripts/gds/pack-env-prefix.js +73 -0
  22. package/scripts/gds/provision-repo.js +13 -0
  23. package/scripts/gds/provision-units.js +6 -17
  24. package/scripts/gds/provision.js +8 -2
  25. package/src/bongos/routes/auth.js +6 -5
  26. package/src/instance-config.js +28 -1
  27. package/src/module-api.js +1 -1
  28. package/tests/bongos_cli.mjs +2 -1
  29. package/tests/cli_allowlist_permissions.mjs +4 -0
  30. package/tests/cli_token_reissue.mjs +5 -3
  31. package/tests/hall_onboarding_bongos_setup.mjs +101 -0
  32. package/tests/instance_config.mjs +53 -0
  33. package/tests/instance_feedback.mjs +12 -0
  34. package/tests/provision.mjs +103 -0
  35. package/tests/skill_menu_ruling.mjs +1 -1
  36. package/.claude/skills/feedback/SKILL.md +0 -39
  37. package/scripts/bongos-mcp.js +0 -28
  38. package/scripts/gds/feedback-latest.js +0 -224
  39. package/tests/feedback_latest.mjs +0 -122
@@ -5,14 +5,14 @@
5
5
  "adr": "0341 D3",
6
6
  "reread": "node scripts/gds/page-reader.js --stale",
7
7
  "how": ["Generated by node scripts/gds/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":42,"lines":4920,"placed":1554,"shared":382,"unplaced":2984,"omitted_data":2442},
8
+ "counts": {"pages":42,"lines":4929,"placed":1558,"shared":382,"unplaced":2989,"omitted_data":2442},
9
9
  "pages": [
10
10
  {
11
11
  "id": "builders:atlas",
12
12
  "surface": "builders",
13
13
  "title": "Repo Atlas",
14
14
  "states_read": ["map","truth","detail","index","out"],
15
- "files_hash": "47d4fc29313268ad",
15
+ "files_hash": "372514dbb486361f",
16
16
  "reading_hash": "13583c191d1f5ea2",
17
17
  "counts": {"lines":27,"placed":13,"shared":9,"unplaced":5},
18
18
  "omitted": {"data":1},
@@ -52,7 +52,7 @@
52
52
  "surface": "builders",
53
53
  "title": "Blockers",
54
54
  "states_read": ["default"],
55
- "files_hash": "08d3197804c403fe",
55
+ "files_hash": "e1f186d1470b1e7e",
56
56
  "reading_hash": "bc7c3ee4f3e87dd4",
57
57
  "counts": {"lines":30,"placed":11,"shared":9,"unplaced":10},
58
58
  "omitted": {"data":4},
@@ -95,7 +95,7 @@
95
95
  "surface": "builders",
96
96
  "title": "Board Room",
97
97
  "states_read": ["room","out","sitting-meta","objection-form"],
98
- "files_hash": "475b02d9008e9dab",
98
+ "files_hash": "bf14f9ebc34fcf35",
99
99
  "reading_hash": "6c53e7cec1def325",
100
100
  "counts": {"lines":72,"placed":31,"shared":9,"unplaced":32},
101
101
  "omitted": {"data":7},
@@ -180,7 +180,7 @@
180
180
  "surface": "builders",
181
181
  "title": "The city",
182
182
  "states_read": ["city","fullscreen","switched","focus","pins"],
183
- "files_hash": "3b8753ba571e3ea5",
183
+ "files_hash": "1dda8ac20eebe7a9",
184
184
  "reading_hash": "ce027099e9aa452e",
185
185
  "counts": {"lines":19,"placed":6,"shared":8,"unplaced":5},
186
186
  "omitted": {"data":2},
@@ -212,7 +212,7 @@
212
212
  "surface": "builders",
213
213
  "title": "Collab",
214
214
  "states_read": ["board","out"],
215
- "files_hash": "2e2f51ff067acdbe",
215
+ "files_hash": "6d2bd539edf5aca0",
216
216
  "reading_hash": "e53d8d699ccaa619",
217
217
  "counts": {"lines":81,"placed":29,"shared":8,"unplaced":44},
218
218
  "omitted": {"data":12},
@@ -306,9 +306,9 @@
306
306
  "surface": "builders",
307
307
  "title": "Commands",
308
308
  "states_read": ["in","out"],
309
- "files_hash": "6b8357d0bcf75d33",
310
- "reading_hash": "df2af0b2b6174701",
311
- "counts": {"lines":86,"placed":60,"shared":9,"unplaced":17},
309
+ "files_hash": "fdb470976c52d644",
310
+ "reading_hash": "78d3343283bfe6a2",
311
+ "counts": {"lines":87,"placed":61,"shared":9,"unplaced":17},
312
312
  "omitted": {"data":141},
313
313
  "notes": [],
314
314
  "lines": [
@@ -341,16 +341,16 @@
341
341
  {"key":"L0027","section":"Your daily loop 9","text":"{…} of {…}","placement":"placed","file":"modules/hall-ui/public/sky-panel.js","line":120,"string_id":"73c1372b43d9","occurrences":2},
342
342
  {"key":"L0028","section":"Your daily loop 9","text":"Shown to Claude","placement":"placed","file":"modules/hall-ui/public/commands.html","line":36,"string_id":"b20cd8a4fa21","occurrences":9},
343
343
  {"key":"L0029","section":"Your daily loop 9","text":"{…} project{…}","placement":"placed","file":"modules/hall-ui/public/fleet.js","line":39,"string_id":"771bef3d31b5","occurrences":4},
344
- {"key":"L0030","section":"{…} and {…}","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232","occurrences":29},
345
- {"key":"L0031","section":"{…} and {…}","text":"{…} project{…}","placement":"placed","file":"modules/hall-ui/public/fleet.js","line":39,"string_id":"771bef3d31b5","occurrences":30},
344
+ {"key":"L0030","section":"{…} and {…}","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232","occurrences":28},
345
+ {"key":"L0031","section":"{…} and {…}","text":"{…} project{…}","placement":"placed","file":"modules/hall-ui/public/fleet.js","line":39,"string_id":"771bef3d31b5","occurrences":29},
346
346
  {"key":"L0032","section":"{…} and {…}","text":"Command","placement":"unplaced","occurrences":3},
347
347
  {"key":"L0033","section":"{…} and {…}","text":"What it does","placement":"placed","file":"modules/hall-ui/public/commands-lib.js","line":100,"string_id":"0efa2f18bb6c","occurrences":3},
348
348
  {"key":"L0034","section":"{…} and {…}","text":"When to reach for it","placement":"placed","file":"modules/hall-ui/public/commands-lib.js","line":100,"string_id":"a6e102816e92","occurrences":3},
349
349
  {"key":"L0035","section":"{…} and {…}","text":"What it costs","placement":"placed","file":"modules/hall-ui/public/commands-lib.js","line":100,"string_id":"65fd1339e2f2","occurrences":3},
350
350
  {"key":"L0036","section":"{…} and {…}","text":"How you start it","placement":"placed","file":"modules/hall-ui/public/commands-lib.js","line":100,"string_id":"3438c73d4f3d","occurrences":3},
351
- {"key":"L0037","section":"{…} and {…}","text":"Shown to Claude","placement":"placed","file":"modules/hall-ui/public/commands.html","line":36,"string_id":"b20cd8a4fa21","occurrences":32},
351
+ {"key":"L0037","section":"{…} and {…}","text":"Shown to Claude","placement":"placed","file":"modules/hall-ui/public/commands.html","line":36,"string_id":"b20cd8a4fa21","occurrences":31},
352
352
  {"key":"L0038","section":"{…} and {…}","text":"{…} of {…}","placement":"placed","file":"modules/hall-ui/public/sky-panel.js","line":120,"string_id":"73c1372b43d9","occurrences":5},
353
- {"key":"L0039","section":"{…} and {…}","text":"{…} file{…}","placement":"placed","file":"modules/hall-ui/public/gate.js","line":151,"string_id":"3efa67dc6e07","occurrences":4},
353
+ {"key":"L0039","section":"{…} and {…}","text":"{…} file{…}","placement":"placed","file":"modules/hall-ui/public/gate.js","line":151,"string_id":"3efa67dc6e07","occurrences":3},
354
354
  {"key":"L0040","section":"{…} routines 13","text":"{…} routines","placement":"unplaced"},
355
355
  {"key":"L0041","section":"{…} routines 13","text":"{…} project{…}","placement":"placed","file":"modules/hall-ui/public/fleet.js","line":39,"string_id":"771bef3d31b5","occurrences":5},
356
356
  {"key":"L0042","section":"{…} routines 13","text":"Command","placement":"unplaced"},
@@ -371,33 +371,34 @@
371
371
  {"key":"L0057","section":"{…} project{…}","text":"How you start it","placement":"placed","file":"modules/hall-ui/public/commands-lib.js","line":100,"string_id":"3438c73d4f3d"},
372
372
  {"key":"L0058","section":"{…} project{…}","text":"Shown to Claude","placement":"placed","file":"modules/hall-ui/public/commands.html","line":36,"string_id":"b20cd8a4fa21","occurrences":5},
373
373
  {"key":"L0059","section":"{…} project{…}","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232","occurrences":3},
374
- {"key":"L0060","section":"Everything else 5","text":"Everything else","placement":"unplaced"},
375
- {"key":"L0061","section":"Everything else 5","text":"{…} project{…}","placement":"placed","file":"modules/hall-ui/public/fleet.js","line":39,"string_id":"771bef3d31b5","occurrences":7},
376
- {"key":"L0062","section":"Everything else 5","text":"Command","placement":"unplaced"},
377
- {"key":"L0063","section":"Everything else 5","text":"What it does","placement":"placed","file":"modules/hall-ui/public/commands-lib.js","line":100,"string_id":"0efa2f18bb6c"},
378
- {"key":"L0064","section":"Everything else 5","text":"When to reach for it","placement":"placed","file":"modules/hall-ui/public/commands-lib.js","line":100,"string_id":"a6e102816e92"},
379
- {"key":"L0065","section":"Everything else 5","text":"What it costs","placement":"placed","file":"modules/hall-ui/public/commands-lib.js","line":100,"string_id":"65fd1339e2f2"},
380
- {"key":"L0066","section":"Everything else 5","text":"How you start it","placement":"placed","file":"modules/hall-ui/public/commands-lib.js","line":100,"string_id":"3438c73d4f3d"},
381
- {"key":"L0067","section":"Everything else 5","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232","occurrences":2},
382
- {"key":"L0068","section":"Everything else 5","text":"Shown to Claude","placement":"placed","file":"modules/hall-ui/public/commands.html","line":36,"string_id":"b20cd8a4fa21","occurrences":5},
383
- {"key":"L0069","section":"Everything else 5","text":"{…} of {…}","placement":"placed","file":"modules/hall-ui/public/sky-panel.js","line":120,"string_id":"73c1372b43d9","occurrences":2},
384
- {"key":"L0070","section":"Everything else 5","text":"Having a command does not give you permission to use it: some refuse below a certain rank, and that is checked every time it runs.","placement":"placed","file":"modules/hall-ui/public/commands.html","line":40,"string_id":"5fb6c11ea890"},
385
- {"key":"L0071","section":"Terminal commands (bongos)","text":"Terminal commands (bongos)","placement":"placed","file":"modules/hall-ui/public/commands.html","line":44,"string_id":"1e4285bdfaef"},
386
- {"key":"L0072","section":"Terminal commands (bongos)","text":"The same work from any terminal, outside Claude Code. Run","placement":"placed","file":"modules/hall-ui/public/commands.html","line":45,"string_id":"ec849c59d583"},
387
- {"key":"L0073","section":"Terminal commands (bongos)","text":"bongos help","placement":"placed","file":"modules/hall-ui/public/commands.html","line":45,"string_id":"e81d92078af1"},
388
- {"key":"L0074","section":"Terminal commands (bongos)","text":"to see this list there.","placement":"placed","file":"modules/hall-ui/public/commands.html","line":45,"string_id":"3c9ba5dc851d"},
389
- {"key":"L0075","section":"Terminal commands (bongos)","text":"{…} project{…}","placement":"placed","file":"modules/hall-ui/public/fleet.js","line":39,"string_id":"771bef3d31b5"},
390
- {"key":"L0076","section":"footer","text":"Sign out","placement":"shared","file":"modules/hall-ui/public/shell.js","line":471,"string_id":"1883ad7f07fc"},
391
- {"key":"L0077","section":"Terminal commands (bongos)","text":"Builders hall · this session","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":346,"string_id":"fd1903586e8e"},
392
- {"key":"L0078","section":"What are you doing now?","text":"What are you doing now?","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":347,"string_id":"60853319f290"},
393
- {"key":"L0079","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":348,"string_id":"4f87d5b17b54"},
394
- {"key":"L0080","section":"What are you doing now?","text":"Building","placement":"unplaced"},
395
- {"key":"L0081","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},
396
- {"key":"L0082","section":"What are you doing now?","text":"Artistry","placement":"unplaced"},
397
- {"key":"L0083","section":"What are you doing now?","text":"Ideating","placement":"unplaced"},
398
- {"key":"L0084","section":"What are you doing now?","text":"Turn thoughts into ideas.","placement":"unplaced"},
399
- {"key":"L0085","section":"What are you doing now?","text":"Governing","placement":"unplaced"},
400
- {"key":"L0086","section":"What are you doing now?","text":"Ask me again next session","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":351,"string_id":"fa86bf403775"}
374
+ {"key":"L0060","section":"Everything else 6","text":"Everything else","placement":"unplaced"},
375
+ {"key":"L0061","section":"Everything else 6","text":"{…} project{…}","placement":"placed","file":"modules/hall-ui/public/fleet.js","line":39,"string_id":"771bef3d31b5","occurrences":8},
376
+ {"key":"L0062","section":"Everything else 6","text":"Command","placement":"unplaced"},
377
+ {"key":"L0063","section":"Everything else 6","text":"What it does","placement":"placed","file":"modules/hall-ui/public/commands-lib.js","line":100,"string_id":"0efa2f18bb6c"},
378
+ {"key":"L0064","section":"Everything else 6","text":"When to reach for it","placement":"placed","file":"modules/hall-ui/public/commands-lib.js","line":100,"string_id":"a6e102816e92"},
379
+ {"key":"L0065","section":"Everything else 6","text":"What it costs","placement":"placed","file":"modules/hall-ui/public/commands-lib.js","line":100,"string_id":"65fd1339e2f2"},
380
+ {"key":"L0066","section":"Everything else 6","text":"How you start it","placement":"placed","file":"modules/hall-ui/public/commands-lib.js","line":100,"string_id":"3438c73d4f3d"},
381
+ {"key":"L0067","section":"Everything else 6","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232","occurrences":3},
382
+ {"key":"L0068","section":"Everything else 6","text":"{…} file{…}","placement":"placed","file":"modules/hall-ui/public/gate.js","line":151,"string_id":"3efa67dc6e07"},
383
+ {"key":"L0069","section":"Everything else 6","text":"Shown to Claude","placement":"placed","file":"modules/hall-ui/public/commands.html","line":36,"string_id":"b20cd8a4fa21","occurrences":6},
384
+ {"key":"L0070","section":"Everything else 6","text":"{…} of {…}","placement":"placed","file":"modules/hall-ui/public/sky-panel.js","line":120,"string_id":"73c1372b43d9","occurrences":2},
385
+ {"key":"L0071","section":"Everything else 6","text":"Having a command does not give you permission to use it: some refuse below a certain rank, and that is checked every time it runs.","placement":"placed","file":"modules/hall-ui/public/commands.html","line":40,"string_id":"5fb6c11ea890"},
386
+ {"key":"L0072","section":"Terminal commands (bongos)","text":"Terminal commands (bongos)","placement":"placed","file":"modules/hall-ui/public/commands.html","line":44,"string_id":"1e4285bdfaef"},
387
+ {"key":"L0073","section":"Terminal commands (bongos)","text":"The same work from any terminal, outside Claude Code. Run","placement":"placed","file":"modules/hall-ui/public/commands.html","line":45,"string_id":"ec849c59d583"},
388
+ {"key":"L0074","section":"Terminal commands (bongos)","text":"bongos help","placement":"placed","file":"modules/hall-ui/public/commands.html","line":45,"string_id":"e81d92078af1"},
389
+ {"key":"L0075","section":"Terminal commands (bongos)","text":"to see this list there.","placement":"placed","file":"modules/hall-ui/public/commands.html","line":45,"string_id":"3c9ba5dc851d"},
390
+ {"key":"L0076","section":"Terminal commands (bongos)","text":"{…} project{…}","placement":"placed","file":"modules/hall-ui/public/fleet.js","line":39,"string_id":"771bef3d31b5"},
391
+ {"key":"L0077","section":"footer","text":"Sign out","placement":"shared","file":"modules/hall-ui/public/shell.js","line":471,"string_id":"1883ad7f07fc"},
392
+ {"key":"L0078","section":"Terminal commands (bongos)","text":"Builders hall · this session","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":346,"string_id":"fd1903586e8e"},
393
+ {"key":"L0079","section":"What are you doing now?","text":"What are you doing now?","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":347,"string_id":"60853319f290"},
394
+ {"key":"L0080","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":348,"string_id":"4f87d5b17b54"},
395
+ {"key":"L0081","section":"What are you doing now?","text":"Building","placement":"unplaced"},
396
+ {"key":"L0082","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},
397
+ {"key":"L0083","section":"What are you doing now?","text":"Artistry","placement":"unplaced"},
398
+ {"key":"L0084","section":"What are you doing now?","text":"Ideating","placement":"unplaced"},
399
+ {"key":"L0085","section":"What are you doing now?","text":"Turn thoughts into ideas.","placement":"unplaced"},
400
+ {"key":"L0086","section":"What are you doing now?","text":"Governing","placement":"unplaced"},
401
+ {"key":"L0087","section":"What are you doing now?","text":"Ask me again next session","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":351,"string_id":"fa86bf403775"}
401
402
  ]
402
403
  },
403
404
  {
@@ -405,7 +406,7 @@
405
406
  "surface": "builders",
406
407
  "title": "Copy desk",
407
408
  "states_read": ["queue","out","search","composer","closer","proposer"],
408
- "files_hash": "a5d3d56d1cad4dcc",
409
+ "files_hash": "44bb89a9fa39a2e4",
409
410
  "reading_hash": "3c6fb132ac9d81fc",
410
411
  "counts": {"lines":85,"placed":47,"shared":9,"unplaced":29},
411
412
  "omitted": {"data":114},
@@ -503,7 +504,7 @@
503
504
  "surface": "builders",
504
505
  "title": "Deploy",
505
506
  "states_read": ["work","out"],
506
- "files_hash": "d8f65a1845558c41",
507
+ "files_hash": "fe33b124bfa8a230",
507
508
  "reading_hash": "b9fc5f83cc76b257",
508
509
  "counts": {"lines":21,"placed":5,"shared":9,"unplaced":7},
509
510
  "omitted": {"data":1},
@@ -537,7 +538,7 @@
537
538
  "surface": "builders",
538
539
  "title": "Diagrams",
539
540
  "states_read": ["in","out"],
540
- "files_hash": "6be3c3e80bed9ae4",
541
+ "files_hash": "439602215b198aa6",
541
542
  "reading_hash": "bdae2db39c82d3bb",
542
543
  "counts": {"lines":52,"placed":35,"shared":9,"unplaced":8},
543
544
  "omitted": {"data":1},
@@ -602,7 +603,7 @@
602
603
  "surface": "builders",
603
604
  "title": "Drachmae & karma",
604
605
  "states_read": ["read","toc-open","jump","out"],
605
- "files_hash": "619834f92bf5895b",
606
+ "files_hash": "2523cb54f2982074",
606
607
  "reading_hash": "4a272db572bde66b",
607
608
  "counts": {"lines":420,"placed":44,"shared":9,"unplaced":367},
608
609
  "omitted": {"data":31},
@@ -1035,7 +1036,7 @@
1035
1036
  "surface": "builders",
1036
1037
  "title": "Fleet costs",
1037
1038
  "states_read": ["ledger","out"],
1038
- "files_hash": "8d1b66bec3adf9da",
1039
+ "files_hash": "2742fd4be4f8888e",
1039
1040
  "reading_hash": "db04003c871f8317",
1040
1041
  "counts": {"lines":36,"placed":11,"shared":9,"unplaced":16},
1041
1042
  "omitted": {"data":11},
@@ -1084,7 +1085,7 @@
1084
1085
  "surface": "builders",
1085
1086
  "title": "Gate",
1086
1087
  "states_read": ["queue","out","approve"],
1087
- "files_hash": "53af2698e646eb29",
1088
+ "files_hash": "46dbb729c840e1ca",
1088
1089
  "reading_hash": "d4d18d745b0d8885",
1089
1090
  "counts": {"lines":46,"placed":18,"shared":9,"unplaced":19},
1090
1091
  "omitted": {"data":32},
@@ -1143,7 +1144,7 @@
1143
1144
  "surface": "builders",
1144
1145
  "title": "The sky",
1145
1146
  "states_read": ["tour","sky","wells","ledger","full","full-back","out"],
1146
- "files_hash": "3b57205efd6f054a",
1147
+ "files_hash": "0a45e42839f564c4",
1147
1148
  "reading_hash": "eed58172bb0d2f16",
1148
1149
  "counts": {"lines":49,"placed":23,"shared":8,"unplaced":18},
1149
1150
  "omitted": {"data":6},
@@ -1205,7 +1206,7 @@
1205
1206
  "surface": "builders",
1206
1207
  "title": "Goals",
1207
1208
  "states_read": ["list","filters","cards","detail","out","uat","uat-panel"],
1208
- "files_hash": "f6ded3945dc46c01",
1209
+ "files_hash": "f459d8532a570439",
1209
1210
  "reading_hash": "b85040434cecf782",
1210
1211
  "counts": {"lines":163,"placed":48,"shared":9,"unplaced":106},
1211
1212
  "omitted": {"data":244},
@@ -1381,7 +1382,7 @@
1381
1382
  "surface": "builders",
1382
1383
  "title": "Government",
1383
1384
  "states_read": ["constitution","out","permissions","board","constitution-tab"],
1384
- "files_hash": "56f921a17a122049",
1385
+ "files_hash": "f9f5fb7afe9b7504",
1385
1386
  "reading_hash": "510e9483fa28ef9e",
1386
1387
  "counts": {"lines":94,"placed":36,"shared":9,"unplaced":49},
1387
1388
  "omitted": {"data":27},
@@ -1488,7 +1489,7 @@
1488
1489
  "surface": "builders",
1489
1490
  "title": "Builders' Hall",
1490
1491
  "states_read": ["home","standing","standing-karma","out","founding","genesis","decide","demo"],
1491
- "files_hash": "80a86a0f0edfc017",
1492
+ "files_hash": "6acbe699385066c3",
1492
1493
  "reading_hash": "d86f85c08bd34775",
1493
1494
  "counts": {"lines":220,"placed":75,"shared":11,"unplaced":134},
1494
1495
  "omitted": {"data":183},
@@ -1602,8 +1603,8 @@
1602
1603
  {"key":"L0106","section":"Progress","text":"Progress","placement":"unplaced","state":"standing"},
1603
1604
  {"key":"L0107","section":"Progress","text":"How your output has changed over time — work shipped, cost and time per work, and how reviews held up.","placement":"placed","file":"modules/hall-ui/public/hall-widgets.js","line":213,"string_id":"298ff22576ee","state":"standing"},
1604
1605
  {"key":"L0108","section":"Progress","text":"You","placement":"placed","file":"modules/hall-ui/public/board-room.js","line":449,"string_id":"8e527ab12334","state":"standing","occurrences":3},
1605
- {"key":"L0109","section":"Progress","text":"All builders","placement":"placed","file":"modules/hall-ui/public/hall-render.js","line":1181,"string_id":"8b736e365191","state":"standing","occurrences":3},
1606
- {"key":"L0110","section":"Progress","text":"Kind of work","placement":"placed","file":"modules/hall-ui/public/hall-render.js","line":1146,"string_id":"e3b473af2f69","state":"standing"},
1606
+ {"key":"L0109","section":"Progress","text":"All builders","placement":"placed","file":"modules/hall-ui/public/hall-render.js","line":1183,"string_id":"8b736e365191","state":"standing","occurrences":3},
1607
+ {"key":"L0110","section":"Progress","text":"Kind of work","placement":"placed","file":"modules/hall-ui/public/hall-render.js","line":1148,"string_id":"e3b473af2f69","state":"standing"},
1607
1608
  {"key":"L0111","section":"Progress","text":"All work","placement":"unplaced","state":"standing"},
1608
1609
  {"key":"L0112","section":"Progress","text":"bug (11)","placement":"unplaced","state":"standing"},
1609
1610
  {"key":"L0113","section":"Progress","text":"Works {…}","placement":"unplaced","state":"standing"},
@@ -1623,7 +1624,7 @@
1623
1624
  {"key":"L0127","section":"Progress","text":"total $1241.96","placement":"unplaced","state":"standing"},
1624
1625
  {"key":"L0128","section":"Progress","text":"no data in window","placement":"unplaced","state":"standing"},
1625
1626
  {"key":"L0129","section":"Progress","text":"{…} of {…}","placement":"placed","file":"modules/hall-ui/public/sky-panel.js","line":120,"string_id":"73c1372b43d9","state":"standing"},
1626
- {"key":"L0130","section":"Progress","text":"Kinds of work shipped","placement":"placed","file":"modules/hall-ui/public/hall-render.js","line":1259,"string_id":"7d6eaa8d4514","state":"standing"},
1627
+ {"key":"L0130","section":"Progress","text":"Kinds of work shipped","placement":"placed","file":"modules/hall-ui/public/hall-render.js","line":1261,"string_id":"7d6eaa8d4514","state":"standing"},
1627
1628
  {"key":"L0131","section":"Achievements","text":"Achievements","placement":"unplaced","state":"standing"},
1628
1629
  {"key":"L0132","section":"Achievements","text":"Eight achievements recognize sustained contribution. Earned ones are highlighted; the rest show what’s left to do.","placement":"placed","file":"modules/hall-ui/public/hall-widgets.js","line":228,"string_id":"854a21d2eb39","state":"standing"},
1629
1630
  {"key":"L0133","section":"Achievements","text":"Won {…}","placement":"placed","file":"modules/hall-ui/public/builders.js","line":477,"string_id":"c5fd76a9e03d","state":"standing","occurrences":6},
@@ -1721,7 +1722,7 @@
1721
1722
  "surface": "builders",
1722
1723
  "title": "Idea",
1723
1724
  "states_read": ["record","missing"],
1724
- "files_hash": "db35e7373ab349c0",
1725
+ "files_hash": "2c7745a17d08c35c",
1725
1726
  "reading_hash": "b80fa95ae1d37af3",
1726
1727
  "counts": {"lines":54,"placed":23,"shared":10,"unplaced":21},
1727
1728
  "omitted": {"data":16},
@@ -1788,7 +1789,7 @@
1788
1789
  "surface": "builders",
1789
1790
  "title": "Ideas",
1790
1791
  "states_read": ["compose","full","develop"],
1791
- "files_hash": "45f07545c8941752",
1792
+ "files_hash": "a6fee80e6b59f308",
1792
1793
  "reading_hash": "71ce0297b8159bc5",
1793
1794
  "counts": {"lines":72,"placed":34,"shared":9,"unplaced":29},
1794
1795
  "omitted": {"data":45},
@@ -1873,7 +1874,7 @@
1873
1874
  "surface": "builders",
1874
1875
  "title": "Modules",
1875
1876
  "states_read": ["browse","search-empty","lens","details","out"],
1876
- "files_hash": "3c706fec48d940db",
1877
+ "files_hash": "69456cabb5b913ca",
1877
1878
  "reading_hash": "c998ac5c99d2e0cb",
1878
1879
  "counts": {"lines":50,"placed":19,"shared":9,"unplaced":22},
1879
1880
  "omitted": {"data":74},
@@ -1897,7 +1898,7 @@
1897
1898
  {"key":"L0016","section":"Module catalog","text":"all","placement":"unplaced"},
1898
1899
  {"key":"L0017","section":"Module catalog","text":"enabled","placement":"unplaced","occurrences":16},
1899
1900
  {"key":"L0018","section":"Module catalog","text":"disabled","placement":"unplaced","occurrences":4},
1900
- {"key":"L0019","section":"Module catalog","text":"{…} of {…}","placement":"placed","file":"modules/hall-ui/public/sky-panel.js","line":120,"string_id":"73c1372b43d9","state":"lens","occurrences":3},
1901
+ {"key":"L0019","section":"Module catalog","text":"{…} of {…}","placement":"placed","file":"modules/hall-ui/public/sky-panel.js","line":120,"string_id":"73c1372b43d9","state":"search-empty","occurrences":2},
1901
1902
  {"key":"L0020","section":"Module catalog","text":"modules","placement":"unplaced"},
1902
1903
  {"key":"L0021","section":"Module catalog","text":"16 from the {…}","placement":"unplaced"},
1903
1904
  {"key":"L0022","section":"Module catalog","text":"of {…}","placement":"placed","file":"modules/hall-ui/public/roadmap.js","line":341,"string_id":"5e7a2220c6a9"},
@@ -1936,9 +1937,9 @@
1936
1937
  "surface": "builders",
1937
1938
  "title": "Primer",
1938
1939
  "states_read": ["in","toc-open","out"],
1939
- "files_hash": "2e20d6539e74cb03",
1940
- "reading_hash": "6e8daaf4c90deb09",
1941
- "counts": {"lines":418,"placed":54,"shared":9,"unplaced":355},
1940
+ "files_hash": "3af016d7fc5ebafe",
1941
+ "reading_hash": "86dfeac3480f06af",
1942
+ "counts": {"lines":426,"placed":57,"shared":9,"unplaced":360},
1942
1943
  "omitted": {"data":4},
1943
1944
  "notes": [],
1944
1945
  "lines": [
@@ -2264,7 +2265,7 @@
2264
2265
  {"key":"L0320","section":"The steps","text":"not","placement":"unplaced"},
2265
2266
  {"key":"L0321","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"},
2266
2267
  {"key":"L0322","section":"The steps","text":"claude.com/download","placement":"unplaced","occurrences":2},
2267
- {"key":"L0323","section":"The steps","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232","occurrences":11},
2268
+ {"key":"L0323","section":"The steps","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232","occurrences":12},
2268
2269
  {"key":"L0324","section":"The steps","text":"Code","placement":"unplaced","occurrences":2},
2269
2270
  {"key":"L0325","section":"The steps","text":"tab.","placement":"unplaced"},
2270
2271
  {"key":"L0326","section":"The steps","text":"2. Accept your invitation to the code (check your email).","placement":"unplaced"},
@@ -2274,7 +2275,7 @@
2274
2275
  {"key":"L0330","section":"The steps","text":"View invitation","placement":"unplaced"},
2275
2276
  {"key":"L0331","section":"The steps","text":", then","placement":"unplaced"},
2276
2277
  {"key":"L0332","section":"The steps","text":"Accept","placement":"unplaced"},
2277
- {"key":"L0333","section":"The steps","text":"{…} project{…}","placement":"placed","file":"modules/hall-ui/public/fleet.js","line":39,"string_id":"771bef3d31b5","occurrences":4},
2278
+ {"key":"L0333","section":"The steps","text":"{…} project{…}","placement":"placed","file":"modules/hall-ui/public/fleet.js","line":39,"string_id":"771bef3d31b5","occurrences":6},
2278
2279
  {"key":"L0334","section":"The steps","text":"You don't need to do anything there","placement":"unplaced"},
2279
2280
  {"key":"L0335","section":"The steps","text":"{…} of {…}","placement":"placed","file":"modules/hall-ui/public/sky-panel.js","line":120,"string_id":"73c1372b43d9"},
2280
2281
  {"key":"L0336","section":"The steps","text":"3. Open the code in Claude Code.","placement":"unplaced"},
@@ -2295,71 +2296,79 @@
2295
2296
  {"key":"L0351","section":"The steps","text":"commands will all be there.)","placement":"unplaced"},
2296
2297
  {"key":"L0352","section":"The steps","text":"In the","placement":"unplaced"},
2297
2298
  {"key":"L0353","section":"The steps","text":"fresh","placement":"unplaced"},
2298
- {"key":"L0354","section":"The steps","text":"session, type","placement":"unplaced"},
2299
- {"key":"L0355","section":"The steps","text":"/builder-setup","placement":"unplaced","occurrences":3},
2300
- {"key":"L0356","section":"The steps","text":"— or just say","placement":"unplaced"},
2301
- {"key":"L0357","section":"The steps","text":"\"set up builder\"","placement":"unplaced"},
2302
- {"key":"L0358","section":"The steps","text":"/builder-start","placement":"unplaced"},
2303
- {"key":"L0359","section":"The steps","text":"to see the works you can claim right now.","placement":"unplaced"},
2304
- {"key":"L0360","section":"The steps","text":"If a","placement":"unplaced"},
2305
- {"key":"L0361","section":"The steps","text":"command ever says \"no Bongos session,\" just run","placement":"unplaced"},
2306
- {"key":"L0362","section":"The steps","text":"again — that re-links you. And if","placement":"unplaced"},
2307
- {"key":"L0363","section":"The steps","text":"itself comes back","placement":"unplaced"},
2308
- {"key":"L0364","section":"The steps","text":"\"unknown command,\"","placement":"unplaced"},
2309
- {"key":"L0365","section":"The steps","text":"Prefer a terminal? (the quicker path if you're technical.)","placement":"unplaced"},
2310
- {"key":"L0366","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"},
2311
- {"key":"L0367","section":"The steps","text":"cd","placement":"unplaced","occurrences":2},
2312
- {"key":"L0368","section":"The steps","text":"Before you start","placement":"unplaced"},
2313
- {"key":"L0369","section":"The steps","text":", have three things ready:","placement":"unplaced"},
2314
- {"key":"L0370","section":"The steps","text":"Git","placement":"unplaced"},
2315
- {"key":"L0371","section":"The steps","text":"(check","placement":"unplaced"},
2316
- {"key":"L0372","section":"The steps","text":"git --version","placement":"unplaced"},
2317
- {"key":"L0373","section":"The steps","text":"; get it from","placement":"unplaced"},
2318
- {"key":"L0374","section":"The steps","text":"git-scm.com","placement":"unplaced"},
2319
- {"key":"L0375","section":"The steps","text":"), the","placement":"unplaced"},
2320
- {"key":"L0376","section":"The steps","text":"Claude Code","placement":"placed","file":"modules/hall-ui/public/hall-render.js","line":833,"string_id":"18a03475e536"},
2321
- {"key":"L0377","section":"The steps","text":"desktop app (","placement":"unplaced"},
2322
- {"key":"L0378","section":"The steps","text":"GitHub account that's been invited to this private repo","placement":"unplaced"},
2323
- {"key":"L0379","section":"The steps","text":"Clone the repo and","placement":"unplaced"},
2324
- {"key":"L0380","section":"The steps","text":"into the folder it creates: ``","placement":"unplaced"},
2325
- {"key":"L0381","section":"The steps","text":"sh git clone https://github.com/example-owner/example.git cd example","placement":"unplaced"},
2326
- {"key":"L0382","section":"The steps","text":"**Then bootstrap** from inside that folder:","placement":"unplaced"},
2327
- {"key":"L0383","section":"The steps","text":"./scripts/setup-builder.sh","placement":"unplaced"},
2328
- {"key":"L0384","section":"The steps","text":"(macOS/Linux) — or","placement":"unplaced"},
2329
- {"key":"L0385","section":"Your first task","text":"Your first task","placement":"unplaced"},
2330
- {"key":"L0386","section":"Your first task","text":"Run","placement":"unplaced"},
2331
- {"key":"L0387","section":"Your first task","text":"/builder-start","placement":"unplaced"},
2332
- {"key":"L0388","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"},
2333
- {"key":"L0389","section":"Your first task","text":"newcomer_friendly","placement":"unplaced"},
2334
- {"key":"L0390","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"},
2335
- {"key":"L0391","section":"Your first task","text":"/builder-claim N","placement":"unplaced"},
2336
- {"key":"L0392","section":"Your first task","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232","occurrences":3},
2337
- {"key":"L0393","section":"Your first task","text":"/builder-ship","placement":"unplaced"},
2338
- {"key":"L0394","section":"Your first task","text":"When you ship your","placement":"unplaced"},
2339
- {"key":"L0395","section":"Your first task","text":"first","placement":"unplaced"},
2340
- {"key":"L0396","section":"Your first task","text":"third","placement":"unplaced"},
2341
- {"key":"L0397","section":"Your first task","text":"and you graduate to","placement":"unplaced"},
2342
- {"key":"L0398","section":"Your first task","text":"Thetes","placement":"unplaced"},
2343
- {"key":"L0399","section":"Previewing your change","text":"Previewing your change","placement":"unplaced"},
2344
- {"key":"L0400","section":"Previewing your change","text":"Before you ship a change that touches the game, run","placement":"unplaced"},
2345
- {"key":"L0401","section":"Previewing your change","text":"/builder-{…}","placement":"unplaced"},
2346
- {"key":"L0402","section":"Previewing your change","text":"{…} of {…}","placement":"placed","file":"modules/hall-ui/public/sky-panel.js","line":120,"string_id":"73c1372b43d9"},
2347
- {"key":"L0403","section":"Previewing your change","text":"http://localhost:<port>","placement":"unplaced"},
2348
- {"key":"L0404","section":"Previewing your change","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232"},
2349
- {"key":"L0405","section":"Acknowledge the primer","text":"Acknowledge the primer","placement":"placed","file":"modules/hall-ui/public/primer.html","line":99,"string_id":"6ca31dd5eb91"},
2350
- {"key":"L0406","section":"Acknowledge the primer","text":"Already acknowledged — you can re-read the primer any time.","placement":"unplaced"},
2351
- {"key":"L0407","section":"Acknowledge the primer","text":"Back to home","placement":"placed","file":"modules/hall-ui/public/primer.html","line":90,"string_id":"08afb1257b71"},
2352
- {"key":"L0408","section":"footer","text":"Sign out","placement":"shared","file":"modules/hall-ui/public/shell.js","line":471,"string_id":"1883ad7f07fc"},
2353
- {"key":"L0409","section":"Acknowledge the primer","text":"Builders hall · this session","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":346,"string_id":"fd1903586e8e"},
2354
- {"key":"L0410","section":"What are you doing now?","text":"What are you doing now?","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":347,"string_id":"60853319f290"},
2355
- {"key":"L0411","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":348,"string_id":"4f87d5b17b54"},
2356
- {"key":"L0412","section":"What are you doing now?","text":"Building","placement":"unplaced"},
2357
- {"key":"L0413","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},
2358
- {"key":"L0414","section":"What are you doing now?","text":"Artistry","placement":"unplaced"},
2359
- {"key":"L0415","section":"What are you doing now?","text":"Ideating","placement":"unplaced"},
2360
- {"key":"L0416","section":"What are you doing now?","text":"Turn thoughts into ideas.","placement":"unplaced"},
2361
- {"key":"L0417","section":"What are you doing now?","text":"Governing","placement":"unplaced"},
2362
- {"key":"L0418","section":"What are you doing now?","text":"Ask me again next session","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":351,"string_id":"fa86bf403775"}
2299
+ {"key":"L0354","section":"The steps","text":"session, send this one message —","placement":"unplaced"},
2300
+ {"key":"L0355","section":"The steps","text":"Node","placement":"unplaced"},
2301
+ {"key":"L0356","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"},
2302
+ {"key":"L0357","section":"The steps","text":"nodejs.org","placement":"unplaced","occurrences":2},
2303
+ {"key":"L0358","section":"The steps","text":"npx bongos setup","placement":"placed","file":"modules/hall-ui/public/hall-render.js","line":810,"string_id":"f3733d6a021e","occurrences":3},
2304
+ {"key":"L0359","section":"The steps","text":"/builder-start","placement":"unplaced","occurrences":2},
2305
+ {"key":"L0360","section":"The steps","text":"to see the works you can claim right now.","placement":"unplaced"},
2306
+ {"key":"L0361","section":"The steps","text":"If a","placement":"unplaced"},
2307
+ {"key":"L0362","section":"The steps","text":"command ever says \"no Bongos session,\" run","placement":"unplaced"},
2308
+ {"key":"L0363","section":"The steps","text":"again — that re-links you. And if","placement":"unplaced"},
2309
+ {"key":"L0364","section":"The steps","text":"comes back","placement":"unplaced"},
2310
+ {"key":"L0365","section":"The steps","text":"\"unknown command,\"","placement":"unplaced"},
2311
+ {"key":"L0366","section":"The steps","text":"Prefer a terminal? (the quicker path if you're technical.)","placement":"unplaced"},
2312
+ {"key":"L0367","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"},
2313
+ {"key":"L0368","section":"The steps","text":"cd","placement":"unplaced","occurrences":2},
2314
+ {"key":"L0369","section":"The steps","text":"Before you start","placement":"unplaced"},
2315
+ {"key":"L0370","section":"The steps","text":", have four things ready:","placement":"unplaced"},
2316
+ {"key":"L0371","section":"The steps","text":"Git","placement":"unplaced"},
2317
+ {"key":"L0372","section":"The steps","text":"(check","placement":"unplaced","occurrences":2},
2318
+ {"key":"L0373","section":"The steps","text":"git --version","placement":"unplaced"},
2319
+ {"key":"L0374","section":"The steps","text":"; get it from","placement":"unplaced","occurrences":2},
2320
+ {"key":"L0375","section":"The steps","text":"git-scm.com","placement":"unplaced"},
2321
+ {"key":"L0376","section":"The steps","text":"Node ≥ 22","placement":"unplaced"},
2322
+ {"key":"L0377","section":"The steps","text":"node --version","placement":"unplaced"},
2323
+ {"key":"L0378","section":"The steps","text":"— it provides the","placement":"unplaced"},
2324
+ {"key":"L0379","section":"The steps","text":"npm","placement":"unplaced"},
2325
+ {"key":"L0380","section":"The steps","text":"and","placement":"placed","file":"modules/hall-ui/public/deploy.js","line":544,"string_id":"084748fd85b4"},
2326
+ {"key":"L0381","section":"The steps","text":"npx","placement":"unplaced"},
2327
+ {"key":"L0382","section":"The steps","text":"commands below), the","placement":"unplaced"},
2328
+ {"key":"L0383","section":"The steps","text":"Claude Code","placement":"placed","file":"modules/hall-ui/public/hall-render.js","line":834,"string_id":"18a03475e536"},
2329
+ {"key":"L0384","section":"The steps","text":"desktop app (","placement":"unplaced"},
2330
+ {"key":"L0385","section":"The steps","text":"GitHub account that's been invited to this private repo","placement":"unplaced"},
2331
+ {"key":"L0386","section":"The steps","text":"(accept the emailed invite from step 2).","placement":"unplaced"},
2332
+ {"key":"L0387","section":"The steps","text":"Clone the repo and","placement":"unplaced"},
2333
+ {"key":"L0388","section":"The steps","text":"into the folder it creates:","placement":"unplaced"},
2334
+ {"key":"L0389","section":"The steps","text":"git clone https://github.com/example-owner/example.git cd example","placement":"unplaced"},
2335
+ {"key":"L0390","section":"The steps","text":"Then sign in","placement":"unplaced"},
2336
+ {"key":"L0391","section":"The steps","text":"npm install npx bongos setup","placement":"unplaced"},
2337
+ {"key":"L0392","section":"The steps","text":"npm install","placement":"placed","file":"modules/hall-ui/public/hall-render.js","line":810,"string_id":"e2c643fbf4d6"},
2338
+ {"key":"L0393","section":"Your first task","text":"Your first task","placement":"unplaced"},
2339
+ {"key":"L0394","section":"Your first task","text":"Run","placement":"unplaced"},
2340
+ {"key":"L0395","section":"Your first task","text":"/builder-start","placement":"unplaced"},
2341
+ {"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"},
2342
+ {"key":"L0397","section":"Your first task","text":"newcomer_friendly","placement":"unplaced"},
2343
+ {"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"},
2344
+ {"key":"L0399","section":"Your first task","text":"/builder-claim N","placement":"unplaced"},
2345
+ {"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},
2346
+ {"key":"L0401","section":"Your first task","text":"/builder-ship","placement":"unplaced"},
2347
+ {"key":"L0402","section":"Your first task","text":"When you ship your","placement":"unplaced"},
2348
+ {"key":"L0403","section":"Your first task","text":"first","placement":"unplaced"},
2349
+ {"key":"L0404","section":"Your first task","text":"third","placement":"unplaced"},
2350
+ {"key":"L0405","section":"Your first task","text":"and you graduate to","placement":"unplaced"},
2351
+ {"key":"L0406","section":"Your first task","text":"Thetes","placement":"unplaced"},
2352
+ {"key":"L0407","section":"Previewing your change","text":"Previewing your change","placement":"unplaced"},
2353
+ {"key":"L0408","section":"Previewing your change","text":"Before you ship a change that touches the game, run","placement":"unplaced"},
2354
+ {"key":"L0409","section":"Previewing your change","text":"/builder-{…}","placement":"unplaced"},
2355
+ {"key":"L0410","section":"Previewing your change","text":"{…} of {…}","placement":"placed","file":"modules/hall-ui/public/sky-panel.js","line":120,"string_id":"73c1372b43d9"},
2356
+ {"key":"L0411","section":"Previewing your change","text":"http://localhost:<port>","placement":"unplaced"},
2357
+ {"key":"L0412","section":"Previewing your change","text":"{…} and {…}","placement":"placed","file":"modules/hall-ui/public/profile-nudge.js","line":77,"string_id":"56b00d773232"},
2358
+ {"key":"L0413","section":"Acknowledge the primer","text":"Acknowledge the primer","placement":"placed","file":"modules/hall-ui/public/primer.html","line":99,"string_id":"6ca31dd5eb91"},
2359
+ {"key":"L0414","section":"Acknowledge the primer","text":"Already acknowledged — you can re-read the primer any time.","placement":"unplaced"},
2360
+ {"key":"L0415","section":"Acknowledge the primer","text":"Back to home","placement":"placed","file":"modules/hall-ui/public/primer.html","line":90,"string_id":"08afb1257b71"},
2361
+ {"key":"L0416","section":"footer","text":"Sign out","placement":"shared","file":"modules/hall-ui/public/shell.js","line":471,"string_id":"1883ad7f07fc"},
2362
+ {"key":"L0417","section":"Acknowledge the primer","text":"Builders hall · this session","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":346,"string_id":"fd1903586e8e"},
2363
+ {"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":347,"string_id":"60853319f290"},
2364
+ {"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":348,"string_id":"4f87d5b17b54"},
2365
+ {"key":"L0420","section":"What are you doing now?","text":"Building","placement":"unplaced"},
2366
+ {"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},
2367
+ {"key":"L0422","section":"What are you doing now?","text":"Artistry","placement":"unplaced"},
2368
+ {"key":"L0423","section":"What are you doing now?","text":"Ideating","placement":"unplaced"},
2369
+ {"key":"L0424","section":"What are you doing now?","text":"Turn thoughts into ideas.","placement":"unplaced"},
2370
+ {"key":"L0425","section":"What are you doing now?","text":"Governing","placement":"unplaced"},
2371
+ {"key":"L0426","section":"What are you doing now?","text":"Ask me again next session","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":351,"string_id":"fa86bf403775"}
2363
2372
  ]
2364
2373
  },
2365
2374
  {
@@ -2367,7 +2376,7 @@
2367
2376
  "surface": "builders",
2368
2377
  "title": "Profile",
2369
2378
  "states_read": ["own","works","activity","activity-artist","activity-ideator","other","artist","ideator","out"],
2370
- "files_hash": "45af8089547356ac",
2379
+ "files_hash": "794cb3fe3fd3cc27",
2371
2380
  "reading_hash": "8d48fe73a48c9fc3",
2372
2381
  "counts": {"lines":200,"placed":72,"shared":9,"unplaced":119},
2373
2382
  "omitted": {"data":195},
@@ -2580,7 +2589,7 @@
2580
2589
  "surface": "builders",
2581
2590
  "title": "Project settings",
2582
2591
  "states_read": ["default"],
2583
- "files_hash": "a0d8de7cf2106a03",
2592
+ "files_hash": "206ac61111b416fe",
2584
2593
  "reading_hash": "ca960c6250ff8bb5",
2585
2594
  "counts": {"lines":24,"placed":10,"shared":9,"unplaced":5},
2586
2595
  "omitted": {"data":1},
@@ -2617,7 +2626,7 @@
2617
2626
  "surface": "builders",
2618
2627
  "title": "Ranks",
2619
2628
  "states_read": ["out","in","founding"],
2620
- "files_hash": "63914f402603ec1b",
2629
+ "files_hash": "4af377187cd0b772",
2621
2630
  "reading_hash": "3613b4a36bc906c0",
2622
2631
  "counts": {"lines":49,"placed":13,"shared":9,"unplaced":27},
2623
2632
  "omitted": {"data":8},
@@ -2679,7 +2688,7 @@
2679
2688
  "surface": "builders",
2680
2689
  "title": "Roadmap",
2681
2690
  "states_read": ["in","out"],
2682
- "files_hash": "3da43944a88695b4",
2691
+ "files_hash": "fadb1d80431d53b3",
2683
2692
  "reading_hash": "9af6f3c5d8eaaa32",
2684
2693
  "counts": {"lines":55,"placed":24,"shared":9,"unplaced":22},
2685
2694
  "omitted": {"data":24},
@@ -2747,7 +2756,7 @@
2747
2756
  "surface": "builders",
2748
2757
  "title": "Builders",
2749
2758
  "states_read": ["roster","artists","search","out"],
2750
- "files_hash": "85c03d143fd04b06",
2759
+ "files_hash": "3a4113302e6da8ef",
2751
2760
  "reading_hash": "fde8420315aeef68",
2752
2761
  "counts": {"lines":49,"placed":13,"shared":9,"unplaced":27},
2753
2762
  "omitted": {"data":58},
@@ -2809,7 +2818,7 @@
2809
2818
  "surface": "builders",
2810
2819
  "title": "Sessions",
2811
2820
  "states_read": ["ledger","out"],
2812
- "files_hash": "90115a26bfe281f7",
2821
+ "files_hash": "bdd5341cca86d683",
2813
2822
  "reading_hash": "7cbd03c041f9e0d7",
2814
2823
  "counts": {"lines":68,"placed":21,"shared":9,"unplaced":38},
2815
2824
  "omitted": {"data":16},
@@ -2890,8 +2899,8 @@
2890
2899
  "surface": "builders",
2891
2900
  "title": "Settings",
2892
2901
  "states_read": ["account","access","preferences","skills-walkthrough","offered-skills","sound","update"],
2893
- "files_hash": "0a8e26a0b1ad57ea",
2894
- "reading_hash": "e9eff5251d449fcf",
2902
+ "files_hash": "11b890f9a9f3c6a2",
2903
+ "reading_hash": "da05f30e2cf4c979",
2895
2904
  "counts": {"lines":166,"placed":108,"shared":9,"unplaced":49},
2896
2905
  "omitted": {"data":68},
2897
2906
  "notes": ["skills-walkthrough: an action failed (page.click: Timeout 6000ms exceeded.); read as it stood","offered-skills: an action failed (page.click: Timeout 6000ms exceeded.); read as it stood"],
@@ -3000,10 +3009,10 @@
3000
3009
  {"key":"L0102","section":"Rendering","text":"Saves the moment you choose; applies from your next session.","placement":"placed","file":"modules/hall-ui/public/settings.html","line":332,"string_id":"72f24fcbe9e0","state":"preferences"},
3001
3010
  {"key":"L0103","section":"Rendering","text":"Builders hall · this session","placement":"placed","file":"modules/hall-ui/public/craft-mode.js","line":346,"string_id":"fd1903586e8e","state":"preferences"},
3002
3011
  {"key":"L0104","section":"CLI access","text":"CLI access","placement":"placed","file":"modules/hall-ui/public/settings.html","line":141,"string_id":"a015a43bfc7f","state":"access"},
3003
- {"key":"L0105","section":"CLI access","text":"Mint a fresh CLI token using this browser session and paste it into your terminal — the quick way back in when a","placement":"placed","file":"modules/hall-ui/public/settings.html","line":142,"string_id":"64e91044df43","state":"access"},
3004
- {"key":"L0106","section":"CLI access","text":"command says your session expired.","placement":"placed","file":"modules/hall-ui/public/settings.html","line":144,"string_id":"508ff7083048","state":"access"},
3012
+ {"key":"L0105","section":"CLI access","text":"Mint a fresh CLI token using this browser session and paste the command it gives you into a terminal in your project folder — the quick way back in when a","placement":"placed","file":"modules/hall-ui/public/settings.html","line":142,"string_id":"638bfd6405ce","state":"access"},
3013
+ {"key":"L0106","section":"CLI access","text":"command says your session expired.","placement":"placed","file":"modules/hall-ui/public/settings.html","line":145,"string_id":"508ff7083048","state":"access"},
3005
3014
  {"key":"L0107","section":"CLI access","text":"Re-issue CLI token","placement":"placed","file":"modules/hall-ui/public/settings.html","line":148,"string_id":"e60039795803","state":"access"},
3006
- {"key":"L0108","section":"CLI access","text":"paste it into your terminal — bypasses Device Flow.","placement":"placed","file":"modules/hall-ui/public/settings.html","line":149,"string_id":"25d2c940e672","state":"access"},
3015
+ {"key":"L0108","section":"CLI access","text":"no GitHub code to type in.","placement":"placed","file":"modules/hall-ui/public/settings.html","line":149,"string_id":"dfaec940ded4","state":"access"},
3007
3016
  {"key":"L0109","section":"CLI access","text":"Tokens refresh on use; re-issuing never signs you out anywhere else.","placement":"placed","file":"modules/hall-ui/public/settings.html","line":152,"string_id":"7dfdc26f9f79","state":"access"},
3008
3017
  {"key":"L0110","section":"Active sessions","text":"Active sessions","placement":"placed","file":"modules/hall-ui/public/settings.html","line":159,"string_id":"524188fe0078","state":"access"},
3009
3018
  {"key":"L0111","section":"Active sessions","text":"Every place you are currently signed in — this browser, your terminal, any other machine. A session refreshes for another 24 hours each time it is used, so one you have forgotten about can stay alive indefinitely. If a token has leaked, end it here.","placement":"placed","file":"modules/hall-ui/public/settings.html","line":160,"string_id":"c188854da766","state":"access"},
@@ -3069,7 +3078,7 @@
3069
3078
  "surface": "builders",
3070
3079
  "title": "The street",
3071
3080
  "states_read": ["street","fullscreen","card","switched","focus","here","inside-rules","inside-disputes","inside-people","inside-planning","inside-automation","inside-review","inside-release","inside-treasury","floor","amend","district","desk","desk-facts","desk-quiet","desk-people-builders","desk-people-tier","desk-disputes","desk-automation-goals","desk-release-core","desk-rules","desk-planning-priorities","desk-planning-ideas","desk-planning-blockers","pins","pins-pager","sitting","object","voted","admission","settled","blocker","blocker-more","report","report-more","core","core-more","recheck","recheck-more","idea","idea-more","queue","queue-more","automation","automation-more"],
3072
- "files_hash": "ee1197601d2206c6",
3081
+ "files_hash": "f4e7e72dff7a2ec7",
3073
3082
  "reading_hash": "76bd7ae2e1a505b4",
3074
3083
  "counts": {"lines":428,"placed":79,"shared":8,"unplaced":341},
3075
3084
  "omitted": {"data":448},
@@ -3510,7 +3519,7 @@
3510
3519
  "surface": "builders",
3511
3520
  "title": "Studio",
3512
3521
  "states_read": ["home","out","flow","flow-pick","status","words-offer","words-edit","reviews","full","full-back","approvals","approvals-before","approvals-phone","approvals-note","approved","sent-back"],
3513
- "files_hash": "e451ea4e4ba783c0",
3522
+ "files_hash": "66a0fa135fce987c",
3514
3523
  "reading_hash": "218649e3de6ff542",
3515
3524
  "counts": {"lines":31,"placed":15,"shared":7,"unplaced":9},
3516
3525
  "omitted": {"data":2},
@@ -3554,7 +3563,7 @@
3554
3563
  "surface": "builders",
3555
3564
  "title": "Task",
3556
3565
  "states_read": ["record","from-goal","missing"],
3557
- "files_hash": "544dfe4e7e90d531",
3566
+ "files_hash": "8a336ead0241b500",
3558
3567
  "reading_hash": "2a4291c322b10eec",
3559
3568
  "counts": {"lines":133,"placed":34,"shared":11,"unplaced":88},
3560
3569
  "omitted": {"data":67},
@@ -3700,7 +3709,7 @@
3700
3709
  "surface": "builders",
3701
3710
  "title": "Your thinking",
3702
3711
  "states_read": ["tour","sky","list","simple","full-idea","full","full-list","full-back","out"],
3703
- "files_hash": "cd79b85c4bba3cbd",
3712
+ "files_hash": "d6bd3bc3d4160fc9",
3704
3713
  "reading_hash": "4882e63ec588402d",
3705
3714
  "counts": {"lines":50,"placed":24,"shared":8,"unplaced":18},
3706
3715
  "omitted": {"data":6},
@@ -3763,7 +3772,7 @@
3763
3772
  "surface": "builders",
3764
3773
  "title": "Tweak a page",
3765
3774
  "states_read": ["doc","typed","chrome","submitted","picking","out"],
3766
- "files_hash": "464d44fbde16bd8c",
3775
+ "files_hash": "991731940e942e13",
3767
3776
  "reading_hash": "7d311833361923c2",
3768
3777
  "counts": {"lines":24,"placed":15,"shared":1,"unplaced":8},
3769
3778
  "omitted": {"data":34},
@@ -3800,7 +3809,7 @@
3800
3809
  "surface": "builders",
3801
3810
  "title": "Watch",
3802
3811
  "states_read": ["board","out","operations","security"],
3803
- "files_hash": "8a1dc87ecda852af",
3812
+ "files_hash": "cc5f07027b70dacc",
3804
3813
  "reading_hash": "d2d6b075e14c0ad2",
3805
3814
  "counts": {"lines":74,"placed":27,"shared":9,"unplaced":38},
3806
3815
  "omitted": {"data":52},
@@ -3887,7 +3896,7 @@
3887
3896
  "surface": "builders",
3888
3897
  "title": "Tasks",
3889
3898
  "states_read": ["ready","in-progress","backlog","completed","filters-open","out","founding"],
3890
- "files_hash": "ad8d7940065df9f8",
3899
+ "files_hash": "9386974cd25c7300",
3891
3900
  "reading_hash": "d2ba9ba07118a541",
3892
3901
  "counts": {"lines":192,"placed":55,"shared":9,"unplaced":128},
3893
3902
  "omitted": {"data":259},