@bongos/core 1.20.73 → 1.20.75
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.bongos-core.json +66 -46
- package/clients/bongos-client/README.md +1 -1
- package/clients/bongos-client/bongos-client.global.js +4 -0
- package/clients/bongos-client/index.cjs +4 -0
- package/clients/bongos-client/index.d.ts +8 -0
- package/clients/bongos-client/index.mjs +4 -0
- package/docs/adr/0359-nobody-sets-a-module-score-by-hand-metic-can-ask-for-a-re-check.md +40 -0
- package/docs/adr/README.md +1 -0
- package/docs/api/openapi.json +185 -3
- package/docs/api-reference.md +5 -3
- package/docs/architecture.md +1 -1
- package/docs/copy-inventory.md +447 -373
- package/docs/copy-registry.json +1157 -468
- package/docs/module-api-changelog.md +4 -0
- package/docs/page-inventory.json +6 -1
- package/docs/page-readings.json +1044 -650
- package/modules/government/catalog.js +3 -0
- package/modules/government/migrations/government_021_module_assessment_rerun.sql +36 -0
- package/modules/provisioning/routes/provisioning.js +35 -0
- package/modules/public-landing/public/assets/cosmos.css +1 -1
- package/modules/public-landing/public/projects.html +589 -63
- package/modules/public-landing/public/projects.probes.json +8 -5
- package/modules/public-landing/public/projects.states.json +19 -14
- package/modules/ui-design/kit/lib.js +4 -2
- package/modules/ui-design/kit/serve.js +5 -0
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/release-notes.json +12 -0
- package/src/bongos/route-rank-check.js +3 -0
- package/src/bongos/routes/modules.js +27 -0
- package/src/module-api.js +1 -1
- package/tests/module_store_reassess.mjs +120 -0
- package/tests/projects_hub.mjs +9 -5
- package/tests/projects_hub_app_status.mjs +1 -1
- package/tests/projects_hub_app_step.mjs +10 -10
- package/tests/projects_hub_look.mjs +7 -7
- package/tests/projects_hub_module_picker.mjs +9 -9
- package/tests/projects_hub_pre_uat.mjs +2 -1
- package/tests/wizard_demo.mjs +1 -1
- package/tests/wizard_draft_resume.mjs +1 -1
- package/tests/wizard_front_door.mjs +11 -7
- package/tests/wizard_intent_resume.mjs +9 -9
- package/tests/wizard_physics.mjs +264 -0
package/.bongos-core.json
CHANGED
|
@@ -2,22 +2,22 @@
|
|
|
2
2
|
"artifact": "bongos-core",
|
|
3
3
|
"manifest_schema": 1,
|
|
4
4
|
"generator": "scripts/gds/package-core.js",
|
|
5
|
-
"core_version": "1.20.
|
|
6
|
-
"core_contract": "1.20.
|
|
7
|
-
"source_commit": "
|
|
5
|
+
"core_version": "1.20.75",
|
|
6
|
+
"core_contract": "1.20.75",
|
|
7
|
+
"source_commit": "47171580556a4db8b0bee9913c943c38d416b354",
|
|
8
8
|
"source_ref": "HEAD",
|
|
9
|
-
"built_at": "2026-10-
|
|
9
|
+
"built_at": "2026-10-01T16:49:45.624Z",
|
|
10
10
|
"redaction": {
|
|
11
11
|
"model": "docs-redacted+functional-verbatim",
|
|
12
|
-
"docs_redacted":
|
|
12
|
+
"docs_redacted": 573,
|
|
13
13
|
"agent_docs_stubbed": 27,
|
|
14
|
-
"functional_verbatim":
|
|
14
|
+
"functional_verbatim": 2804,
|
|
15
15
|
"rules": 3,
|
|
16
16
|
"gate_literals": 3,
|
|
17
17
|
"gate": "passed"
|
|
18
18
|
},
|
|
19
|
-
"file_count":
|
|
20
|
-
"tree_sha256": "
|
|
19
|
+
"file_count": 3405,
|
|
20
|
+
"tree_sha256": "741e17ba5c6027b412c9263e7fbde66a05ec0025c6e8316cb8a348082f6baad3",
|
|
21
21
|
"files": [
|
|
22
22
|
{
|
|
23
23
|
"path": ".claude/skills/ask-for-help/SKILL.md",
|
|
@@ -317,12 +317,12 @@
|
|
|
317
317
|
{
|
|
318
318
|
"path": "clients/bongos-client/README.md",
|
|
319
319
|
"mode": "0000644",
|
|
320
|
-
"sha256": "
|
|
320
|
+
"sha256": "4bf36ecd7ca2902d45d201a77871242c61842f882ade087c4f71d96da14bac37"
|
|
321
321
|
},
|
|
322
322
|
{
|
|
323
323
|
"path": "clients/bongos-client/bongos-client.global.js",
|
|
324
324
|
"mode": "0000644",
|
|
325
|
-
"sha256": "
|
|
325
|
+
"sha256": "daf38ceea63ecdc6656b3fa9f9abd061bcd102b8093c55b476cc96f01bb8a8ec"
|
|
326
326
|
},
|
|
327
327
|
{
|
|
328
328
|
"path": "clients/bongos-client/examples/hello-world.mjs",
|
|
@@ -332,17 +332,17 @@
|
|
|
332
332
|
{
|
|
333
333
|
"path": "clients/bongos-client/index.cjs",
|
|
334
334
|
"mode": "0000644",
|
|
335
|
-
"sha256": "
|
|
335
|
+
"sha256": "422e9c335817f0efe3b63309ae34a5b8d09989d01a22063e6c0dcdb96fb9d650"
|
|
336
336
|
},
|
|
337
337
|
{
|
|
338
338
|
"path": "clients/bongos-client/index.d.ts",
|
|
339
339
|
"mode": "0000644",
|
|
340
|
-
"sha256": "
|
|
340
|
+
"sha256": "1f8f7512aa121a86c11b39b9015257d9bbd0ab74ea68afd3bba783cd7c840177"
|
|
341
341
|
},
|
|
342
342
|
{
|
|
343
343
|
"path": "clients/bongos-client/index.mjs",
|
|
344
344
|
"mode": "0000644",
|
|
345
|
-
"sha256": "
|
|
345
|
+
"sha256": "3c9d7a8facab420b2b6eec54469b04d95ee9e37f9447f81c7700b356d408c11c"
|
|
346
346
|
},
|
|
347
347
|
{
|
|
348
348
|
"path": "clients/bongos-client/package.json",
|
|
@@ -2254,25 +2254,30 @@
|
|
|
2254
2254
|
"mode": "0000644",
|
|
2255
2255
|
"sha256": "378354dd5ca8a1305b0c2b5a913baa5288da0014bcff8f6fb59fc1b28b654f59"
|
|
2256
2256
|
},
|
|
2257
|
+
{
|
|
2258
|
+
"path": "docs/adr/0359-nobody-sets-a-module-score-by-hand-metic-can-ask-for-a-re-check.md",
|
|
2259
|
+
"mode": "0000644",
|
|
2260
|
+
"sha256": "b9861113cddb698710176c8533b07078b5b63e1995adbb3dafb537c1bc69186a"
|
|
2261
|
+
},
|
|
2257
2262
|
{
|
|
2258
2263
|
"path": "docs/adr/README.md",
|
|
2259
2264
|
"mode": "0000644",
|
|
2260
|
-
"sha256": "
|
|
2265
|
+
"sha256": "f4523673c55a6528efa2589ecc997b0192e15318755f0008a82b6d49e5023eb0"
|
|
2261
2266
|
},
|
|
2262
2267
|
{
|
|
2263
2268
|
"path": "docs/api-reference.md",
|
|
2264
2269
|
"mode": "0000644",
|
|
2265
|
-
"sha256": "
|
|
2270
|
+
"sha256": "77dcae770dc22649b8ecfffc81e06e912053d4a471cb84f9c14cc33f1ccbc342"
|
|
2266
2271
|
},
|
|
2267
2272
|
{
|
|
2268
2273
|
"path": "docs/api/openapi.json",
|
|
2269
2274
|
"mode": "0000644",
|
|
2270
|
-
"sha256": "
|
|
2275
|
+
"sha256": "2306770ff4d240498043ace210b9476065674c0a953e09f1b1fdc7ccd72ce1cb"
|
|
2271
2276
|
},
|
|
2272
2277
|
{
|
|
2273
2278
|
"path": "docs/architecture.md",
|
|
2274
2279
|
"mode": "0000644",
|
|
2275
|
-
"sha256": "
|
|
2280
|
+
"sha256": "12f04eb7e79afdc31515209431664a489d189cecc890816d0abbf7d02accf2cc"
|
|
2276
2281
|
},
|
|
2277
2282
|
{
|
|
2278
2283
|
"path": "docs/branding-contract.md",
|
|
@@ -2292,12 +2297,12 @@
|
|
|
2292
2297
|
{
|
|
2293
2298
|
"path": "docs/copy-inventory.md",
|
|
2294
2299
|
"mode": "0000644",
|
|
2295
|
-
"sha256": "
|
|
2300
|
+
"sha256": "974f5d7a12d5629b8a6a5c8d6d3285f3b87f82bd6687866c803e6f23ac7d0ed0"
|
|
2296
2301
|
},
|
|
2297
2302
|
{
|
|
2298
2303
|
"path": "docs/copy-registry.json",
|
|
2299
2304
|
"mode": "0000644",
|
|
2300
|
-
"sha256": "
|
|
2305
|
+
"sha256": "606ca0b6c9d1de48f290aeff85881d5a3a42da9612d9002d0125f72febc46550"
|
|
2301
2306
|
},
|
|
2302
2307
|
{
|
|
2303
2308
|
"path": "docs/design/apex-pass-2-direction.md",
|
|
@@ -2802,7 +2807,7 @@
|
|
|
2802
2807
|
{
|
|
2803
2808
|
"path": "docs/module-api-changelog.md",
|
|
2804
2809
|
"mode": "0000644",
|
|
2805
|
-
"sha256": "
|
|
2810
|
+
"sha256": "450e7d95569def45add3a68eaa95340c36dbf063c05de1b20570be7fddd5bd17"
|
|
2806
2811
|
},
|
|
2807
2812
|
{
|
|
2808
2813
|
"path": "docs/modules-contract.md",
|
|
@@ -2887,12 +2892,12 @@
|
|
|
2887
2892
|
{
|
|
2888
2893
|
"path": "docs/page-inventory.json",
|
|
2889
2894
|
"mode": "0000644",
|
|
2890
|
-
"sha256": "
|
|
2895
|
+
"sha256": "2ea24cb7659d6032498cc7bae2838afe55efddc33da3484dffe77db0952fae6f"
|
|
2891
2896
|
},
|
|
2892
2897
|
{
|
|
2893
2898
|
"path": "docs/page-readings.json",
|
|
2894
2899
|
"mode": "0000644",
|
|
2895
|
-
"sha256": "
|
|
2900
|
+
"sha256": "dbfc823461edb6b009d1f3ca4af480759ee34123c4441dfbe6a29ccec6e9d286"
|
|
2896
2901
|
},
|
|
2897
2902
|
{
|
|
2898
2903
|
"path": "docs/project-context.template.md",
|
|
@@ -4762,7 +4767,7 @@
|
|
|
4762
4767
|
{
|
|
4763
4768
|
"path": "modules/government/catalog.js",
|
|
4764
4769
|
"mode": "0000644",
|
|
4765
|
-
"sha256": "
|
|
4770
|
+
"sha256": "7892e387042b020fbfe0dc16a5ea134b67aa2abfd97d5e72e09f5e8b529a1a04"
|
|
4766
4771
|
},
|
|
4767
4772
|
{
|
|
4768
4773
|
"path": "modules/government/charter.js",
|
|
@@ -4919,6 +4924,11 @@
|
|
|
4919
4924
|
"mode": "0000644",
|
|
4920
4925
|
"sha256": "6eabf8b78f84922a44bdcfacf9e5dd4c2c5ead593b81125c2cc9ca8f13f844d9"
|
|
4921
4926
|
},
|
|
4927
|
+
{
|
|
4928
|
+
"path": "modules/government/migrations/government_021_module_assessment_rerun.sql",
|
|
4929
|
+
"mode": "0000644",
|
|
4930
|
+
"sha256": "0f1a25b6bf6d0ecfbbb5a38fc3cf41fcd5689b42943397a663581c22a9634835"
|
|
4931
|
+
},
|
|
4922
4932
|
{
|
|
4923
4933
|
"path": "modules/government/module.json",
|
|
4924
4934
|
"mode": "0000644",
|
|
@@ -8072,7 +8082,7 @@
|
|
|
8072
8082
|
{
|
|
8073
8083
|
"path": "modules/provisioning/routes/provisioning.js",
|
|
8074
8084
|
"mode": "0000644",
|
|
8075
|
-
"sha256": "
|
|
8085
|
+
"sha256": "a07a5ad18a55708ade714a79e155c1dd44596b7379ce43d0405db1211d75278a"
|
|
8076
8086
|
},
|
|
8077
8087
|
{
|
|
8078
8088
|
"path": "modules/provisioning/routes/render-standup.js",
|
|
@@ -8387,7 +8397,7 @@
|
|
|
8387
8397
|
{
|
|
8388
8398
|
"path": "modules/public-landing/public/assets/cosmos.css",
|
|
8389
8399
|
"mode": "0000644",
|
|
8390
|
-
"sha256": "
|
|
8400
|
+
"sha256": "778b28f1d35d9f6966c8bdf84daffa2ed5cf96bbc5faf5a8fdd5c1f323bc8f22"
|
|
8391
8401
|
},
|
|
8392
8402
|
{
|
|
8393
8403
|
"path": "modules/public-landing/public/assets/verro-medallion.png",
|
|
@@ -8752,17 +8762,17 @@
|
|
|
8752
8762
|
{
|
|
8753
8763
|
"path": "modules/public-landing/public/projects.html",
|
|
8754
8764
|
"mode": "0000644",
|
|
8755
|
-
"sha256": "
|
|
8765
|
+
"sha256": "438766969f1b61bf1e3da7d6df5603b0569efc4264bc20b720fb27e9c6fe2f11"
|
|
8756
8766
|
},
|
|
8757
8767
|
{
|
|
8758
8768
|
"path": "modules/public-landing/public/projects.probes.json",
|
|
8759
8769
|
"mode": "0000644",
|
|
8760
|
-
"sha256": "
|
|
8770
|
+
"sha256": "99c3b8ea90bd81ac583a34d56f182036d573392b8f489dcb799cb31bac836f03"
|
|
8761
8771
|
},
|
|
8762
8772
|
{
|
|
8763
8773
|
"path": "modules/public-landing/public/projects.states.json",
|
|
8764
8774
|
"mode": "0000644",
|
|
8765
|
-
"sha256": "
|
|
8775
|
+
"sha256": "5a7ce6e71227e224dc1dc09509ab0dcf738e3bd411e6a73a5e4750d81f241d93"
|
|
8766
8776
|
},
|
|
8767
8777
|
{
|
|
8768
8778
|
"path": "modules/public-landing/public/terms.html",
|
|
@@ -9302,7 +9312,7 @@
|
|
|
9302
9312
|
{
|
|
9303
9313
|
"path": "modules/ui-design/kit/lib.js",
|
|
9304
9314
|
"mode": "0000644",
|
|
9305
|
-
"sha256": "
|
|
9315
|
+
"sha256": "328b06d37869647a55d2cacef899d81b602593eb2399c1ca7c21e13cd3d9dfae"
|
|
9306
9316
|
},
|
|
9307
9317
|
{
|
|
9308
9318
|
"path": "modules/ui-design/kit/png.js",
|
|
@@ -9322,7 +9332,7 @@
|
|
|
9322
9332
|
{
|
|
9323
9333
|
"path": "modules/ui-design/kit/serve.js",
|
|
9324
9334
|
"mode": "0000644",
|
|
9325
|
-
"sha256": "
|
|
9335
|
+
"sha256": "12ece23ed5730bd59de0d68af75f8be08a6fc268242d7426b23878a5c9893594"
|
|
9326
9336
|
},
|
|
9327
9337
|
{
|
|
9328
9338
|
"path": "modules/ui-design/kit/tells.js",
|
|
@@ -9457,12 +9467,12 @@
|
|
|
9457
9467
|
{
|
|
9458
9468
|
"path": "package-lock.json",
|
|
9459
9469
|
"mode": "0000644",
|
|
9460
|
-
"sha256": "
|
|
9470
|
+
"sha256": "e0595ba880a4bc113e7ffc305721d720dda4adead3cc943a0499f06fa98cc2c0"
|
|
9461
9471
|
},
|
|
9462
9472
|
{
|
|
9463
9473
|
"path": "package.json",
|
|
9464
9474
|
"mode": "0000644",
|
|
9465
|
-
"sha256": "
|
|
9475
|
+
"sha256": "d340f2190395e8d5aec8dc6546c0c09d2da8e98719d0bda2da18eab8f884cc1e"
|
|
9466
9476
|
},
|
|
9467
9477
|
{
|
|
9468
9478
|
"path": "public-docs/index.html",
|
|
@@ -9482,7 +9492,7 @@
|
|
|
9482
9492
|
{
|
|
9483
9493
|
"path": "release-notes.json",
|
|
9484
9494
|
"mode": "0000644",
|
|
9485
|
-
"sha256": "
|
|
9495
|
+
"sha256": "d64f4b7ed87732032b11f8b152572d303fa8fba9358e5d404c906921ee41247d"
|
|
9486
9496
|
},
|
|
9487
9497
|
{
|
|
9488
9498
|
"path": "scripts/bongos-mcp.js",
|
|
@@ -11517,7 +11527,7 @@
|
|
|
11517
11527
|
{
|
|
11518
11528
|
"path": "src/bongos/route-rank-check.js",
|
|
11519
11529
|
"mode": "0000644",
|
|
11520
|
-
"sha256": "
|
|
11530
|
+
"sha256": "8290d110cfcb492ac241061e8dda955b594217f39128e6685578fab27e46e969"
|
|
11521
11531
|
},
|
|
11522
11532
|
{
|
|
11523
11533
|
"path": "src/bongos/routes.js",
|
|
@@ -11602,7 +11612,7 @@
|
|
|
11602
11612
|
{
|
|
11603
11613
|
"path": "src/bongos/routes/modules.js",
|
|
11604
11614
|
"mode": "0000644",
|
|
11605
|
-
"sha256": "
|
|
11615
|
+
"sha256": "0e36ce8c06b446a7b5b78577aa3ec63b1cfa03f023963847a6eee7b8ef84e20a"
|
|
11606
11616
|
},
|
|
11607
11617
|
{
|
|
11608
11618
|
"path": "src/bongos/routes/my-sessions.js",
|
|
@@ -11677,7 +11687,7 @@
|
|
|
11677
11687
|
{
|
|
11678
11688
|
"path": "src/module-api.js",
|
|
11679
11689
|
"mode": "0000644",
|
|
11680
|
-
"sha256": "
|
|
11690
|
+
"sha256": "0292d81e99d14082adcbc9c1500a0547cf74a6e3c4c97d1ff6229bd623c89980"
|
|
11681
11691
|
},
|
|
11682
11692
|
{
|
|
11683
11693
|
"path": "src/module-loader/catalog.js",
|
|
@@ -14839,6 +14849,11 @@
|
|
|
14839
14849
|
"mode": "0000644",
|
|
14840
14850
|
"sha256": "59d14575351c6b6529c6aff8e661ce915b8159988ad13585eea752c4bde4d9b6"
|
|
14841
14851
|
},
|
|
14852
|
+
{
|
|
14853
|
+
"path": "tests/module_store_reassess.mjs",
|
|
14854
|
+
"mode": "0000644",
|
|
14855
|
+
"sha256": "07df2a5f55e1bbe41c99e24533e3fcb008be6c6cb0d0e0a3e1160a106baefe77"
|
|
14856
|
+
},
|
|
14842
14857
|
{
|
|
14843
14858
|
"path": "tests/module_store_registry_migration.mjs",
|
|
14844
14859
|
"mode": "0000644",
|
|
@@ -15337,32 +15352,32 @@
|
|
|
15337
15352
|
{
|
|
15338
15353
|
"path": "tests/projects_hub.mjs",
|
|
15339
15354
|
"mode": "0000644",
|
|
15340
|
-
"sha256": "
|
|
15355
|
+
"sha256": "b8a6cfca70f84ed904ca6a44d1f045fd2337ea3407143ae0e1b7c05118d83668"
|
|
15341
15356
|
},
|
|
15342
15357
|
{
|
|
15343
15358
|
"path": "tests/projects_hub_app_status.mjs",
|
|
15344
15359
|
"mode": "0000644",
|
|
15345
|
-
"sha256": "
|
|
15360
|
+
"sha256": "7502f3b5ad3a77ff5134875d4de0e9e76c82b956b12c22a52f32854df33ba778"
|
|
15346
15361
|
},
|
|
15347
15362
|
{
|
|
15348
15363
|
"path": "tests/projects_hub_app_step.mjs",
|
|
15349
15364
|
"mode": "0000644",
|
|
15350
|
-
"sha256": "
|
|
15365
|
+
"sha256": "89a3babbba90538cdbfc52673651388eee0172592bdbf8d37a9cbf507173449c"
|
|
15351
15366
|
},
|
|
15352
15367
|
{
|
|
15353
15368
|
"path": "tests/projects_hub_look.mjs",
|
|
15354
15369
|
"mode": "0000644",
|
|
15355
|
-
"sha256": "
|
|
15370
|
+
"sha256": "2156371a4e0dc4f97536a553ba8805bb3ca4675f95d0e808c9604066186a09a5"
|
|
15356
15371
|
},
|
|
15357
15372
|
{
|
|
15358
15373
|
"path": "tests/projects_hub_module_picker.mjs",
|
|
15359
15374
|
"mode": "0000644",
|
|
15360
|
-
"sha256": "
|
|
15375
|
+
"sha256": "42f6e51a23db4d42414603b4e549fb4fad0b7d95ac709fc653a6f806b590d0a6"
|
|
15361
15376
|
},
|
|
15362
15377
|
{
|
|
15363
15378
|
"path": "tests/projects_hub_pre_uat.mjs",
|
|
15364
15379
|
"mode": "0000644",
|
|
15365
|
-
"sha256": "
|
|
15380
|
+
"sha256": "f65e3a53e3700aff4d45a9cbb0056560b17622ae4d1b7b5e41b565aa6c8eb2b8"
|
|
15366
15381
|
},
|
|
15367
15382
|
{
|
|
15368
15383
|
"path": "tests/projects_hub_render_connect.mjs",
|
|
@@ -16962,22 +16977,27 @@
|
|
|
16962
16977
|
{
|
|
16963
16978
|
"path": "tests/wizard_demo.mjs",
|
|
16964
16979
|
"mode": "0000644",
|
|
16965
|
-
"sha256": "
|
|
16980
|
+
"sha256": "6f5945a590a851e83d388afd2e50b4c34187b153d017ed82215dc2a3e4f62ea2"
|
|
16966
16981
|
},
|
|
16967
16982
|
{
|
|
16968
16983
|
"path": "tests/wizard_draft_resume.mjs",
|
|
16969
16984
|
"mode": "0000644",
|
|
16970
|
-
"sha256": "
|
|
16985
|
+
"sha256": "625fa61619c02324c09afc05b71471d91a7aeb6aaf82449e0b25d36a09fde103"
|
|
16971
16986
|
},
|
|
16972
16987
|
{
|
|
16973
16988
|
"path": "tests/wizard_front_door.mjs",
|
|
16974
16989
|
"mode": "0000644",
|
|
16975
|
-
"sha256": "
|
|
16990
|
+
"sha256": "de1717a0e40cf430b5c13f7bee1f7e29f3f2d074bf20b0bf04f8d9d4a624b18e"
|
|
16976
16991
|
},
|
|
16977
16992
|
{
|
|
16978
16993
|
"path": "tests/wizard_intent_resume.mjs",
|
|
16979
16994
|
"mode": "0000644",
|
|
16980
|
-
"sha256": "
|
|
16995
|
+
"sha256": "976db1a1bd5290f59dd1ca7ea011478cbc503eb0466b81cb76acea3301c3fd79"
|
|
16996
|
+
},
|
|
16997
|
+
{
|
|
16998
|
+
"path": "tests/wizard_physics.mjs",
|
|
16999
|
+
"mode": "0000644",
|
|
17000
|
+
"sha256": "7b96f175088a5e37940336f6eead501a0d3c72b9614674d8192e9761dd40ea74"
|
|
16981
17001
|
},
|
|
16982
17002
|
{
|
|
16983
17003
|
"path": "tests/wizard_preselect_why.mjs",
|
|
@@ -5,7 +5,7 @@ A **generated**, zero-dependency typed client for the Bongos API — produced fr
|
|
|
5
5
|
by hand; it regenerates when the spec changes, so it can never drift from the routes.
|
|
6
6
|
|
|
7
7
|
- API version: **v1** (served at `/api/bongos/v1`)
|
|
8
|
-
-
|
|
8
|
+
- 488 operations across 73 resource groups
|
|
9
9
|
|
|
10
10
|
## Use it from your project
|
|
11
11
|
|
|
@@ -887,6 +887,8 @@ function createClient(opts = {}) {
|
|
|
887
887
|
getProvisioningLogosFile: (args) => request("GET", "/provisioning/logos/{file}", { hasBody: false }, args),
|
|
888
888
|
// GET /provisioning/onboard-plan — rank: public — GET /provisioning/onboard-plan
|
|
889
889
|
getProvisioningOnboardPlan: (args) => request("GET", "/provisioning/onboard-plan", { hasBody: false }, args),
|
|
890
|
+
// POST /provisioning/physics-check — rank: any-builder — POST /provisioning/physics-check
|
|
891
|
+
postProvisioningPhysicsCheck: (args) => request("POST", "/provisioning/physics-check", { hasBody: true }, args),
|
|
890
892
|
// GET /provisioning/recommendations — rank: public — GET /provisioning/recommendations
|
|
891
893
|
getProvisioningRecommendations: (args) => request("GET", "/provisioning/recommendations", { hasBody: false }, args),
|
|
892
894
|
// POST /provisioning/render/lookup — rank: any-builder — POST /provisioning/render/lookup
|
|
@@ -1085,6 +1087,8 @@ function createClient(opts = {}) {
|
|
|
1085
1087
|
postStoreModulesKeyVersions: (args) => request("POST", "/store/modules/{key}/versions", { hasBody: true }, args),
|
|
1086
1088
|
// GET /store/modules/{key}/versions/{version}/howto — rank: any-builder — GET /store/modules/:key/versions/:version/howto
|
|
1087
1089
|
getStoreModulesKeyVersionsVersionHowto: (args) => request("GET", "/store/modules/{key}/versions/{version}/howto", { hasBody: false }, args),
|
|
1090
|
+
// POST /store/modules/{key}/versions/{version}/reassess — rank: metic+archon — POST /store/modules/:key/versions/:version/reassess
|
|
1091
|
+
postStoreModulesKeyVersionsVersionReassess: (args) => request("POST", "/store/modules/{key}/versions/{version}/reassess", { hasBody: true }, args),
|
|
1088
1092
|
// GET /store/modules/{key}/versions/{version}/tarball — rank: any-builder — GET /store/modules/:key/versions/:version/tarball
|
|
1089
1093
|
getStoreModulesKeyVersionsVersionTarball: (args) => request("GET", "/store/modules/{key}/versions/{version}/tarball", { hasBody: false }, args),
|
|
1090
1094
|
// GET /store/modules/latest — rank: any-builder — GET /store/modules/latest
|
|
@@ -886,6 +886,8 @@ function createClient(opts = {}) {
|
|
|
886
886
|
getProvisioningLogosFile: (args) => request("GET", "/provisioning/logos/{file}", { hasBody: false }, args),
|
|
887
887
|
// GET /provisioning/onboard-plan — rank: public — GET /provisioning/onboard-plan
|
|
888
888
|
getProvisioningOnboardPlan: (args) => request("GET", "/provisioning/onboard-plan", { hasBody: false }, args),
|
|
889
|
+
// POST /provisioning/physics-check — rank: any-builder — POST /provisioning/physics-check
|
|
890
|
+
postProvisioningPhysicsCheck: (args) => request("POST", "/provisioning/physics-check", { hasBody: true }, args),
|
|
889
891
|
// GET /provisioning/recommendations — rank: public — GET /provisioning/recommendations
|
|
890
892
|
getProvisioningRecommendations: (args) => request("GET", "/provisioning/recommendations", { hasBody: false }, args),
|
|
891
893
|
// POST /provisioning/render/lookup — rank: any-builder — POST /provisioning/render/lookup
|
|
@@ -1084,6 +1086,8 @@ function createClient(opts = {}) {
|
|
|
1084
1086
|
postStoreModulesKeyVersions: (args) => request("POST", "/store/modules/{key}/versions", { hasBody: true }, args),
|
|
1085
1087
|
// GET /store/modules/{key}/versions/{version}/howto — rank: any-builder — GET /store/modules/:key/versions/:version/howto
|
|
1086
1088
|
getStoreModulesKeyVersionsVersionHowto: (args) => request("GET", "/store/modules/{key}/versions/{version}/howto", { hasBody: false }, args),
|
|
1089
|
+
// POST /store/modules/{key}/versions/{version}/reassess — rank: metic+archon — POST /store/modules/:key/versions/:version/reassess
|
|
1090
|
+
postStoreModulesKeyVersionsVersionReassess: (args) => request("POST", "/store/modules/{key}/versions/{version}/reassess", { hasBody: true }, args),
|
|
1087
1091
|
// GET /store/modules/{key}/versions/{version}/tarball — rank: any-builder — GET /store/modules/:key/versions/:version/tarball
|
|
1088
1092
|
getStoreModulesKeyVersionsVersionTarball: (args) => request("GET", "/store/modules/{key}/versions/{version}/tarball", { hasBody: false }, args),
|
|
1089
1093
|
// GET /store/modules/latest — rank: any-builder — GET /store/modules/latest
|
|
@@ -423,6 +423,8 @@ export interface PostProvisioningInstancesIdRepoPrivateResponse { ok: boolean; q
|
|
|
423
423
|
export interface PostProvisioningInstancesIdRestartResponse { ok: boolean; queued: unknown; action: unknown; status: unknown; message: unknown }
|
|
424
424
|
export interface PostProvisioningInstancesIdTeardownResponse { ok: boolean; queued: unknown; action: unknown; status: unknown; superseded: unknown; message: unknown }
|
|
425
425
|
export interface PostProvisioningInstancesRequest { slug: string; target_ref?: string; hosting_shape?: string; domain?: string; no_address?: boolean; tier?: string; onboard_mode?: string; type?: string; description?: string; detail?: Record<string, unknown>; modules?: string[]; terms_acknowledged?: boolean; demo?: Record<string, unknown> }
|
|
426
|
+
export interface PostProvisioningPhysicsCheckRequest { description?: string; detail?: Record<string, unknown> }
|
|
427
|
+
export interface PostProvisioningPhysicsCheckResponse { stop: boolean; message: unknown; soft_limits: unknown }
|
|
426
428
|
export interface PostProvisioningRenderLookupRequest { key: string; owner_id?: string }
|
|
427
429
|
export interface PostRemovalProposalsIdDecideRequest { verdict: string; note?: string }
|
|
428
430
|
export interface PostRenderDeployActRequest { action?: string; deployId?: string; confirm?: unknown; expectLiveDeployId?: unknown }
|
|
@@ -471,6 +473,8 @@ export interface PostStoreModulesKeyAcquireResponse { ok: boolean; module_key: u
|
|
|
471
473
|
export interface PostStoreModulesKeyAcquiredRequest { version: string }
|
|
472
474
|
export interface PostStoreModulesKeyAcquiredResponse { ok: boolean; entitlement: unknown }
|
|
473
475
|
export interface PostStoreModulesKeyVersionsResponse { ok: boolean; created_module: unknown; version: unknown }
|
|
476
|
+
export interface PostStoreModulesKeyVersionsVersionReassessRequest { reason?: string }
|
|
477
|
+
export interface PostStoreModulesKeyVersionsVersionReassessResponse { ok: boolean; queued: boolean; module_key: unknown; version: unknown; version_id: unknown }
|
|
474
478
|
export interface PostTaskRecommendationsRequest { task_id: number; recommended_to: number; reason: string }
|
|
475
479
|
export interface PostTaskRecommendationsResponse { ok: boolean; recommendation: unknown }
|
|
476
480
|
export interface PostTasksIdAttestGateRequest { head_sha: string }
|
|
@@ -1334,6 +1338,8 @@ export interface BongosClient {
|
|
|
1334
1338
|
getProvisioningLogosFile(args?: RequestArgs): Promise<ApiResponse>;
|
|
1335
1339
|
/** GET /provisioning/onboard-plan — rank: public */
|
|
1336
1340
|
getProvisioningOnboardPlan(args?: RequestArgs): Promise<GetProvisioningOnboardPlanResponse>;
|
|
1341
|
+
/** POST /provisioning/physics-check — rank: any-builder */
|
|
1342
|
+
postProvisioningPhysicsCheck(args?: RequestArgs & { body?: PostProvisioningPhysicsCheckRequest }): Promise<PostProvisioningPhysicsCheckResponse>;
|
|
1337
1343
|
/** GET /provisioning/recommendations — rank: public */
|
|
1338
1344
|
getProvisioningRecommendations(args?: RequestArgs): Promise<GetProvisioningRecommendationsResponse>;
|
|
1339
1345
|
/** POST /provisioning/render/lookup — rank: any-builder */
|
|
@@ -1532,6 +1538,8 @@ export interface BongosClient {
|
|
|
1532
1538
|
postStoreModulesKeyVersions(args?: RequestArgs): Promise<PostStoreModulesKeyVersionsResponse>;
|
|
1533
1539
|
/** GET /store/modules/{key}/versions/{version}/howto — rank: any-builder */
|
|
1534
1540
|
getStoreModulesKeyVersionsVersionHowto(args?: RequestArgs): Promise<GetStoreModulesKeyVersionsVersionHowtoResponse>;
|
|
1541
|
+
/** POST /store/modules/{key}/versions/{version}/reassess — rank: metic+archon */
|
|
1542
|
+
postStoreModulesKeyVersionsVersionReassess(args?: RequestArgs & { body?: PostStoreModulesKeyVersionsVersionReassessRequest }): Promise<PostStoreModulesKeyVersionsVersionReassessResponse>;
|
|
1535
1543
|
/** GET /store/modules/{key}/versions/{version}/tarball — rank: any-builder */
|
|
1536
1544
|
getStoreModulesKeyVersionsVersionTarball(args?: RequestArgs): Promise<ApiResponse>;
|
|
1537
1545
|
/** GET /store/modules/latest — rank: any-builder */
|
|
@@ -883,6 +883,8 @@ export function createClient(opts = {}) {
|
|
|
883
883
|
getProvisioningLogosFile: (args) => request("GET", "/provisioning/logos/{file}", { hasBody: false }, args),
|
|
884
884
|
// GET /provisioning/onboard-plan — rank: public — GET /provisioning/onboard-plan
|
|
885
885
|
getProvisioningOnboardPlan: (args) => request("GET", "/provisioning/onboard-plan", { hasBody: false }, args),
|
|
886
|
+
// POST /provisioning/physics-check — rank: any-builder — POST /provisioning/physics-check
|
|
887
|
+
postProvisioningPhysicsCheck: (args) => request("POST", "/provisioning/physics-check", { hasBody: true }, args),
|
|
886
888
|
// GET /provisioning/recommendations — rank: public — GET /provisioning/recommendations
|
|
887
889
|
getProvisioningRecommendations: (args) => request("GET", "/provisioning/recommendations", { hasBody: false }, args),
|
|
888
890
|
// POST /provisioning/render/lookup — rank: any-builder — POST /provisioning/render/lookup
|
|
@@ -1081,6 +1083,8 @@ export function createClient(opts = {}) {
|
|
|
1081
1083
|
postStoreModulesKeyVersions: (args) => request("POST", "/store/modules/{key}/versions", { hasBody: true }, args),
|
|
1082
1084
|
// GET /store/modules/{key}/versions/{version}/howto — rank: any-builder — GET /store/modules/:key/versions/:version/howto
|
|
1083
1085
|
getStoreModulesKeyVersionsVersionHowto: (args) => request("GET", "/store/modules/{key}/versions/{version}/howto", { hasBody: false }, args),
|
|
1086
|
+
// POST /store/modules/{key}/versions/{version}/reassess — rank: metic+archon — POST /store/modules/:key/versions/:version/reassess
|
|
1087
|
+
postStoreModulesKeyVersionsVersionReassess: (args) => request("POST", "/store/modules/{key}/versions/{version}/reassess", { hasBody: true }, args),
|
|
1084
1088
|
// GET /store/modules/{key}/versions/{version}/tarball — rank: any-builder — GET /store/modules/:key/versions/:version/tarball
|
|
1085
1089
|
getStoreModulesKeyVersionsVersionTarball: (args) => request("GET", "/store/modules/{key}/versions/{version}/tarball", { hasBody: false }, args),
|
|
1086
1090
|
// GET /store/modules/latest — rank: any-builder — GET /store/modules/latest
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# ADR 0359 — Nobody sets a module's score by hand; a Metic+ person can ask for a re-check
|
|
2
|
+
|
|
3
|
+
- **Status:** accepted
|
|
4
|
+
- **Date:** 2026-10-01
|
|
5
|
+
- **Task:** [task 1003796](https://cloudbongos.com/builders#/task/1003796) (goal 1000091 — working area 5, Module distribution & economy; criterion `wa5-quality-assessed`)
|
|
6
|
+
- **Amends:** [ADR 0343](0343-a-module-score-is-a-security-gate-then-an-average-of-visible-parts.md) D6 (the Metic+ score override) and [ADR 0347](0347-every-store-module-ships-a-how-to.md) D5 ("the Metic+ override applies to Docs like any part").
|
|
7
|
+
- **Keeps:** ADR 0343 D6's delist (task 1003797) and "every action is recorded"; ADR 0347 D6's "Metic+ re-runs it" for a Docs grade that could not run.
|
|
8
|
+
- **Decided with:** the owner (Will, Archon), 2026-10-01: "I don't think someone should be able to override a module's score. Maybe trigger a regrade but not change it." Metic and Archon may trigger it; the permission grant migration was approved the same day.
|
|
9
|
+
|
|
10
|
+
## Context
|
|
11
|
+
|
|
12
|
+
ADR 0343 D6 put a Metic+ override on top of the computed score, because an automated score will sometimes be wrong and a human-review-only panel does not scale. Task 1003796 was to build it. Before any code was written the owner ruled the other way: a score a person can type in is a score a person can sell, and the reason field does not change that.
|
|
13
|
+
|
|
14
|
+
## Decision
|
|
15
|
+
|
|
16
|
+
### D1 — No route sets, raises or lowers a score
|
|
17
|
+
|
|
18
|
+
A module version's score only ever comes from its signals, composed by `scripts/gds/module-assess-score.js`. There is no override route, and the `kind = 'override'` rows `core_265` allows for are never written. The column and its CHECKs stay (removing them is a migration with nothing to gain); a test asserts no store route writes `module_assessment_scores`.
|
|
19
|
+
|
|
20
|
+
### D2 — A Metic+ person can ask for a re-check, with a reason
|
|
21
|
+
|
|
22
|
+
`POST /api/bongos/store/modules/:key/versions/:version/reassess { reason }` queues the same assessment a publish runs (`assessVersion`): Tests `pending` if there is no Tests result yet, the Security gate, the Docs grader, then the score. It answers 202, or 503 when the assessment queue is full. A reason is required and nothing else is accepted in the body, so a score cannot ride along. The audit middleware records who asked and why.
|
|
23
|
+
|
|
24
|
+
This is how a wrong score gets corrected: if a signal was wrong because a check failed to run (the grader was down, npm could not be reached), the re-check runs it again. If a check itself is wrong, that is a bug in the check, fixed in code for every module.
|
|
25
|
+
|
|
26
|
+
### D3 — Metic and Archon, through one new atom
|
|
27
|
+
|
|
28
|
+
The route is gated by `module.assessment.rerun` (floor `metic`, not a system key) in `modules/government/catalog.js`, granted to `metic` and `archon` by `government_021_module_assessment_rerun.sql`. It is Metic+ and not open to every builder because each re-check spends a Docs grader call (up to 5¢, ADR 0347 D6) and re-runs the npm audit.
|
|
29
|
+
|
|
30
|
+
## Consequences
|
|
31
|
+
|
|
32
|
+
- An author who thinks their score is wrong asks a Metic+ person to re-check it, or reports a bug in the check. Neither path lets anyone pick the number.
|
|
33
|
+
- A re-check can lower a score as well as raise it: it is whatever the checks say now.
|
|
34
|
+
- The delist (task 1003797) is unchanged: it hides a module from the store, it does not change a score.
|
|
35
|
+
|
|
36
|
+
## Rejected
|
|
37
|
+
|
|
38
|
+
- **The override as ADR 0343 D6 planned it.** The owner's call (above).
|
|
39
|
+
- **An override that only lowers a score.** It is still a person choosing the number.
|
|
40
|
+
- **Re-checks for every builder.** Each one costs money; Metic+ keeps that spend with trusted people.
|
package/docs/adr/README.md
CHANGED
|
@@ -477,3 +477,4 @@ These 20 numbers are each shared by exactly two files. They are **accepted histo
|
|
|
477
477
|
| 0356 | [**A recruit invite expires 30 days after it is sent, decided at read time** ([task 1002969](https://cloudbongos.com/builders#/task/1002969), goal 1000110 — privacy spec D4, owner-signed). **D1:** one definition, `src/bongos/invite-expiry.js` (`INVITE_EXPIRY_DAYS` + the SQL), read by the sign-in gate, the waiting-page probe, the onboarding routes and, through the doorway's `inviteExpiry`, the hub. Nothing is stored and nothing sweeps. **D2:** only `kind='invite'` rows expire; approved applications and goal invites do not. **D3:** amends ADR 0335 D2.5: the gate reads `kind` only inside the expiry unit, which can close a door and never open one. **D4:** an expired invite is refused, marked `expired` + `expires_at` in the queues, reported `expired` by the status probe (the CLI stops), and replaced by a re-invite's fresh row. **D5:** the hub hides a `pending` notice past 30 days and a re-invite restamps it. Split out: `seen_at` (task 1004443), the decline relay (task 1004444).](0356-a-recruit-invite-expires-30-days-after-it-is-sent-read-time.md) | platform identity / admission / invites |
|
|
478
478
|
| 0357 | [**The update rule set on /deploy is the one the sweep follows** ([task 1004468](https://cloudbongos.com/builders#/task/1004468), goal 1000090 — BONGOS-V2, owner's ruling 2026-09-30). Amends [ADR 0136](0136-update-channel-subscription-policy.md)'s rejected DB-column alternative. **D1:** for a roster entry whose slug matches a `provisioning_instances` row, the unattended sweep uses that row's `update_channel` (set on /deploy, task 1004445). **D2:** the roster's `channel` is only the fallback — no matching row, or the database unreadable; enrollment and topology stay in the roster. **D3:** the sweep logs each entry's channel and its source, naming an overridden roster value. **D4:** read over psql from the sweep's own `DATABASE_URL`/`PGDATABASE`, never an entry's `env`. **D5:** nothing is copied; a row never changed is `patch`. Delivery to cloudbongos.com waits on the frozen sweep checkout (task 1004307). Rejected: roster stays in charge; stricter-of-the-two; copying roster values into rows.](0357-the-update-rule-set-on-deploy-is-the-one-the-sweep-follows.md) | distribution / updates |
|
|
479
479
|
| 0358 | [**A hall wears a look, and its night takes a tint of it** ([task 1004421](https://cloudbongos.com/builders#/task/1004421), goal 1000121 — BV2.PS06; owner D2 + D8, 2026-09-30). Amends [ADR 0219](0219-a-look-is-a-branding-pack-the-style-library.md) (a look could not carry a dark ground) and DESIGN.md's pure-black rule, for halls only. **D1:** the night tint is a formula over the thirteen — the four dark grounds take 5–6% of the look's accent (src/night-tint.js), emitted after the sheet as both dark twins; no token added. **D2:** on by default, and only a chosen look turns it on — a hall with no look is unchanged. **D3:** the apex and hub stay pure black (ADR 0204). **D4:** a custom look is ONE accent for both modes, its lightness nudged until every pair the hall paints with it reads (lookAdjustAccent, client copy test-pinned). **D5:** look + night_tint join the provisioning settings vocabulary; the accent and logo address ride as companion env; the instance resolves the look from the style library. **D6:** a logo is PNG/JPEG/WebP ≤256 KB, magic-sniffed, never SVG, served content-addressed; it is the hall mark and the favicon. Rejected: per-look dark palettes, two custom accents, refusing an unreadable accent, sending the palette over env.](0358-a-hall-wears-a-look-and-its-night-takes-a-tint.md) | hall / branding / design world |
|
|
480
|
+
| 0359 | [**Nobody sets a module's score by hand; a Metic+ person can ask for a re-check** ([task 1003796](https://cloudbongos.com/builders#/task/1003796) · goal 1000091, criterion `wa5-quality-assessed`). Amends [ADR 0343](0343-a-module-score-is-a-security-gate-then-an-average-of-visible-parts.md) D6 and [ADR 0347](0347-every-store-module-ships-a-how-to.md) D5 on the owner's ruling: there is no score override. A score only ever comes from its signals. Instead `POST /store/modules/:key/versions/:version/reassess { reason }`, gated by the new `module.assessment.rerun` atom (metic floor, granted to metic + archon by `government_021`), queues the same assessment a publish runs. A reason is required and nothing else is accepted. The delist (task 1003797) is unchanged.](0359-nobody-sets-a-module-score-by-hand-metic-can-ask-for-a-re-check.md) | module store / assessment / permissions |
|