@bongos/core 1.21.52 → 1.21.54

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 (70) hide show
  1. package/.bongos-core.json +88 -73
  2. package/clients/bongos-client/README.md +1 -1
  3. package/clients/bongos-client/bongos-client.global.js +4 -0
  4. package/clients/bongos-client/index.cjs +4 -0
  5. package/clients/bongos-client/index.d.ts +7 -0
  6. package/clients/bongos-client/index.mjs +4 -0
  7. package/docs/api/openapi.json +135 -3
  8. package/docs/api-reference.md +4 -2
  9. package/docs/copy-inventory.md +23 -11
  10. package/docs/copy-registry.json +142 -13
  11. package/docs/file-map.md +1 -0
  12. package/docs/module-api-changelog.md +4 -0
  13. package/docs/page-readings.json +202 -202
  14. package/modules/hall-ui/public/atlas.html +3 -3
  15. package/modules/hall-ui/public/blockers.html +3 -3
  16. package/modules/hall-ui/public/board-room.html +3 -3
  17. package/modules/hall-ui/public/city.html +3 -3
  18. package/modules/hall-ui/public/collab.html +3 -3
  19. package/modules/hall-ui/public/commands.html +3 -3
  20. package/modules/hall-ui/public/copy-desk.html +3 -3
  21. package/modules/hall-ui/public/craft-mode.js +7 -1
  22. package/modules/hall-ui/public/deploy.html +3 -3
  23. package/modules/hall-ui/public/diagrams.html +3 -3
  24. package/modules/hall-ui/public/drachmae.html +3 -3
  25. package/modules/hall-ui/public/fleet.html +3 -3
  26. package/modules/hall-ui/public/gate.html +3 -3
  27. package/modules/hall-ui/public/goal-map.html +3 -3
  28. package/modules/hall-ui/public/goals.html +3 -3
  29. package/modules/hall-ui/public/government.html +3 -3
  30. package/modules/hall-ui/public/idea.html +3 -3
  31. package/modules/hall-ui/public/ideas.html +3 -3
  32. package/modules/hall-ui/public/index.html +3 -3
  33. package/modules/hall-ui/public/lightbulb.js +213 -0
  34. package/modules/hall-ui/public/modules.html +3 -3
  35. package/modules/hall-ui/public/primer.html +3 -3
  36. package/modules/hall-ui/public/profile.html +3 -3
  37. package/modules/hall-ui/public/project-settings.html +3 -3
  38. package/modules/hall-ui/public/ranks.html +3 -3
  39. package/modules/hall-ui/public/roadmap.html +3 -3
  40. package/modules/hall-ui/public/roster.html +3 -3
  41. package/modules/hall-ui/public/sessions.html +3 -3
  42. package/modules/hall-ui/public/settings.html +3 -3
  43. package/modules/hall-ui/public/street-card.css +18 -0
  44. package/modules/hall-ui/public/street-card.js +259 -4
  45. package/modules/hall-ui/public/street-desk.js +11 -7
  46. package/modules/hall-ui/public/street.html +7 -7
  47. package/modules/hall-ui/public/street.js +121 -14
  48. package/modules/hall-ui/public/studio.html +3 -3
  49. package/modules/hall-ui/public/style.css +1 -0
  50. package/modules/hall-ui/public/task.html +3 -3
  51. package/modules/hall-ui/public/thinking.html +3 -3
  52. package/modules/hall-ui/public/tweak-editor.html +3 -3
  53. package/modules/hall-ui/public/watch.html +3 -3
  54. package/modules/hall-ui/public/work.html +3 -3
  55. package/modules/hall-ui/records/craft-mode.md +8 -0
  56. package/modules/hall-ui/records/governor-street.md +15 -0
  57. package/modules/page-notes/db.js +34 -0
  58. package/modules/page-notes/notes.js +54 -8
  59. package/modules/page-notes/routes/page-notes.js +49 -1
  60. package/modules/page-notes/split.js +39 -8
  61. package/package-lock.json +2 -2
  62. package/package.json +1 -1
  63. package/release-notes.json +16 -0
  64. package/src/module-api.js +1 -1
  65. package/tests/hall_street_desk.mjs +370 -5
  66. package/tests/hall_tweak_editor.mjs +1 -1
  67. package/tests/lightbulb.mjs +385 -0
  68. package/tests/page_notes_panel.mjs +3 -1
  69. package/tests/paintbrush.mjs +2 -1
  70. package/tests/privacy_matrix.mjs +689 -0
