@bongos/core 1.21.40 → 1.21.42

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 (80) hide show
  1. package/.bongos-core.json +136 -76
  2. package/clients/bongos-client/README.md +1 -1
  3. package/clients/bongos-client/bongos-client.global.js +16 -0
  4. package/clients/bongos-client/index.cjs +16 -0
  5. package/clients/bongos-client/index.d.ts +25 -0
  6. package/clients/bongos-client/index.mjs +16 -0
  7. package/docs/api/openapi.json +492 -3
  8. package/docs/api-reference.md +13 -1
  9. package/docs/copy-inventory.md +29 -12
  10. package/docs/copy-registry.json +177 -14
  11. package/docs/file-map.md +1 -0
  12. package/docs/module-api-changelog.md +4 -0
  13. package/docs/page-inventory.json +4 -2
  14. package/docs/page-readings.json +574 -547
  15. package/modules/autonomy/governor-docket.js +6 -1
  16. package/modules/hall-ui/public/atlas.html +3 -3
  17. package/modules/hall-ui/public/blockers.html +3 -3
  18. package/modules/hall-ui/public/board-room.html +3 -3
  19. package/modules/hall-ui/public/city.html +3 -3
  20. package/modules/hall-ui/public/collab.html +3 -3
  21. package/modules/hall-ui/public/commands.html +3 -3
  22. package/modules/hall-ui/public/copy-desk.html +3 -3
  23. package/modules/hall-ui/public/craft-mode.js +62 -0
  24. package/modules/hall-ui/public/deploy.html +3 -3
  25. package/modules/hall-ui/public/diagrams.html +3 -3
  26. package/modules/hall-ui/public/drachmae.html +3 -3
  27. package/modules/hall-ui/public/fleet.html +3 -3
  28. package/modules/hall-ui/public/gate.html +3 -3
  29. package/modules/hall-ui/public/goal-map.html +3 -3
  30. package/modules/hall-ui/public/goals.html +3 -3
  31. package/modules/hall-ui/public/government.html +3 -3
  32. package/modules/hall-ui/public/idea.html +3 -3
  33. package/modules/hall-ui/public/ideas.html +3 -3
  34. package/modules/hall-ui/public/index.html +3 -3
  35. package/modules/hall-ui/public/modules.html +3 -3
  36. package/modules/hall-ui/public/page-notes.js +320 -0
  37. package/modules/hall-ui/public/primer.html +3 -3
  38. package/modules/hall-ui/public/profile.html +3 -3
  39. package/modules/hall-ui/public/project-settings.html +3 -3
  40. package/modules/hall-ui/public/ranks.html +3 -3
  41. package/modules/hall-ui/public/roadmap.html +3 -3
  42. package/modules/hall-ui/public/roster.html +3 -3
  43. package/modules/hall-ui/public/sessions.html +3 -3
  44. package/modules/hall-ui/public/settings.html +3 -3
  45. package/modules/hall-ui/public/street-card.css +13 -0
  46. package/modules/hall-ui/public/street-card.js +61 -9
  47. package/modules/hall-ui/public/street-card.states.json +72 -0
  48. package/modules/hall-ui/public/street.html +3 -3
  49. package/modules/hall-ui/public/studio.html +3 -3
  50. package/modules/hall-ui/public/style.css +144 -0
  51. package/modules/hall-ui/public/task.html +3 -3
  52. package/modules/hall-ui/public/thinking.html +3 -3
  53. package/modules/hall-ui/public/tweak-editor.html +3 -3
  54. package/modules/hall-ui/public/watch.html +3 -3
  55. package/modules/hall-ui/public/work.html +3 -3
  56. package/modules/hall-ui/records/governor-street.md +1 -0
  57. package/modules/hall-ui/records/page-notes.md +16 -0
  58. package/modules/page-notes/CLAUDE.md +15 -0
  59. package/modules/page-notes/db.js +147 -0
  60. package/modules/page-notes/migrations/page_notes_001_notes.sql +68 -0
  61. package/modules/page-notes/module.json +13 -0
  62. package/modules/page-notes/notes.js +174 -0
  63. package/modules/page-notes/routes/page-notes.js +172 -0
  64. package/modules/page-notes/split.js +68 -0
  65. package/modules/provisioning/starter-bundles.js +1 -0
  66. package/modules/ui-design/kit/serve.js +1 -1
  67. package/package-lock.json +2 -2
  68. package/package.json +1 -1
  69. package/release-notes.json +12 -0
  70. package/scripts/gds/publish-manifest.js +1 -0
  71. package/src/bongos/module-scope-map.js +4 -0
  72. package/src/bongos/routes.js +4 -1
  73. package/src/module-api.js +1 -1
  74. package/tests/governor_docket.mjs +3 -1
  75. package/tests/hall_matter_card.mjs +71 -0
  76. package/tests/hall_tweak_editor.mjs +1 -1
  77. package/tests/module_loader.mjs +1 -1
  78. package/tests/page_notes.mjs +289 -0
  79. package/tests/page_notes_db.mjs +140 -0
  80. package/tests/page_notes_panel.mjs +145 -0
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Bongos API reference
4
4
 
5
- > **Generated from the live route files** — the route file is authoritative. 503 endpoints across 92 route files.
5
+ > **Generated from the live route files** — the route file is authoritative. 510 endpoints across 93 route files.
6
6
  > Machine-readable spec: [`docs/api/openapi.json`](api/openapi.json) (OpenAPI 3.1). Rendered docs site: **`/docs`** (e.g. `cloudbongos.com/docs`).
7
7
 
8
8
  Base path: `/api/bongos`. Ranks (enforced server-side, [ADR 0016](adr/0016-trust-boundary-server-enforced-permissions.md)): `public` < `any-builder` < `metic+archon` < `archon`.
@@ -573,6 +573,18 @@ Base path: `/api/bongos`. Ranks (enforced server-side, [ADR 0016](adr/0016-trust
573
573
  | GET | `/api/bongos/override-requests` | `metic+archon` | — | GET /override-requests?status=open — Archon queue. |
574
574
  | POST | `/api/bongos/override-requests/:id/decide` | `metic+archon` | `decision`, `note` | POST /override-requests/:id/decide — body: { decision: 'approve'\|'deny', note? } On approve, atomically flips the task completed→confirme… |
575
575
 
576
+ ## `page-notes` (7)
577
+
578
+ | Method | Path | Rank | Body | Description |
579
+ |---|---|---|---|---|
580
+ | GET | `/api/bongos/page-notes` | `any-builder` | — | |
581
+ | POST | `/api/bongos/page-notes` | `any-builder` | `page_id`, `page_path`, `page_title` | |
582
+ | GET | `/api/bongos/page-notes/:id` | `any-builder` | — | |
583
+ | PATCH | `/api/bongos/page-notes/:id` | `any-builder` | `body_md` | |
584
+ | POST | `/api/bongos/page-notes/:id/images` | `any-builder` | `content_type`, `data`, `name` | |
585
+ | POST | `/api/bongos/page-notes/:id/submit` | `any-builder` | — | |
586
+ | GET | `/api/bongos/page-notes/images/:id` | `any-builder` | — | |
587
+
576
588
  ## `profiles` (1)
577
589
 
578
590
  | Method | Path | Rank | Body | Description |
@@ -4,13 +4,13 @@
4
4
  > Deterministic on a given tree — regenerate and commit rather than hand-editing.
5
5
  > Machine-readable twin: [`copy-registry.json`](copy-registry.json).
6
6
 
7
- **2424 strings** across 3 surfaces · 2107 distinct pieces of copy · 2424 certain, 0 heuristic · 220 shown in more than one place.
7
+ **2441 strings** across 3 surfaces · 2123 distinct pieces of copy · 2441 certain, 0 heuristic · 221 shown in more than one place.
8
8
 
9
9
  ## Surfaces
10
10
 
11
11
  | surface | lives at | files | strings |
12
12
  |---|---|---|---|
13
- | `builders-hall` | `modules/hall-ui/public` | 131 | 1775 |
13
+ | `builders-hall` | `modules/hall-ui/public` | 132 | 1792 |
14
14
  | `status-dashboard` | `modules/status-ui/public` | 4 | 100 |
15
15
  | `landing` | `modules/public-landing/public` | 6 | 549 |
16
16
 
@@ -76,9 +76,9 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
76
76
  | `a061df49e6cb` | 3x | Skip to content | modules/public-landing/public/account.html:88, modules/public-landing/public/index.html:650, modules/public-landing/public/projects.html:687 |
77
77
  | `2ae36be1c531` | 3x | Start a project | modules/public-landing/public/index.html:730, modules/public-landing/public/index.html:894, modules/public-landing/public/projects.html:808 |
78
78
  | `2287c62afcdd` | 3x | The street | modules/hall-ui/public/street.html:54, modules/hall-ui/public/street.html:54, modules/hall-ui/public/street.html:97 |
79
- | … | | _180 more in the JSON registry_ | |
79
+ | … | | _181 more in the JSON registry_ | |
80
80
 
81
- ## `builders-hall` — 1775 strings
81
+ ## `builders-hall` — 1792 strings
82
82
 
83
83
  | id | conf | text | where |
84
84
  |---|---|---|---|
@@ -147,6 +147,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
147
147
  | `524188fe0078` | certain | Active sessions | `modules/hall-ui/public/settings.html:159` |
148
148
  | `d628b36ec58e` | certain | Activity, by role | `modules/hall-ui/public/profile.html:137` |
149
149
  | `2b94171ce525` | certain | Add dependency | `modules/hall-ui/public/task.js:592` |
150
+ | `a70b72ec4dcc` | certain | Add images | `modules/hall-ui/public/page-notes.js:97` |
150
151
  | `da8659b0099b` | certain | Add something you wrote — notes, a standard, a worked example. It is indexed for recall, not pasted into every | `modules/hall-ui/public/settings-specialities.js:354` |
151
152
  | `82a8bd77d374` | certain | Add these ranks | `modules/hall-ui/public/government.js:891` |
152
153
  | `eded707fab69` | certain | Add to what it knows | `modules/hall-ui/public/settings-specialities.js:354` |
@@ -182,10 +183,10 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
182
183
  | `206acb4467a2` | certain | Archive this goal? | `modules/hall-ui/public/goals-render.js:1035` |
183
184
  | `d9dd46194f35` | certain | Argue from mechanism, not vibes. Always name the assumption a number rests on. | `modules/hall-ui/public/settings.html:270` |
184
185
  | `4d3b1bcae3eb` | certain | Artist Review Status | `modules/hall-ui/public/studio.html:125` |
185
- | `4a9385eeab33` | certain | Artists start on Artistry. | `modules/hall-ui/public/craft-mode.js:292` |
186
+ | `4a9385eeab33` | certain | Artists start on Artistry. | `modules/hall-ui/public/craft-mode.js:348` |
186
187
  | `5fcfdf8975cf` | certain | As configuration: | `modules/hall-ui/public/government.js:960` |
187
188
  | `01a0f29ff406` | certain | As first filed | `modules/hall-ui/public/idea.js:467` |
188
- | `fa86bf403775` | certain | Ask me again next session | `modules/hall-ui/public/craft-mode.js:290` |
189
+ | `fa86bf403775` | certain | Ask me again next session | `modules/hall-ui/public/craft-mode.js:346` |
189
190
  | `9b02ba5e6d23` | certain | Asked of others | `modules/hall-ui/public/collab.html:131` |
190
191
  | `688cc6dd38ee` | certain | Asked of you | `modules/hall-ui/public/collab.html:48` |
191
192
  | `688cc6dd38ee` | certain | Asked of you | `modules/hall-ui/public/collab.html:122` |
@@ -206,6 +207,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
206
207
  | `ef2fab4901d6` | certain | Back to tasks | `modules/hall-ui/public/task.js:192` |
207
208
  | `2deb6dd36e58` | certain | Back to the city overview | `modules/hall-ui/public/street.html:66` |
208
209
  | `28d8d79c4f21` | certain | Backend-only: nothing to record. Check it the way it can be checked (a log, a report, a test against the live | `modules/hall-ui/public/criterion-uat-ui.js:147` |
210
+ | `02d9d01d5c8b` | certain | Being split into ideas… | `modules/hall-ui/public/page-notes.js:137` |
209
211
  | `5a2b73968b36` | certain | Blocker # | `modules/hall-ui/public/blockers.js:364` |
210
212
  | `5a2b73968b36` | certain | Blocker # | `modules/hall-ui/public/blockers.js:368` |
211
213
  | `5a2b73968b36` | certain | Blocker # | `modules/hall-ui/public/blockers.js:371` |
@@ -223,7 +225,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
223
225
  | `da910fee01d7` | certain | Browse goals → | `modules/hall-ui/public/goals.js:83` |
224
226
  | `1596210cea76` | certain | Build from your own machine — clone the repository, run the platform locally, and sign in from the terminal. | `modules/hall-ui/public/hall-render.js:810` |
225
227
  | `08bfcc9198ba` | certain | Builder id | `modules/hall-ui/public/government.html:109` |
226
- | `fd1903586e8e` | certain | Builders hall · this session | `modules/hall-ui/public/craft-mode.js:285` |
228
+ | `fd1903586e8e` | certain | Builders hall · this session | `modules/hall-ui/public/craft-mode.js:341` |
227
229
  | `306bc316184d` | certain | Builders you may know | `modules/hall-ui/public/profile-connections.js:158` |
228
230
  | `60b248791dc3` | certain | Builders — {{worldName}} | `modules/hall-ui/public/roster.html:6` |
229
231
  | `60b248791dc3` | certain | Builders — {{worldName}} | `modules/hall-ui/public/roster.html:6` |
@@ -269,7 +271,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
269
271
  | `6bf684ebc1c3` | certain | Choose the skills for {…} | `modules/hall-ui/public/settings-specialities.js:180` |
270
272
  | `2b504633779f` | certain | Choose which goals your own runner works while you are away. You can only choose from the goals the project al | `modules/hall-ui/public/settings.html:182` |
271
273
  | `6c88cdf417f1` | certain | Choose which sound plays for each build event — one when Claude waits for your input, another when a task ship | `modules/hall-ui/public/settings.html:387` |
272
- | `f7d8c25af75d` | certain | Choose your mode | `modules/hall-ui/public/craft-mode.js:203` |
274
+ | `f7d8c25af75d` | certain | Choose your mode | `modules/hall-ui/public/craft-mode.js:259` |
273
275
  | `b7d5648b66db` | certain | Claim it | `modules/hall-ui/public/task.js:714` |
274
276
  | `b7d5648b66db` | certain | Claim it | `modules/hall-ui/public/task.js:843` |
275
277
  | `c10806b50c61` | certain | Claim task {…} | `modules/hall-ui/public/builders.js:973` |
@@ -287,7 +289,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
287
289
  | `d12a2fb5730d` | certain | Close this flag | `modules/hall-ui/public/copy-desk.html:116` |
288
290
  | `9b9c2abeae90` | certain | Close this stage | `modules/hall-ui/public/genesis-home.js:209` |
289
291
  | `e6f1842afde1` | certain | Close transcript | `modules/hall-ui/public/sessions.html:99` |
290
- | `29e8c5e30095` | certain | Close without choosing | `modules/hall-ui/public/craft-mode.js:283` |
292
+ | `29e8c5e30095` | certain | Close without choosing | `modules/hall-ui/public/craft-mode.js:339` |
291
293
  | `3d148e19e03a` | certain | Closed. | `modules/hall-ui/public/copy-desk.js:510` |
292
294
  | `2654dc3ded21` | certain | Closing is a judgement too — say what you decided, so the next person does not re-litigate it. | `modules/hall-ui/public/copy-desk.js:495` |
293
295
  | `e5548861ad79` | certain | Coach the grader | `modules/hall-ui/public/studio.js:211` |
@@ -659,7 +661,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
659
661
  | `7c9b7a89353b` | certain | Leave goal | `modules/hall-ui/public/goals-render.js:967` |
660
662
  | `6137d2679912` | certain | Leave it off | `modules/hall-ui/public/settings-specialities.js:138` |
661
663
  | `f192ff6563f9` | certain | Leave your GitHub username and an Archon will let you in. No coding needed to start — once you're approved, si | `modules/hall-ui/public/hall-render.js:297` |
662
- | `cb6199ba00a0` | certain | Legacy mode · the hall as it was | `modules/hall-ui/public/craft-mode.js:293` |
664
+ | `cb6199ba00a0` | certain | Legacy mode · the hall as it was | `modules/hall-ui/public/craft-mode.js:349` |
663
665
  | `e14ebcf3eec5` | certain | Legislation has passed. Genesis is complete. | `modules/hall-ui/public/genesis-home.js:191` |
664
666
  | `d6a78b9e5368` | certain | Let it be for now | `modules/hall-ui/public/studio.js:233` |
665
667
  | `d6a78b9e5368` | certain | Let it be for now | `modules/hall-ui/public/studio.js:248` |
@@ -791,6 +793,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
791
793
  | `d5cf262e671d` | certain | Nobody is writing this page. Take it, and every line here is yours to type over. | `modules/hall-ui/public/tweak-editor.js:314` |
792
794
  | `91c409a4aea5` | certain | Nobody vouched for this name — anyone can file a request naming anyone. Confirm who is asking before you admit | `modules/hall-ui/public/watch.js:397` |
793
795
  | `4016b9cf8d57` | certain | None of your asks have been settled yet. | `modules/hall-ui/public/collab.html:134` |
796
+ | `36c97d6094bf` | certain | None yet. Yours will be the first. | `modules/hall-ui/public/page-notes.js:120` |
794
797
  | `fdfceec7ff97` | certain | Not backend-only | `modules/hall-ui/public/criterion-uat-ui.js:84` |
795
798
  | `428a62539050` | certain | Not checked yet — the runner takes this reading on its own tick. | `modules/hall-ui/public/deploy.js:458` |
796
799
  | `c72e0bdb834a` | certain | Not declared in module.json — this is who ships the module. | `modules/hall-ui/public/modules.js:62` |
@@ -862,8 +865,11 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
862
865
  | `f6f68ba322be` | certain | Open {…} | `modules/hall-ui/public/goal-inbox.js:53` |
863
866
  | `f6f68ba322be` | certain | Open {…} | `modules/hall-ui/public/goal-inbox.js:69` |
864
867
  | `f6f68ba322be` | certain | Open {…} | `modules/hall-ui/public/goals.js:67` |
868
+ | `35d46f963cd1` | certain | Opening the doc… | `modules/hall-ui/public/page-notes.js:256` |
865
869
  | `7a8dfadb7468` | certain | Opening the rendered page… | `modules/hall-ui/public/approval-queue.js:129` |
866
870
  | `62e75a9d0af4` | certain | Opening the reviews… | `modules/hall-ui/public/studio.html:159` |
871
+ | `94f3d9f46098` | certain | Opening your doc… | `modules/hall-ui/public/page-notes.js:89` |
872
+ | `94f3d9f46098` | certain | Opening your doc… | `modules/hall-ui/public/page-notes.js:273` |
867
873
  | `a2bd76ae030d` | certain | Opens this project's upgrade{…}: you see what would move, confirm it, and it installs, checks itself, and roll | `modules/hall-ui/public/settings-software-update.js:85` |
868
874
  | `569980a263ae` | certain | Optional. This is the ledger link — a copy change ships as a task like every other change. | `modules/hall-ui/public/copy-desk.html:130` |
869
875
  | `f2e9e8f21e8e` | certain | Or add someone without asking… | `modules/hall-ui/public/goals-render.js:1264` |
@@ -883,7 +889,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
883
889
  | `e1e10dc5e357` | certain | Permissions is the Archon administration surface. The Constitution and the Board Room are yours to read. | `modules/hall-ui/public/government.js:1030` |
884
890
  | `6bc03d97457b` | certain | Pick a priority first. | `modules/hall-ui/public/task.js:900` |
885
891
  | `fcf996d77050` | certain | Pick a rank to see what it may do. The four ladder ranks ship with the platform; a custom rank is yours to sha | `modules/hall-ui/public/government.html:76` |
886
- | `4f87d5b17b54` | certain | Pick one. You can switch any time from the top bar. | `modules/hall-ui/public/craft-mode.js:287` |
892
+ | `4f87d5b17b54` | certain | Pick one. You can switch any time from the top bar. | `modules/hall-ui/public/craft-mode.js:343` |
887
893
  | `45378ea261f6` | certain | Pick one… | `modules/hall-ui/public/settings.html:257` |
888
894
  | `25815a34d246` | certain | Plain speech | `modules/hall-ui/public/sessions.html:78` |
889
895
  | `07d7e62640d6` | certain | Post &amp; resolve | `modules/hall-ui/public/collab.js:170` |
@@ -1103,6 +1109,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
1103
1109
  | `490f4bbbc75b` | certain | Sounds are switched off for now. Nothing plays when a task ships, when {{currency}} arrive, or when Claude fin | `modules/hall-ui/public/settings.html:361` |
1104
1110
  | `d03aa6752970` | certain | Specialities this project recommends. Nothing here is switched on — read what each one adds to your sessions, | `modules/hall-ui/public/settings-specialities.js:384` |
1105
1111
  | `01f1d2b03eb4` | certain | Speciality created. | `modules/hall-ui/public/settings-specialities.js:554` |
1112
+ | `aee9d47c6b99` | certain | Splitting your feedback into ideas… | `modules/hall-ui/public/page-notes.js:222` |
1106
1113
  | `f2a4d855d82d` | certain | Stale claims | `modules/hall-ui/public/watch.html:48` |
1107
1114
  | `6d4a7bf5ab0e` | certain | Stale timer is now {…} days. | `modules/hall-ui/public/project-settings.js:176` |
1108
1115
  | `98d037e427b8` | certain | Stale — describes something that changed | `modules/hall-ui/public/copy-desk.html:92` |
@@ -1112,6 +1119,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
1112
1119
  | `eaad12cacb9d` | certain | Start over | `modules/hall-ui/public/studio.js:264` |
1113
1120
  | `b01258e8242a` | certain | Starting government | `modules/hall-ui/public/genesis-home.js:131` |
1114
1121
  | `efe530c0e3a7` | certain | Still open | `modules/hall-ui/public/profile.js:568` |
1122
+ | `92f87ca38190` | certain | Still splitting. It will appear in this page's docs when it is done. | `modules/hall-ui/public/page-notes.js:232` |
1115
1123
  | `490a3cbb8c1c` | certain | Still working on core {…}. It keeps going without this page — reload to see where it got to. | `modules/hall-ui/public/deploy.js:764` |
1116
1124
  | `9a4ced1afb6c` | certain | Stop waiting on task {…} | `modules/hall-ui/public/task.js:250` |
1117
1125
  | `b0861c874a2f` | certain | Stopped using it. | `modules/hall-ui/public/settings-specialities.js:457` |
@@ -1176,6 +1184,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
1176
1184
  | `325daac25a9a` | certain | The day the sky is drawn for | `modules/hall-ui/public/goal-map.html:127` |
1177
1185
  | `325daac25a9a` | certain | The day the sky is drawn for | `modules/hall-ui/public/thinking.html:128` |
1178
1186
  | `bac12faf3328` | certain | The developmental ladder: {…}. Formality is adopted only where informal coordination breaks. | `modules/hall-ui/public/government.js:816` |
1187
+ | `51633ea53205` | certain | The doc is now this page's reference. Every idea links back to it. | `modules/hall-ui/public/page-notes.js:142` |
1179
1188
  | `239d641c20fa` | certain | The document | `modules/hall-ui/public/settings-specialities.js:354` |
1180
1189
  | `ffaa4df90f66` | certain | The editor could not load. | `modules/hall-ui/public/tweak-editor.js:712` |
1181
1190
  | `6e2554615883` | certain | The event sounds could not be loaded. Reload the page to try again. | `modules/hall-ui/public/settings.js:391` |
@@ -1289,6 +1298,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
1289
1298
  | `9a685b01e2c6` | certain | This page opens at a higher rank. | `modules/hall-ui/public/project-settings.html:36` |
1290
1299
  | `9a685b01e2c6` | certain | This page opens at a higher rank. | `modules/hall-ui/public/watch.html:40` |
1291
1300
  | `e7a289134dc3` | certain | This page shows no words the reader could find. | `modules/hall-ui/public/tweak-editor.js:246` |
1301
+ | `d4b3b5556986` | certain | This page's reference docs | `modules/hall-ui/public/page-notes.js:113` |
1292
1302
  | `5bdcbec770dd` | certain | This project has no slash commands yet. | `modules/hall-ui/public/commands.js:38` |
1293
1303
  | `fcd43f045614` | certain | This project is upgraded on the server that runs it: | `modules/hall-ui/public/settings-software-update.js:76` |
1294
1304
  | `3c8aaec39c40` | certain | This project's code expects {…} database change{…} that its database has not applied yet. Anything that relies | `modules/hall-ui/public/deploy.js:582` |
@@ -1308,6 +1318,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
1308
1318
  | `becc35640e42` | certain | Trained on | `modules/hall-ui/public/settings-specialities.js:322` |
1309
1319
  | `1bb6c792ceb9` | certain | Try again | `modules/hall-ui/public/deploy.js:268` |
1310
1320
  | `b50089eda0a4` | certain | Try now | `modules/hall-ui/public/deploy.js:217` |
1321
+ | `1edc39bc7120` | certain | Turn into ideas | `modules/hall-ui/public/page-notes.js:107` |
1311
1322
  | `26ec8100bc6f` | certain | Turn it on | `modules/hall-ui/public/settings-specialities.js:138` |
1312
1323
  | `72a29648399b` | certain | Tweak a page | `modules/hall-ui/public/tweak-editor.html:32` |
1313
1324
  | `72a29648399b` | certain | Tweak a page | `modules/hall-ui/public/tweak-editor.html:32` |
@@ -1357,7 +1368,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
1357
1368
  | `c1fcfa9b48c2` | certain | Watch — {{worldName}} | `modules/hall-ui/public/watch.html:6` |
1358
1369
  | `0658f0358ffd` | certain | Welcome back, {…}. | `modules/hall-ui/public/hall-render.js:600` |
1359
1370
  | `04ef2f1bc4c4` | certain | Welcome, {…}. Claim and release tasks and follow work in progress — no terminal needed. | `modules/hall-ui/public/work.js:922` |
1360
- | `60853319f290` | certain | What are you doing now? | `modules/hall-ui/public/craft-mode.js:286` |
1371
+ | `60853319f290` | certain | What are you doing now? | `modules/hall-ui/public/craft-mode.js:342` |
1361
1372
  | `d6bae87dc29b` | certain | What builders will see | `modules/hall-ui/public/government.html:86` |
1362
1373
  | `f3d93a872a38` | certain | What counts | `modules/hall-ui/public/drachmae.js:107` |
1363
1374
  | `6bf049a0c943` | certain | What each project costs | `modules/hall-ui/public/fleet.html:35` |
@@ -1375,6 +1386,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
1375
1386
  | `00dc1f0f83e1` | certain | What kind of wrong? | `modules/hall-ui/public/copy-desk.html:87` |
1376
1387
  | `c9a4c6f16433` | certain | What needs changing | `modules/hall-ui/public/approval-queue.js:174` |
1377
1388
  | `9a85f2c19b48` | certain | What should it say? | `modules/hall-ui/public/copy-desk.html:156` |
1389
+ | `7c765a4209d1` | certain | What should this page be? | `modules/hall-ui/public/page-notes.js:85` |
1378
1390
  | `2dd116d2d817` | certain | What the current wording gets wrong, and what yours does about it. | `modules/hall-ui/public/copy-desk.html:166` |
1379
1391
  | `e179870922a3` | certain | What the session did, derived from its own transcript: whether it wrote files, used tools, and how many prompt | `modules/hall-ui/public/sessions.html:74` |
1380
1392
  | `868cf4bbe616` | certain | What the start-it markers mean | `modules/hall-ui/public/commands.html:35` |
@@ -1389,6 +1401,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
1389
1401
  | `ecfd34bf5e6f` | certain | What’s stuck (optional) | `modules/hall-ui/public/blockers.js:308` |
1390
1402
  | `a6e102816e92` | certain | When to reach for it | `modules/hall-ui/public/commands-lib.js:100` |
1391
1403
  | `a6e102816e92` | certain | When to reach for it | `modules/hall-ui/public/settings-specialities.js:130` |
1404
+ | `8320f40edc52` | certain | When you submit, an AI splits this into separate ideas, filed under your name. The doc stays here as this page | `modules/hall-ui/public/page-notes.js:106` |
1392
1405
  | `5d73558dae0e` | certain | Where do you begin? | `modules/hall-ui/public/goal-map.html:110` |
1393
1406
  | `5d73558dae0e` | certain | Where do you begin? | `modules/hall-ui/public/goal-map.html:112` |
1394
1407
  | `ec1a438eee3f` | certain | Where each comes from and where each goes. {{Currency}} = credits; karma is a separate peer-trust signal, not | `modules/hall-ui/public/diagrams.html:68` |
@@ -1416,7 +1429,9 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
1416
1429
  | `0e6b8e8f26cc` | certain | Works completed | `modules/hall-ui/public/profile.html:148` |
1417
1430
  | `52e5fe3c6075` | certain | Write a Full Idea | `modules/hall-ui/public/ideas.html:145` |
1418
1431
  | `ad1e1ab1ecac` | certain | Write a reply… | `modules/hall-ui/public/collab.js:175` |
1432
+ | `a79ca1e2463b` | certain | Write another | `modules/hall-ui/public/page-notes.js:143` |
1419
1433
  | `47f61e576454` | certain | Write the wording you want instead. | `modules/hall-ui/public/copy-desk.js:436` |
1434
+ | `a9e68066f26c` | certain | Write what you see on this page and what it should be. Long is fine: each separate point becomes its own idea. | `modules/hall-ui/public/page-notes.js:95` |
1420
1435
  | `b6b0fcb2bcee` | certain | You already have a pending request or invitation for this goal. | `modules/hall-ui/public/goals-render.js:1398` |
1421
1436
  | `52e93bbc07a6` | certain | You are already a member of this goal. | `modules/hall-ui/public/goals-render.js:1399` |
1422
1437
  | `46b1265ef172` | certain | You are not a member of this goal. | `modules/hall-ui/public/goals-render.js:1355` |
@@ -1437,6 +1452,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
1437
1452
  | `f96bc227dba0` | certain | Your choice | `modules/hall-ui/public/settings.html:348` |
1438
1453
  | `44a68d05519e` | certain | Your choices for {…} | `modules/hall-ui/public/settings-specialities.js:152` |
1439
1454
  | `909b0b7c6ffa` | certain | Your display name | `modules/hall-ui/public/settings.html:87` |
1455
+ | `75d3d7bb3c60` | certain | Your feedback | `modules/hall-ui/public/page-notes.js:94` |
1440
1456
  | `dc9cfd1519a4` | certain | Your file was not saved. | `modules/hall-ui/public/tweak-editor.html:122` |
1441
1457
  | `466457c34316` | certain | Your handle, bio and links, whether your profile page is public, whether recruiters can find you, and whether | `modules/hall-ui/public/settings.html:104` |
1442
1458
  | `a47f15b6a33c` | certain | Your image-generation key settings could not be loaded. Reload the page to try again. | `modules/hall-ui/public/settings.js:1038` |
@@ -1842,6 +1858,7 @@ Identical copy within one surface. Sometimes right (a repeated button), sometime
1842
1858
  | `de8fa5223aee` | certain | ‹ Prev | `modules/hall-ui/public/hall-kit.js:74` |
1843
1859
  | `d4b84b7fbdeb` | certain | ← All goals | `modules/hall-ui/public/goals.html:75` |
1844
1860
  | `9159687c73ff` | certain | ← All modules | `modules/hall-ui/public/modules.html:85` |
1861
+ | `d063a7b9c83e` | certain | ← Back | `modules/hall-ui/public/page-notes.js:260` |
1845
1862
  | `7926e30955d2` | certain | ← Back to goal | `modules/hall-ui/public/goals.html:194` |
1846
1863
  | `7926e30955d2` | certain | ← Back to goal | `modules/hall-ui/public/goals.html:205` |
1847
1864
  | `7926e30955d2` | certain | ← Back to goal | `modules/hall-ui/public/goals.html:217` |
@@ -3,17 +3,17 @@
3
3
  "generator": "scripts/gds/copy-inventory.js",
4
4
  "goal": 1000074,
5
5
  "counts": {
6
- "strings": 2424,
7
- "unique_ids": 2107,
8
- "certain": 2424,
6
+ "strings": 2441,
7
+ "unique_ids": 2123,
8
+ "certain": 2441,
9
9
  "heuristic": 0,
10
- "duplicate_ids": 220
10
+ "duplicate_ids": 221
11
11
  },
12
12
  "surfaces": {
13
13
  "builders-hall": {
14
14
  "at": "modules/hall-ui/public",
15
- "files": 131,
16
- "strings": 1775
15
+ "files": 132,
16
+ "strings": 1792
17
17
  },
18
18
  "status-dashboard": {
19
19
  "at": "modules/status-ui/public",
@@ -1405,6 +1405,16 @@
1405
1405
  "modules/hall-ui/public/genesis-home.js:206"
1406
1406
  ]
1407
1407
  },
1408
+ {
1409
+ "id": "94f3d9f46098",
1410
+ "surface": "builders-hall",
1411
+ "text": "Opening your doc…",
1412
+ "occurrences": 2,
1413
+ "at": [
1414
+ "modules/hall-ui/public/page-notes.js:89",
1415
+ "modules/hall-ui/public/page-notes.js:273"
1416
+ ]
1417
+ },
1408
1418
  {
1409
1419
  "id": "5b08da0632c7",
1410
1420
  "surface": "builders-hall",
@@ -2922,6 +2932,15 @@
2922
2932
  "origin": "js-markup",
2923
2933
  "confidence": "certain"
2924
2934
  },
2935
+ {
2936
+ "id": "a70b72ec4dcc",
2937
+ "surface": "builders-hall",
2938
+ "text": "Add images",
2939
+ "file": "modules/hall-ui/public/page-notes.js",
2940
+ "line": 97,
2941
+ "origin": "js-markup",
2942
+ "confidence": "certain"
2943
+ },
2925
2944
  {
2926
2945
  "id": "da8659b0099b",
2927
2946
  "surface": "builders-hall",
@@ -3242,7 +3261,7 @@
3242
3261
  "surface": "builders-hall",
3243
3262
  "text": "Artists start on Artistry.",
3244
3263
  "file": "modules/hall-ui/public/craft-mode.js",
3245
- "line": 292,
3264
+ "line": 348,
3246
3265
  "origin": "js-markup",
3247
3266
  "confidence": "certain"
3248
3267
  },
@@ -3269,7 +3288,7 @@
3269
3288
  "surface": "builders-hall",
3270
3289
  "text": "Ask me again next session",
3271
3290
  "file": "modules/hall-ui/public/craft-mode.js",
3272
- "line": 290,
3291
+ "line": 346,
3273
3292
  "origin": "js-markup",
3274
3293
  "confidence": "certain"
3275
3294
  },
@@ -3453,6 +3472,15 @@
3453
3472
  "origin": "js-markup",
3454
3473
  "confidence": "certain"
3455
3474
  },
3475
+ {
3476
+ "id": "02d9d01d5c8b",
3477
+ "surface": "builders-hall",
3478
+ "text": "Being split into ideas…",
3479
+ "file": "modules/hall-ui/public/page-notes.js",
3480
+ "line": 137,
3481
+ "origin": "js-markup",
3482
+ "confidence": "certain"
3483
+ },
3456
3484
  {
3457
3485
  "id": "5a2b73968b36",
3458
3486
  "surface": "builders-hall",
@@ -3611,7 +3639,7 @@
3611
3639
  "surface": "builders-hall",
3612
3640
  "text": "Builders hall · this session",
3613
3641
  "file": "modules/hall-ui/public/craft-mode.js",
3614
- "line": 285,
3642
+ "line": 341,
3615
3643
  "origin": "js-markup",
3616
3644
  "confidence": "certain"
3617
3645
  },
@@ -4025,7 +4053,7 @@
4025
4053
  "surface": "builders-hall",
4026
4054
  "text": "Choose your mode",
4027
4055
  "file": "modules/hall-ui/public/craft-mode.js",
4028
- "line": 203,
4056
+ "line": 259,
4029
4057
  "origin": "js-markup",
4030
4058
  "confidence": "certain"
4031
4059
  },