@@ -3,17 +3,17 @@
3
3
  "generator": "scripts/gds/copy-inventory.js",
4
4
  "goal": 1000074,
5
5
  "counts": {
6
- "strings": 2487,
7
- "unique_ids": 2134,
8
- "certain": 2487,
6
+ "strings": 2499,
7
+ "unique_ids": 2143,
8
+ "certain": 2499,
9
9
  "heuristic": 0,
10
- "duplicate_ids": 223
10
+ "duplicate_ids": 225
11
11
  },
12
12
  "surfaces": {
13
13
  "builders-hall": {
14
14
  "at": "modules/hall-ui/public",
15
- "files": 133,
16
- "strings": 1805
15
+ "files": 134,
16
+ "strings": 1817
17
17
  },
18
18
  "status-dashboard": {
19
19
  "at": "modules/status-ui/public",
@@ -613,6 +613,17 @@
613
613
  "modules/hall-ui/public/goals-render.js:1356"
614
614
  ]
615
615
  },
616
+ {
617
+ "id": "1edc39bc7120",
618
+ "surface": "builders-hall",
619
+ "text": "Turn into ideas",
620
+ "occurrences": 3,
621
+ "at": [
622
+ "modules/hall-ui/public/lightbulb.js:87",
623
+ "modules/hall-ui/public/lightbulb.js:163",
624
+ "modules/hall-ui/public/page-notes.js:107"
625
+ ]
626
+ },
616
627
  {
617
628
  "id": "0efa2f18bb6c",
618
629
  "surface": "builders-hall",
@@ -1368,6 +1379,16 @@
1368
1379
  "modules/hall-ui/public/profile.js:199"
1369
1380
  ]
1370
1381
  },
1382
+ {
1383
+ "id": "36c97d6094bf",
1384
+ "surface": "builders-hall",
1385
+ "text": "None yet. Yours will be the first.",
1386
+ "occurrences": 2,
1387
+ "at": [
1388
+ "modules/hall-ui/public/lightbulb.js:94",
1389
+ "modules/hall-ui/public/page-notes.js:120"
1390
+ ]
1391
+ },
1371
1392
  {
1372
1393
  "id": "8226c979db4d",
1373
1394
  "surface": "builders-hall",
@@ -3323,7 +3344,7 @@
3323
3344
  "surface": "builders-hall",
3324
3345
  "text": "Artists start on Artistry.",
3325
3346
  "file": "modules/hall-ui/public/craft-mode.js",
3326
- "line": 352,
3347
+ "line": 358,
3327
3348
  "origin": "js-markup",
3328
3349
  "confidence": "certain"
3329
3350
  },
@@ -3350,7 +3371,7 @@
3350
3371
  "surface": "builders-hall",
3351
3372
  "text": "Ask me again next session",
3352
3373
  "file": "modules/hall-ui/public/craft-mode.js",
3353
- "line": 351,
3374
+ "line": 357,
3354
3375
  "origin": "js-markup",
3355
3376
  "confidence": "certain"
3356
3377
  },
@@ -3701,7 +3722,7 @@
3701
3722
  "surface": "builders-hall",
3702
3723
  "text": "Builders hall · this session",
3703
3724
  "file": "modules/hall-ui/public/craft-mode.js",
3704
- "line": 346,
3725
+ "line": 352,
3705
3726
  "origin": "js-markup",
3706
3727
  "confidence": "certain"
3707
3728
  },
@@ -4115,7 +4136,7 @@
4115
4136
  "surface": "builders-hall",
4116
4137
  "text": "Choose your mode",
4117
4138
  "file": "modules/hall-ui/public/craft-mode.js",
4118
- "line": 265,
4139
+ "line": 271,
4119
4140
  "origin": "js-markup",
4120
4141
  "confidence": "certain"
4121
4142
  },
@@ -4277,7 +4298,7 @@
4277
4298
  "surface": "builders-hall",
4278
4299
  "text": "Close without choosing",
4279
4300
  "file": "modules/hall-ui/public/craft-mode.js",
4280
- "line": 344,
4301
+ "line": 350,
4281
4302
  "origin": "js-markup",
4282
4303
  "confidence": "certain"
4283
4304
  },
@@ -5658,6 +5679,15 @@
5658
5679
  "origin": "js-markup",