@@ -4187,7 +4215,7 @@
4187
4215
  "surface": "builders-hall",
4188
4216
  "text": "Close without choosing",
4189
4217
  "file": "modules/hall-ui/public/craft-mode.js",
4190
- "line": 283,
4218
+ "line": 339,
4191
4219
  "origin": "js-markup",
4192
4220
  "confidence": "certain"
4193
4221
  },
@@ -7535,7 +7563,7 @@
7535
7563
  "surface": "builders-hall",
7536
7564
  "text": "Legacy mode · the hall as it was",
7537
7565
  "file": "modules/hall-ui/public/craft-mode.js",
7538
- "line": 293,
7566
+ "line": 349,
7539
7567
  "origin": "js-markup",
7540
7568
  "confidence": "certain"
7541
7569
  },
@@ -8718,6 +8746,15 @@
8718
8746
  "origin": "html-text",
8719
8747
  "confidence": "certain"
8720
8748
  },
8749
+ {
8750
+ "id": "36c97d6094bf",
8751
+ "surface": "builders-hall",
8752
+ "text": "None yet. Yours will be the first.",
8753
+ "file": "modules/hall-ui/public/page-notes.js",
8754
+ "line": 120,
8755
+ "origin": "js-markup",
8756
+ "confidence": "certain"
8757
+ },
8721
8758
  {
8722
8759
  "id": "fdfceec7ff97",
8723
8760
  "surface": "builders-hall",
@@ -9357,6 +9394,15 @@
9357
9394
  "origin": "js-markup",
9358
9395
  "confidence": "certain"
9359
9396
  },