5659
5680
  "confidence": "certain"
5660
5681
  },
5682
+ {
5683
+ "id": "3a6916fa79d4",
5684
+ "surface": "builders-hall",
5685
+ "text": "Each one links back to this page.",
5686
+ "file": "modules/hall-ui/public/lightbulb.js",
5687
+ "line": 107,
5688
+ "origin": "js-markup",
5689
+ "confidence": "certain"
5690
+ },
5661
5691
  {
5662
5692
  "id": "77b7e3abfb07",
5663
5693
  "surface": "builders-hall",
@@ -7116,6 +7146,15 @@
7116
7146
  "origin": "js-markup",
7117
7147
  "confidence": "certain"
7118
7148
  },
7149
+ {
7150
+ "id": "e1a026cdbccf",
7151
+ "surface": "builders-hall",
7152
+ "text": "Ideas from this page",
7153
+ "file": "modules/hall-ui/public/lightbulb.js",
7154
+ "line": 89,
7155
+ "origin": "js-markup",
7156
+ "confidence": "certain"
7157
+ },
7119
7158
  {
7120
7159
  "id": "379b20d548ad",
7121
7160
  "surface": "builders-hall",
@@ -8817,6 +8856,15 @@
8817
8856
  "origin": "html-text",
8818
8857
  "confidence": "certain"
8819
8858
  },
8859
+ {
8860
+ "id": "36c97d6094bf",
8861
+ "surface": "builders-hall",
8862
+ "text": "None yet. Yours will be the first.",
8863
+ "file": "modules/hall-ui/public/lightbulb.js",
8864
+ "line": 94,
8865
+ "origin": "js-markup",
8866
+ "confidence": "certain"
8867
+ },
8820
8868
  {
8821
8869
  "id": "36c97d6094bf",
8822
8870
  "surface": "builders-hall",
@@ -9695,7 +9743,7 @@
9695
9743
  "surface": "builders-hall",
9696
9744
  "text": "Pick one. You can switch any time from the top bar.",
9697
9745
  "file": "modules/hall-ui/public/craft-mode.js",
9698
- "line": 348,
9746
+ "line": 354,
9699
9747
  "origin": "js-markup",
9700
9748
  "confidence": "certain"
9701
9749
  },
@@ -11697,6 +11745,15 @@
11697
11745
  "origin": "js-notice",
11698
11746
  "confidence": "certain"
11699
11747
  },
11748
+ {
11749
+ "id": "ccca0c49fdc4",
11750
+ "surface": "builders-hall",
11751
+ "text": "Splitting into ideas…",
11752
+ "file": "modules/hall-ui/public/lightbulb.js",
11753
+ "line": 150,
11754
+ "origin": "js-text-assign",
11755
+ "confidence": "certain"
11756
+ },
11700
11757
  {
11701
11758
  "id": "aee9d47c6b99",
11702
11759
  "surface": "builders-hall",
@@ -12408,6 +12465,15 @@
12408
12465
  "origin": "js-markup",
12409
12466
  "confidence": "certain"
12410
12467
  },
12468
+ {
12469
+ "id": "784618f83a42",
12470
+ "surface": "builders-hall",
12471
+ "text": "The earlier ideas could not be loaded. Reload the page to try again.",
12472
+ "file": "modules/hall-ui/public/lightbulb.js",
12473
+ "line": 122,
12474
+ "origin": "js-markup",
12475
+ "confidence": "certain"
12476
+ },
12411
12477
  {
12412
12478
  "id": "ffaa4df90f66",
12413
12479
  "surface": "builders-hall",
@@ -13605,6 +13671,24 @@
13605
13671
  "origin": "js-markup",
13606
13672
  "confidence": "certain"
13607
13673
  },
13674
+ {
13675
+ "id": "1edc39bc7120",
13676
+ "surface": "builders-hall",
13677
+ "text": "Turn into ideas",
13678
+ "file": "modules/hall-ui/public/lightbulb.js",
13679
+ "line": 87,
13680
+ "origin": "js-markup",
13681
+ "confidence": "certain"
13682
+ },
13683
+ {
13684
+ "id": "1edc39bc7120",
13685
+ "surface": "builders-hall",
13686
+ "text": "Turn into ideas",
13687
+ "file": "modules/hall-ui/public/lightbulb.js",
13688
+ "line": 163,
13689
+ "origin": "js-text-assign",
13690
+ "confidence": "certain"
13691
+ },
13608
13692
  {
13609
13693
  "id": "1edc39bc7120",
13610
13694
  "surface": "builders-hall",
@@ -14060,7 +14144,7 @@
14060
14144
  "surface": "builders-hall",
14061
14145
  "text": "What are you doing now?",
14062
14146
  "file": "modules/hall-ui/public/craft-mode.js",
14063
- "line": 347,
14147
+ "line": 353,
14064
14148
  "origin": "js-markup",
14065
14149
  "confidence": "certain"
14066
14150
  },