9397
+ {
9398
+ "id": "35d46f963cd1",
9399
+ "surface": "builders-hall",
9400
+ "text": "Opening the doc…",
9401
+ "file": "modules/hall-ui/public/page-notes.js",
9402
+ "line": 256,
9403
+ "origin": "js-markup",
9404
+ "confidence": "certain"
9405
+ },
9360
9406
  {
9361
9407
  "id": "7a8dfadb7468",
9362
9408
  "surface": "builders-hall",
@@ -9375,6 +9421,24 @@
9375
9421
  "origin": "html-text",
9376
9422
  "confidence": "certain"
9377
9423
  },
9424
+ {
9425
+ "id": "94f3d9f46098",
9426
+ "surface": "builders-hall",
9427
+ "text": "Opening your doc…",
9428
+ "file": "modules/hall-ui/public/page-notes.js",
9429
+ "line": 89,
9430
+ "origin": "js-markup",
9431
+ "confidence": "certain"
9432
+ },
9433
+ {
9434
+ "id": "94f3d9f46098",
9435
+ "surface": "builders-hall",
9436
+ "text": "Opening your doc…",
9437
+ "file": "modules/hall-ui/public/page-notes.js",
9438
+ "line": 273,
9439
+ "origin": "js-markup",
9440
+ "confidence": "certain"
9441
+ },
9378
9442
  {
9379
9443
  "id": "a2bd76ae030d",
9380
9444
  "surface": "builders-hall",
@@ -9551,7 +9615,7 @@
9551
9615
  "surface": "builders-hall",
9552
9616
  "text": "Pick one. You can switch any time from the top bar.",
9553
9617
  "file": "modules/hall-ui/public/craft-mode.js",
9554
- "line": 287,
9618
+ "line": 343,
9555
9619
  "origin": "js-markup",
9556
9620
  "confidence": "certain"
9557
9621
  },
@@ -11526,6 +11590,15 @@
11526
11590
  "origin": "js-notice",
11527
11591
  "confidence": "certain"
11528
11592
  },
11593
+ {
11594
+ "id": "aee9d47c6b99",
11595
+ "surface": "builders-hall",
11596
+ "text": "Splitting your feedback into ideas…",
11597
+ "file": "modules/hall-ui/public/page-notes.js",
11598
+ "line": 222,
11599
+ "origin": "js-markup",
11600
+ "confidence": "certain"
11601
+ },
11529
11602
  {
11530
11603
  "id": "f2a4d855d82d",
11531
11604
  "surface": "builders-hall",
@@ -11607,6 +11680,15 @@
11607
11680
  "origin": "js-markup",
11608
11681
  "confidence": "certain"
11609
11682
  },
11683
+ {
11684
+ "id": "92f87ca38190",
11685
+ "surface": "builders-hall",
11686
+ "text": "Still splitting. It will appear in this page's docs when it is done.",
11687
+ "file": "modules/hall-ui/public/page-notes.js",
11688
+ "line": 232,
11689
+ "origin": "js-markup",
11690
+ "confidence": "certain"
11691
+ },
11610
11692
  {
11611
11693
  "id": "490a3cbb8c1c",
11612
11694
  "surface": "builders-hall",
@@ -12183,6 +12265,15 @@
12183
12265
  "origin": "js-markup",
12184
12266
  "confidence": "certain"
12185
12267
  },