@@ -14073,6 +14157,15 @@
14073
14157
  "origin": "html-attr:placeholder",
14074
14158
  "confidence": "certain"
14075
14159
  },
14160
+ {
14161
+ "id": "c077272746d4",
14162
+ "surface": "builders-hall",
14163
+ "text": "What could this page become?",
14164
+ "file": "modules/hall-ui/public/lightbulb.js",
14165
+ "line": 74,
14166
+ "origin": "js-markup",
14167
+ "confidence": "certain"
14168
+ },
14076
14169
  {
14077
14170
  "id": "f3d93a872a38",
14078
14171
  "surface": "builders-hall",
@@ -14352,6 +14445,15 @@
14352
14445
  "origin": "js-markup",
14353
14446
  "confidence": "certain"
14354
14447
  },
14448
+ {
14449
+ "id": "87acf1c05027",
14450
+ "surface": "builders-hall",
14451
+ "text": "When you submit, an AI splits this into separate ideas, filed under your name and linked to this page. The text itself is not kept.",
14452
+ "file": "modules/hall-ui/public/lightbulb.js",
14453
+ "line": 86,
14454
+ "origin": "js-markup",
14455
+ "confidence": "certain"
14456
+ },
14355
14457
  {
14356
14458
  "id": "8320f40edc52",
14357
14459
  "surface": "builders-hall",
@@ -14613,6 +14715,15 @@
14613
14715
  "origin": "js-markup",
14614
14716
  "confidence": "certain"
14615
14717
  },
14718
+ {
14719
+ "id": "08f28ecf123f",
14720
+ "surface": "builders-hall",
14721
+ "text": "Write more",
14722
+ "file": "modules/hall-ui/public/lightbulb.js",
14723
+ "line": 108,
14724
+ "origin": "js-markup",
14725
+ "confidence": "certain"
14726
+ },
14616
14727
  {
14617
14728
  "id": "47f61e576454",
14618
14729
  "surface": "builders-hall",
@@ -14622,6 +14733,15 @@
14622
14733
  "origin": "js-text-assign",
14623
14734
  "confidence": "certain"
14624
14735
  },
14736
+ {
14737
+ "id": "da6de9f79bcc",
14738
+ "surface": "builders-hall",
14739
+ "text": "Write what this page made you think of. Each separate point becomes its own idea.",
14740
+ "file": "modules/hall-ui/public/lightbulb.js",
14741
+ "line": 83,
14742
+ "origin": "js-markup",
14743
+ "confidence": "certain"
14744
+ },
14625
14745
  {
14626
14746
  "id": "a9e68066f26c",
14627
14747
  "surface": "builders-hall",
@@ -14847,6 +14967,15 @@
14847
14967
  "origin": "html-text",
14848
14968
  "confidence": "certain"
14849
14969
  },
14970
+ {
14971
+ "id": "e7df77318625",
14972
+ "surface": "builders-hall",
14973
+ "text": "Your ideas",
14974
+ "file": "modules/hall-ui/public/lightbulb.js",
14975
+ "line": 82,
14976
+ "origin": "js-markup",
14977
+ "confidence": "certain"
14978
+ },
14850
14979
  {
14851
14980
  "id": "a47f15b6a33c",
14852
14981
  "surface": "builders-hall",
package/docs/file-map.md CHANGED
@@ -358,6 +358,7 @@ tests/
358
358
  ├── terms_acceptance.mjs ← (task 1002913, goal 1000045, ADR 0213): the platform T&C acceptance record. Proves the four properties that make it evidence rather than a claim — the /terms page carries the cross-project consent ADR 0141 §4 deferred to it and it is apex-only; acceptance is written ONLY by the hub's own /sso/authorize (driven over the real router with an attacker-controlled query string, so a forged timestamp/version/activate flag reaches nothing); it is written ONCE (the fake pool interprets the upsert's own column assignments, so COALESCE is executed, not string-matched, and an assignment shape it cannot read throws instead of reading as "unchanged"); and consent is two columns in the shared predicate, so an account the hub witnessed before the terms existed publishes nothing. Plus the projection rule — every read whose row a JS twin judges must select both consent columns, or the twin denies everyone silently. DB-free `unit` lane, asserts its own lane membership.