12268
+ {
12269
+ "id": "51633ea53205",
12270
+ "surface": "builders-hall",
12271
+ "text": "The doc is now this page's reference. Every idea links back to it.",
12272
+ "file": "modules/hall-ui/public/page-notes.js",
12273
+ "line": 142,
12274
+ "origin": "js-markup",
12275
+ "confidence": "certain"
12276
+ },
12186
12277
  {
12187
12278
  "id": "239d641c20fa",
12188
12279
  "surface": "builders-hall",
@@ -13200,6 +13291,15 @@
13200
13291
  "origin": "js-markup",
13201
13292
  "confidence": "certain"
13202
13293
  },
13294
+ {
13295
+ "id": "d4b3b5556986",
13296
+ "surface": "builders-hall",
13297
+ "text": "This page's reference docs",
13298
+ "file": "modules/hall-ui/public/page-notes.js",
13299
+ "line": 113,
13300
+ "origin": "js-markup",
13301
+ "confidence": "certain"
13302
+ },
13203
13303
  {
13204
13304
  "id": "5bdcbec770dd",
13205
13305
  "surface": "builders-hall",
@@ -13371,6 +13471,15 @@
13371
13471
  "origin": "js-markup",
13372
13472
  "confidence": "certain"
13373
13473
  },
13474
+ {
13475
+ "id": "1edc39bc7120",
13476
+ "surface": "builders-hall",
13477
+ "text": "Turn into ideas",
13478
+ "file": "modules/hall-ui/public/page-notes.js",
13479
+ "line": 107,
13480
+ "origin": "js-markup",
13481
+ "confidence": "certain"
13482
+ },
13374
13483
  {
13375
13484
  "id": "26ec8100bc6f",
13376
13485
  "surface": "builders-hall",
@@ -13817,7 +13926,7 @@
13817
13926
  "surface": "builders-hall",
13818
13927
  "text": "What are you doing now?",
13819
13928
  "file": "modules/hall-ui/public/craft-mode.js",
13820
- "line": 286,
13929
+ "line": 342,
13821
13930
  "origin": "js-markup",
13822
13931
  "confidence": "certain"
13823
13932
  },
@@ -13974,6 +14083,15 @@
13974
14083
  "origin": "html-text",
13975
14084
  "confidence": "certain"
13976
14085
  },
14086
+ {
14087
+ "id": "7c765a4209d1",
14088
+ "surface": "builders-hall",
14089
+ "text": "What should this page be?",
14090
+ "file": "modules/hall-ui/public/page-notes.js",
14091
+ "line": 85,
14092
+ "origin": "js-markup",
14093
+ "confidence": "certain"
14094
+ },
13977
14095
  {
13978
14096
  "id": "2dd116d2d817",
13979
14097
  "surface": "builders-hall",
@@ -14100,6 +14218,15 @@
14100
14218
  "origin": "js-markup",
14101
14219
  "confidence": "certain"
14102
14220
  },
14221
+ {
14222
+ "id": "8320f40edc52",
14223
+ "surface": "builders-hall",
14224
+ "text": "When you submit, an AI splits this into separate ideas, filed under your name. The doc stays here as this page's reference.",
14225
+ "file": "modules/hall-ui/public/page-notes.js",
14226
+ "line": 106,
14227
+ "origin": "js-markup",
14228
+ "confidence": "certain"
14229
+ },
14103
14230
  {
14104
14231
  "id": "5d73558dae0e",
14105
14232
  "surface": "builders-hall",
@@ -14343,6 +14470,15 @@
14343
14470
  "origin": "js-markup",
14344
14471
  "confidence": "certain"
14345
14472
  },
14473
+ {
14474
+ "id": "a79ca1e2463b",
14475
+ "surface": "builders-hall",
14476
+ "text": "Write another",
14477
+ "file": "modules/hall-ui/public/page-notes.js",
14478
+ "line": 143,
14479
+ "origin": "js-markup",
14480
+ "confidence": "certain"
14481
+ },
14346
14482
  {
14347
14483
  "id": "47f61e576454",
14348
14484
  "surface": "builders-hall",
@@ -14352,6 +14488,15 @@
14352
14488
  "origin": "js-text-assign",
14353
14489
  "confidence": "certain"
14354
14490
  },
14491
+ {
14492
+ "id": "a9e68066f26c",
14493
+ "surface": "builders-hall",
14494
+ "text": "Write what you see on this page and what it should be. Long is fine: each separate point becomes its own idea.",
14495
+ "file": "modules/hall-ui/public/page-notes.js",
14496
+ "line": 95,
14497
+ "origin": "js-markup",
14498
+ "confidence": "certain"
14499
+ },
14355
14500
  {
14356
14501
  "id": "b6b0fcb2bcee",
14357
14502
  "surface": "builders-hall",
@@ -14532,6 +14677,15 @@
14532
14677
  "origin": "html-attr:placeholder",
14533
14678
  "confidence": "certain"
14534
14679
  },
14680
+ {
14681
+ "id": "75d3d7bb3c60",
14682
+ "surface": "builders-hall",
14683
+ "text": "Your feedback",
14684
+ "file": "modules/hall-ui/public/page-notes.js",
14685
+ "line": 94,
14686
+ "origin": "js-markup",
14687
+ "confidence": "certain"
14688
+ },
14535
14689
  {
14536
14690
  "id": "dc9cfd1519a4",
14537
14691
  "surface": "builders-hall",
@@ -18177,6 +18331,15 @@
18177
18331
  "origin": "html-text",
18178
18332
  "confidence": "certain"
18179
18333
  },