359
359
  ├── applicant_profile_boundary.mjs ← (task 1002972, goal 1000045 C4, privacy spec D7, ADR 0241): THE D7 BOUNDARY proof for the applicant view a reviewer sees. Whitelists read from the MODULES’ own exports — the private branch against `recruiter-sliver`’s `SLIVER_KEYS`/`SLIVER_KEYS_HIDDEN`, the public branch against the public-page payload’s key list — so a third shape (the “new disclosure class” D7 forbids) reds this file. Pins THE CONSENT SWAP in both directions on the same account: a private builder who never opted into recruiting gets an applicant view and gets `null` from `getRecruiterSliver`, so a refactor routing the port through the recruiter sliver cannot pass quietly. `hide_stats` beats the application in both branches; provisional and terms-never-accepted disclose nothing; planted sentinels asserted absent from the whole body with the avatar-embedded `github_id` pinned as the one honest exception. Plus the federated gate (ADR 0205): no echo → 404 and NO account row read (asserted on the statement log), the witness matched against the AUTHENTICATED client, an out-of-window echo stops working, and `Cache-Control: no-store`. Real router + real HTTP over in-memory tables filtered by each statement’s own WHERE clause. DB-free `unit` lane, asserted in the file itself.
360
360
  ├── recruiter_sliver_boundary.mjs ← (task 1002968, goal 1000045 C2/C5, privacy spec D3, ADR 0215): THE PRE-ACCEPT BOUNDARY proof for the D3 recruiter sliver. A WHITELIST over the module's own exported key list (a sixth key fails whether or not this file was told about it), planted improbable sentinels asserted absent from the WHOLE response body with two controls against vacuity, the ceiling assertion (the handle a recruiter is handed 404s at `GET /profiles/:handle`, with a 200 control) and the gate (both recruiting routes admit the same two audiences and refuse byte-identically). Real router + real HTTP over an in-memory table filtered by each statement's own WHERE clause. DB-free `unit` lane, asserted in the file itself.
361
+ ├── privacy_matrix.mjs ← (task 1002973, goal 1000110, privacy spec D2/D3/D4): THE PRIVACY MATRIX as one table — a fixture account per D2 row (provisional, public shown, public hidden, private, private+discoverable, private+discoverable+hidden, opted out of recruiting) × every viewer (Anon, Builder, Recruiter, Self) × every cross-project surface that exists (`/profiles/:handle`, `/me/cross-project`, `/community/search`, `/community/leaderboard`, `/scouting`, `/scouting/:handle`), asserted against a literal transcription of the spec's cells; then the rules swept across EVERY recorded response (hidden numbers reach nobody but Self, private/provisional are absent, private+discoverable is named only by the sliver), the D3 key lists pinned, and an expired invite refused by the real `hasInvitedAccessRequest`. Real routers + real HTTP over in-memory tables filtered by each statement's own WHERE (boolean structure read, calibrated against the JS twins). The declined-invite row is task 1004444's. DB-free `unit` lane, asserted in the file itself.
361
362
  └── public_task_resolver.mjs ← (#604): the public `/public/tasks/:id` projection — title/value_summary exposed only for shipped|confirmed; withheld for in-flight so unshipped/security task names can't leak.
362
363
  ```
363
364
 
@@ -2931,5 +2931,9 @@ is load-bearing: the script throws rather than guess if it is missing, and
2931
2931
  landed since 1.21.50 with no explicit bump. run 37239909495. (task 1002620)
2932
2932
  1.21.52 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
2933
2933
  landed since 1.21.51 with no explicit bump. run 37243572142. (task 1002620)
2934
+ 1.21.53 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
2935
+ landed since 1.21.52 with no explicit bump. run 37244559329. (task 1002620)
2936
+ 1.21.54 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
2937
+ landed since 1.21.53 with no explicit bump. run 37245549793. (task 1002620)
2934
2938
  ---------------------------------------------------------------------------
2935
2939
  ```