18334
+ {
18335
+ "id": "d063a7b9c83e",
18336
+ "surface": "builders-hall",
18337
+ "text": "← Back",
18338
+ "file": "modules/hall-ui/public/page-notes.js",
18339
+ "line": 260,
18340
+ "origin": "js-markup",
18341
+ "confidence": "certain"
18342
+ },
18180
18343
  {
18181
18344
  "id": "7926e30955d2",
18182
18345
  "surface": "builders-hall",
package/docs/file-map.md CHANGED
@@ -114,6 +114,7 @@
114
114
  │ ├── hall-ui/ ← CORE-DOMAIN WEB-SURFACE carve (BV1.R85, default-on): the authenticated builders' hall at builders.<apex>, moved from public-builders/ (~13k LOC, the largest). NO routes/db/port — declares contributes.webSurfaces:[{host:"builders.",dir:"public"}] for discovery, but UNLIKE status-ui keeps its DEDICATED serving block in serve-internal (the /builders shim + canonical redirects + citizen/Archon page gates + asset-stamping + hall-widget injection), partitioned out of the generic web-surface loop and served from BUILDERS_DIR. CLAUDE.md, module.json, records/ (one file per page family — what each family's redesign settled; CLAUDE.md points at them, and a new record is a new file there so concurrent hall tasks stop colliding on one insertion point, task 1003499), public/{index.html,builders.js,style.css,work,watch,gate,settings,ranks,sessions,primer,diagrams,atlas,...}.{html,js},cursors/,chime.wav. Four ARCHETYPE sheets sit beside the per-page ones: `record.css` (the task + idea records, task 1003305), `room.css` (the READING ROOMS — the primer + the diagrams index, task 1003306: the reading measure and rhythm, the table of contents, the progress hairline and the framed figure diagram-viewer.js upgrades on both pages), `oversight.css` (the OVERSIGHT family — government, watch, gate, task 1003469 (harbor was its fourth until task 1003890 removed the dev box): the row, the figure band inside a panel, the group head, the inline form, the grant toggle and the shared confirm modal; named oversight because the vocabulary wall bans "governance" on the government surface) and `panel.css` (the PANEL family — settings, profile, task 1003308 (pair was its third until task 1003890 removed the dev box): the row, the switch, the field with its label above, the chip control, the four voices and the sign-in gate; the hall's my-projects page was DELETED in the same task — "my projects" is the hub's user-level page, and the hall keeps no link or redirect; the family's fourth page `not-ready.html` was deleted by task 1003450, along with the emptied `requireNonXenosPage` gate that was the only thing redirecting to it). A page sheet then holds only what one page has and the others do not — `primer.css` the acknowledge gate, `diagrams.css` the legend strip, `gate.css` the hold reasons and file chips, `watch.css` the severities, the report reader and the grade trend, `settings.css` the rail layout, the group head, the token ladder and the voices grid, `profile.css` the identity band and the shelf, `roster.css` the Builders roster's identity cell (was `people.css`, shared with the cross-project `/people` directory until task 1003444 deleted that page — `/people` and its legacy door `/scouting` now 302 to `/roster`), `thinking.css` THE SKY's one sheet (task 1004231 / sky part 3 — `thinking.html` at `/thinking` is the prototype the owner adopted as the design of record, `docs/design/mocks/sky/`, built over `GET /sky` + `GET /sky/mine`; its script is the seven `sky-*.js` files on one shared `window.OTBSky`; it replaced THE ROOM of task 1004098, which survives as the list drawer, and the old `/sky` page, whose URL 301s here; `idea-objects.js` beside it is the shared five-object vocabulary).
115
115
  │ ├── lifecycle/ ← CORE-DOMAIN carve (BV1.R86, default-on): the build state machine — tasks · claims · versions · done-when · goals · dependencies · claim→ship→grade→credit · github-push + merge-lock + conflict-resolve + publish-reconciler. The LAST, most-coupled carve; registers the `lifecycle` kernel port (createTask, classifyTaskKind, tallyPeerVotes, work-tracking reads). CLAUDE.md, module.json, routes/{tasks,claims,versions,done-when,goals,dependencies,gate-approvals,analytics}.js, lifecycle.js, github-push.js, merge-lock.js, conflict-resolve.js, publish-reconciler.js, task-visuals.js + task-visual-db.js + routes/visuals.js (the optional ship-time visual, task 1003109 — the route file is NOT named task-*.js on purpose; see the module CLAUDE.md).
116
116
  │ ├── copy-desk/ ← CORE-DOMAIN module (task 1003113 / R02 of goal 1000074, default-on): the COPY half of the design contract — ADR 0081 gave design TOKENS a repo-owned source of truth, text had none. Owns the FLAG (anyone in any role marks a string or a whole surface as needing an artist's attention, with a reason required in BOTH the route and a CHECK constraint) and the QUEUE an artist reads it from. READS R01's committed registry (docs/copy-registry.json, generated by scripts/gds/copy-inventory.js) and never writes it. NO LIVE CMS is the hard non-goal: no column here could hold replacement text, and copy_no_cms.mjs pins that. Key is `copy-desk`, not `copy` — the branding contract already owns a `copy` block, so the bare word reds the "core carries no module code" fitness check. R03 (task 1003114, ADR 0233) added the PROPOSAL: an artist writes the replacement wording and it becomes a Bongos task carrying a fenced copy-proposal patch — no row, NO second migration (a proposals table is the forbidden column with extra steps), and scripts/gds/copy-apply.js lands it as a real diff under a claim. BV2.TW05 (task 1004316, ADR 0341 D8) added Tweak Mode's three derived READS — GET /copy-desk/pages, /copy-desk/pages/:pageId, /copy-desk/tally: page status and count, changelog, drift, "N of M tweaked" per surface, and the artist's tally — over the page-tweak tasks (lifecycle port), docs/page-inventory.json and docs/page-readings.json (both now in the publish manifest), with no status table. BV2.TW06 (task 1004317, ADR 0341 D2, D5, D6) added its first two page WRITES: POST /copy-desk/pages/:pageId/claim (an artist-craft builder opens or takes the page's tweak round as a web-claimed task, through the lifecycle port's webClaimPageTweak, under an advisory lock on the page) and POST /copy-desk/pages/:pageId/asks (anyone files a page ask, a copy_desk_flags row with scope 'page', added by copy_desk_002_page_asks.sql). CLAUDE.md, module.json, registry.js, flags.js, proposals.js, pages.js (the page-tweak block format), page-status.js (the pure derivation), page-data.js (the page artifacts' read side), routes/copy-desk.js, migrations/copy_desk_001_flags.sql, migrations/copy_desk_002_page_asks.sql, tests/{copy_flags,copy_queue,copy_no_cms,copy_proposals,copy_page_status}.mjs + tests/fixtures/page-tweak.cjs. Its hall surface lives with hall-ui (public/copy-desk.{html,js,css}), per the one-key-per-web-surface precedent. skills/tweak/SKILL.md is the /tweak skill (contributes.skills; moved out of .claude/skills/ in task 1004471, hidden from the model listing, typed as /tweak).
117
+ │ ├── page-notes/ ← the artist's page feedback docs (task 1004496, default-on): the Artistry palette button's store. A doc about one hall page, with up to eight reference images (stored in the DB, images only), turned into ideas by an AI split on submit and kept as the page's reference (?note=N). Apart from copy-desk, which may hold no wording. module.json, CLAUDE.md, notes.js (pure), split.js, db.js, routes/, migrations/.
117
118
  │ ├── npm-release/ ← the deploy page for a project that publishes an npm package from GitHub (task 1002622, default-OFF — on only in the Bongos hall, which publishes @bongos/core). "Where the work is": every task finished in the last 14 days, placed in the stage it has actually reached (not merged · merged, no version yet · published, not running here · running here, not released · released · in no version), plus the version history — each version's tasks. The version↔task join reads the release-notes.json the package itself carries (scripts/gds/release-notes.js writes it at pack time), streamed out of the NEWEST version's npm tarball in-process (no child process, no sync call) when the running core's own copy stops short. module.json, work.js (the reading + the stage placement — the packument, tarball stream and tar reader it uses are the core's src/bongos/package-registry.js, reached through the doorway's readPackageRegistry since task 1004296), routes/work.js (GET /npm-release/work, gated core.pin.move like the page), public/work.{js,css} (the two sections /deploy lends it: #nr-work, #nr-versions). Task 1004301 added the same line on a task's own page: routes/task-where.js (GET /npm-release/task/:id, any signed-in builder — it shows nothing not already public) + public/task-widget.js, injected into task.html by the loader's uiSections seam (hallWidgetScripts file task-widget.js) to fill #task-contrib on otb:task-shown. Tests sit at the repo root — tests/npm_release_{work,page}.mjs — because a default-off module's own tests/ is skipped by the unit runner.
118
119
  │ ├── render-deploy/ ← the deploy page for a project whose app deploys through Render (task 1004270, default-OFF). The service's Render deploys, each tied to its commit and the Bongos tasks in it, what is live now, and deploy + roll back behind a two-step confirm the server also holds. The owner's Render key is never stored: it rides each request in a header. Uses the one Render client, scripts/gds/render-api.js, and its ownerId guard. `deploys.js` (shaping + ledger), `render.js` (key + client), `routes/` (app, history, act), `public/deploy.js` (the page, mounted in /deploy), `migrations/` (one two-id table)
119
120
  │ ├── ui-design/ ← CORE-DOMAIN module (task 1003324 / ADR 0197, default-on): the design capability every builder on every instance gets — ships METHOD, never a world. Absorbs ADR 0081's layer: adapters/{claude-design,figma}/index.js (moved from src/ui/adapters/), scripts/{design-sync,figma-design-sync,validate-design}.js (moved from scripts/gds/, which keeps thin shims), docs/design-contract.md (moved from docs/). Declaration-only: contributes.skills design (the /design playbook, new) + design-sync + figma-design-sync; no routes/port/migrations, so disabling it touches no served surface. CLAUDE.md separates the platform FLOORS (the Fifteen Rule, the dark twins, no page :root, the 24px floor, AA in both modes, the kill switch) from the instance's WORLD (its packs + DESIGN.md). kit/ (task 1003320) is the look-before-you-ship kit: lib.js (the floors, the states/probes contracts, the action + expectation vocabularies, the WCAG maths, the stub spawner), serve.js (any surface through the doorway's real transforms + fixtures/), render.js (states × 1440/390/320 × dark/light, audited), probe.js (PASS/FAIL contracts), check-mock.js (platform rules + the instance's DESIGN.md taste bans, then the detector), tells.js (task 1003329 / ADR 0223: the anti-pattern detector as two tiers — floors FAIL, craft tells WARN, kit-ignore waivers per file; the rendered twins live in lib.js factsInPage), contrast.js + png.js; a page's <page>.states.json / <page>.probes.json sit BESIDE the surface (modules/public-landing/public/, modules/hall-ui/public/). Recipe: docs/recipes/ui-look-before-you-ship.md. The thirteen design-style skills that lived in skills/ are the opt-in design-styles module since task 1004470 (below); design-taste-frontend-v1 was deleted. styles/ (task 1003323 / ADR 0219) is the style library: <name>/pack.json (the theme.ui overlay, exactly the fifteen) + DESIGN.md (the look's derived recipes, thirteen in lockstep with the pack) + mock.html (the specimen); chrome-world (pinned to the neutral pack), expedition, grove, blueprint (the first cool look, authored through /style at task 1003475); STYLE=<name> on the kit lays a look over the instance's pack through GDS_BRANDING_FILE; tests/ui_design_styles.mjs runs the world/cosmos/hall token suites once per alternate (UI_DESIGN_PACK). config/design-tokens.* + design-sources.json STAY in config/ as the host boundary; public-landing keeps its own key (first customer, not owner).