@bongos/core 1.23.17 → 1.23.19

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 (59) hide show
  1. package/.bongos-core.json +109 -54
  2. package/clients/bongos-client/README.md +1 -1
  3. package/clients/bongos-client/bongos-client.global.js +2 -0
  4. package/clients/bongos-client/index.cjs +2 -0
  5. package/clients/bongos-client/index.d.ts +2 -0
  6. package/clients/bongos-client/index.mjs +2 -0
  7. package/docs/api/openapi.json +22 -1
  8. package/docs/api-reference.md +3 -2
  9. package/docs/copy-inventory.md +985 -934
  10. package/docs/copy-registry.json +1829 -1309
  11. package/docs/module-api-changelog.md +4 -0
  12. package/docs/page-inventory.json +10 -2
  13. package/docs/page-readings.json +601 -576
  14. package/modules/copy-desk/auto-close.js +9 -3
  15. package/modules/copy-desk/page-status.js +25 -13
  16. package/modules/copy-desk/tests/copy_page_auto_close.mjs +8 -0
  17. package/modules/copy-desk/tests/copy_page_status.mjs +2 -2
  18. package/modules/platform-identity/builder-of-the-week.js +48 -20
  19. package/modules/platform-identity/community-crowns.js +176 -0
  20. package/modules/platform-identity/community-leaderboard.js +1 -1
  21. package/modules/platform-identity/migrations/platform_identity_033_period_features.sql +43 -0
  22. package/modules/platform-identity/routes/community-leaderboard.js +25 -3
  23. package/modules/public-landing/public/account.html +3 -2
  24. package/modules/public-landing/public/community-crowns-first.states.json +15 -0
  25. package/modules/public-landing/public/community-crowns-new-year.states.json +15 -0
  26. package/modules/public-landing/public/community-crowns-none.states.json +15 -0
  27. package/modules/public-landing/public/community-empty.states.json +1 -1
  28. package/modules/public-landing/public/community-owner-two.states.json +2 -2
  29. package/modules/public-landing/public/community-owner.states.json +1 -1
  30. package/modules/public-landing/public/community-week-none.states.json +1 -1
  31. package/modules/public-landing/public/community.html +130 -22
  32. package/modules/public-landing/public/community.probes.json +20 -3
  33. package/modules/public-landing/public/community.states.json +8 -6
  34. package/modules/public-landing/public/connections.html +3 -2
  35. package/modules/public-landing/public/contact.html +3 -2
  36. package/modules/public-landing/public/guild.html +3 -2
  37. package/modules/public-landing/public/index.html +3 -2
  38. package/modules/public-landing/public/invitations.html +3 -2
  39. package/modules/public-landing/public/privacy.html +3 -2
  40. package/modules/public-landing/public/projects.html +3 -2
  41. package/modules/public-landing/public/terms.html +3 -2
  42. package/modules/ui-design/kit/fixtures/community-crowns-first.json +6 -0
  43. package/modules/ui-design/kit/fixtures/community-crowns-new-year.json +6 -0
  44. package/modules/ui-design/kit/fixtures/community-crowns-none.json +6 -0
  45. package/modules/ui-design/kit/fixtures/community-crowns.json +6 -0
  46. package/modules/ui-design/kit/serve.js +14 -0
  47. package/package-lock.json +2 -2
  48. package/package.json +1 -1
  49. package/release-notes.json +12 -0
  50. package/scripts/bongos/run-unit-tests.js +4 -0
  51. package/src/module-api.js +1 -1
  52. package/src/platform-server.js +4 -3
  53. package/tests/community_crowns.mjs +369 -0
  54. package/tests/community_crowns_db.mjs +164 -0
  55. package/tests/copy_stuck_page_tweaks.mjs +39 -2
  56. package/tests/hub_account_page.mjs +2 -2
  57. package/tests/hub_community_page.mjs +144 -29
  58. package/tests/landing_legal_pages.mjs +2 -2
  59. package/tests/privacy_matrix.mjs +68 -9
package/.bongos-core.json CHANGED
@@ -2,22 +2,22 @@
2
2
  "artifact": "bongos-core",
3
3
  "manifest_schema": 1,
4
4
  "generator": "scripts/bongos/package-core.js",
5
- "core_version": "1.23.17",
6
- "core_contract": "1.23.17",
7
- "source_commit": "4a502e79527cf82113e88b2023d3008dfbae984f",
5
+ "core_version": "1.23.19",
6
+ "core_contract": "1.23.19",
7
+ "source_commit": "4ad8fcf713c394ba1c297a191e3c7aea2d0e0449",
8
8
  "source_ref": "HEAD",
9
- "built_at": "2026-10-28T00:35:19.416Z",
9
+ "built_at": "2026-10-28T01:08:50.297Z",
10
10
  "redaction": {
11
11
  "model": "docs-redacted+functional-verbatim",
12
12
  "docs_redacted": 616,
13
13
  "agent_docs_stubbed": 29,
14
- "functional_verbatim": 3587,
14
+ "functional_verbatim": 3598,
15
15
  "rules": 3,
16
16
  "gate_literals": 3,
17
17
  "gate": "passed"
18
18
  },
19
- "file_count": 4233,
20
- "tree_sha256": "99139b31ab3e5e0d6fb9464e6ad1295547d3b7dad361ee272235333df79fc8a2",
19
+ "file_count": 4244,
20
+ "tree_sha256": "ba24d43249f8fe1cb24ec13dc8d33544c21e9e06473e1d51ba333eaa27f12ff2",
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": "4da84cd14f4eeda4b4284b99921e3f6e880d3f02ef92ae4459af8a3ff289ef7a"
320
+ "sha256": "79c5a3fd4bdc3e6b990c1b0287668a03cbfffc823ee248863ce7379ed5e01398"
321
321
  },
322
322
  {
323
323
  "path": "clients/bongos-client/bongos-client.global.js",
324
324
  "mode": "0000644",
325
- "sha256": "66609065049de2236380a355d77ddf5cd682d6ad03af987348e0213d320812e6"
325
+ "sha256": "a6f4ebbbb501e8ce1db9227a737095d179e3a0d98a9481e72cf546acd6417354"
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": "6bed987d75e18c64d9bf2de1b308ee87bb3d696e9c331b3d8a64b690b33f569c"
335
+ "sha256": "7ff003cf2657264dd69093d958dcaa2627076ea6508c5c04a81478fc903cc573"
336
336
  },
337
337
  {
338
338
  "path": "clients/bongos-client/index.d.ts",
339
339
  "mode": "0000644",
340
- "sha256": "1960a037dacd417d769b883943ec9c02444d437d1ea6b9063ab45e5a738b35a5"
340
+ "sha256": "b529b802225022e2ca8e06f790b08a34f44e796c4af5da05605645d33d3845f8"
341
341
  },
342
342
  {
343
343
  "path": "clients/bongos-client/index.mjs",
344
344
  "mode": "0000644",
345
- "sha256": "c32138d824308fc11afdf51dbbcd4c82322bfe36a8cde6abc419ce8cf9a42843"
345
+ "sha256": "8a3793fbe64b8026f675fc60d7fbd1f53f9ddf7cd269c6620cbb228cdd8f36b9"
346
346
  },
347
347
  {
348
348
  "path": "clients/bongos-client/package.json",
@@ -2392,12 +2392,12 @@
2392
2392
  {
2393
2393
  "path": "docs/api-reference.md",
2394
2394
  "mode": "0000644",
2395
- "sha256": "816a66b2c0cc57b08ad4094a33e230f3b6197ab0ef725782014dadcd9e0672ad"
2395
+ "sha256": "a4276761d4fbc75b218afa0e9902791d1529cd37ce29d37706d7924213c350a1"
2396
2396
  },
2397
2397
  {
2398
2398
  "path": "docs/api/openapi.json",
2399
2399
  "mode": "0000644",
2400
- "sha256": "acf5c62e5a7925d9eaa439116746b330d12d780a53ae5729f905d0ce8c6673fe"
2400
+ "sha256": "7407a04a6e1d9f3f53287154d65171afaf5be8d502e0e724cc1fafd97289f818"
2401
2401
  },
2402
2402
  {
2403
2403
  "path": "docs/architecture.md",
@@ -2422,12 +2422,12 @@
2422
2422
  {
2423
2423
  "path": "docs/copy-inventory.md",
2424
2424
  "mode": "0000644",
2425
- "sha256": "69cb0fe832f44eefdde865a12e78cf7d59e617c49d0a8ba1a973b0f389b4fb8a"
2425
+ "sha256": "ccbec7e1c62090ef907ee18c7e2a291dca81b1fa7c8d1e104bdd1f11669aa92b"
2426
2426
  },
2427
2427
  {
2428
2428
  "path": "docs/copy-registry.json",
2429
2429
  "mode": "0000644",
2430
- "sha256": "b804aa72056e19c5348b9d8e3be47007bc62aa6e8d6dd9c34439b360d2d7d23e"
2430
+ "sha256": "acdf83859065c94261bedae6b7db744077e093d471bdc7cac9a71dae973ed04c"
2431
2431
  },
2432
2432
  {
2433
2433
  "path": "docs/design/apex-pass-2-direction.md",
@@ -2937,7 +2937,7 @@
2937
2937
  {
2938
2938
  "path": "docs/module-api-changelog.md",
2939
2939
  "mode": "0000644",
2940
- "sha256": "4bc6873970f7d2632aea896316a31aaef5a2cc6fd51cfa69f1609974b999cb67"
2940
+ "sha256": "daeaefcd9ebd113aca27a745aa2d157ed9acfd7074130f71c4ead3cbd038b5e2"
2941
2941
  },
2942
2942
  {
2943
2943
  "path": "docs/modules-contract.md",
@@ -3022,12 +3022,12 @@
3022
3022
  {
3023
3023
  "path": "docs/page-inventory.json",
3024
3024
  "mode": "0000644",
3025
- "sha256": "a7d660669dc5d71c369f6bbee0b1cba3e696ab1a80f55a2babefca3d10112515"
3025
+ "sha256": "c7f804fd5300c3e01effa55b57e8652104cd4d69dddb3f1b24f8967a15a2b42f"
3026
3026
  },
3027
3027
  {
3028
3028
  "path": "docs/page-readings.json",
3029
3029
  "mode": "0000644",
3030
- "sha256": "1779c6f06aa087cee66120b5ef52c9dafe0d4889a755d9762df044223576b257"
3030
+ "sha256": "6556c6d37f0394738759f0b76bb27710043ecea0b6c1ead6b2e6f50186527fec"
3031
3031
  },
3032
3032
  {
3033
3033
  "path": "docs/project-context.template.md",
@@ -4487,7 +4487,7 @@
4487
4487
  {
4488
4488
  "path": "modules/copy-desk/auto-close.js",
4489
4489
  "mode": "0000644",
4490
- "sha256": "e27d2856bdc6e61116e486c053a353bde07c36ac5d850dce278e5d3c1e4135d0"
4490
+ "sha256": "f9f4e8e009fab44c47fd3651c5d44da94cec1fd4cb7ad0931515fadbd6526280"
4491
4491
  },
4492
4492
  {
4493
4493
  "path": "modules/copy-desk/docx.js",
@@ -4537,7 +4537,7 @@
4537
4537
  {
4538
4538
  "path": "modules/copy-desk/page-status.js",
4539
4539
  "mode": "0000644",
4540
- "sha256": "de12a5dd005cb8ab8f078cc2295af5fb220f09e0ca21192719698ab9037b57be"
4540
+ "sha256": "0d3ae54e54203d62a6b8b7874706a478476d2c22f680ed92dc6d91d2c8285c3e"
4541
4541
  },
4542
4542
  {
4543
4543
  "path": "modules/copy-desk/pages.js",
@@ -4607,7 +4607,7 @@
4607
4607
  {
4608
4608
  "path": "modules/copy-desk/tests/copy_page_auto_close.mjs",
4609
4609
  "mode": "0000644",
4610
- "sha256": "ec7b6b3ec7f974f79abe5ffdcfb08668ec11477599b021303335374b3e7c59ec"
4610
+ "sha256": "f992174839c4f2be3c3a6f942c27493a5a7081e46ce01293f9075ce9a26330be"
4611
4611
  },
4612
4612
  {
4613
4613
  "path": "modules/copy-desk/tests/copy_page_draft.mjs",
@@ -4622,7 +4622,7 @@
4622
4622
  {
4623
4623
  "path": "modules/copy-desk/tests/copy_page_status.mjs",
4624
4624
  "mode": "0000644",
4625
- "sha256": "f968af0d0f0bd8d1202816ae1d660c9bd75f706997167a75c2a09c8a9d8ed579"
4625
+ "sha256": "e90260a6fc9b95c65efd1aa1488c88f7344d94e6d315055a52648d4c92f416dc"
4626
4626
  },
4627
4627
  {
4628
4628
  "path": "modules/copy-desk/tests/copy_proposals.mjs",
@@ -8337,7 +8337,7 @@
8337
8337
  {
8338
8338
  "path": "modules/platform-identity/builder-of-the-week.js",
8339
8339
  "mode": "0000644",
8340
- "sha256": "6befae58e116de26c980eb2c884046a5fae8712c0c18d44e1cac00af960ccb88"
8340
+ "sha256": "7b705fec856e46721d2c05d1d8d640dc382d1aaa6ddb88c814f4d0beb2aeb207"
8341
8341
  },
8342
8342
  {
8343
8343
  "path": "modules/platform-identity/builder-search.js",
@@ -8349,10 +8349,15 @@
8349
8349
  "mode": "0000644",
8350
8350
  "sha256": "2aa433ba293545a313972f88b1143d74551cb6ec4e06747906ff7e3c365f4e6a"
8351
8351
  },
8352
+ {
8353
+ "path": "modules/platform-identity/community-crowns.js",
8354
+ "mode": "0000644",
8355
+ "sha256": "d1900adec86f1692abe53ed6b3b5cf1b14bb824282042c2138a61365ad26e31c"
8356
+ },
8352
8357
  {
8353
8358
  "path": "modules/platform-identity/community-leaderboard.js",
8354
8359
  "mode": "0000644",
8355
- "sha256": "1c4320a626d9709a0cde1227cb1c7f6afc3f25aef76ddb6673b3e96860cbc6cc"
8360
+ "sha256": "775e9a06d3ee59e00940efb56ace3ace33ae3eac446830d5aa5a0f022ae12e8a"
8356
8361
  },
8357
8362
  {
8358
8363
  "path": "modules/platform-identity/connection-suggestions.js",
@@ -8579,6 +8584,11 @@
8579
8584
  "mode": "0000644",
8580
8585
  "sha256": "b210431bc8681b59196875cce7ef1707ff789b07ec7e7c2b81f79977e61f8512"
8581
8586
  },
8587
+ {
8588
+ "path": "modules/platform-identity/migrations/platform_identity_033_period_features.sql",
8589
+ "mode": "0000644",
8590
+ "sha256": "70ff57aba579b9bf28846f018f607ebc1015711f2daa2b41eda3ed7bde343d15"
8591
+ },
8582
8592
  {
8583
8593
  "path": "modules/platform-identity/module.json",
8584
8594
  "mode": "0000644",
@@ -8642,7 +8652,7 @@
8642
8652
  {
8643
8653
  "path": "modules/platform-identity/routes/community-leaderboard.js",
8644
8654
  "mode": "0000644",
8645
- "sha256": "1edccbc8b17367a1595767019967977fa2cddbf93cb4587a1a96f71a4ce5e134"
8655
+ "sha256": "d894205af0e6b09007f9f7e2044df2cc777512ed6706078d1f53e278c0645c44"
8646
8656
  },
8647
8657
  {
8648
8658
  "path": "modules/platform-identity/routes/community-search.js",
@@ -9227,7 +9237,7 @@
9227
9237
  {
9228
9238
  "path": "modules/public-landing/public/account.html",
9229
9239
  "mode": "0000644",
9230
- "sha256": "6d97cfe2d3597cf9982d3bca781f06d4e25c74957c5a347ea0748da75e8d7a77"
9240
+ "sha256": "c6ca513faa51133efa0de4333c9ecbc278285af6549cedc869ca3ce2d8a7b042"
9231
9241
  },
9232
9242
  {
9233
9243
  "path": "modules/public-landing/public/account.probes.json",
@@ -9829,20 +9839,35 @@
9829
9839
  "mode": "0000644",
9830
9840
  "sha256": "411319a732791bee09e15b745229b70319488427a492a5edabade5a38461fb4c"
9831
9841
  },
9842
+ {
9843
+ "path": "modules/public-landing/public/community-crowns-first.states.json",
9844
+ "mode": "0000644",
9845
+ "sha256": "d80640e24acc1080b421fb9e5b3b43467ab8e494f0f9755d1f97c8de40bc0050"
9846
+ },
9847
+ {
9848
+ "path": "modules/public-landing/public/community-crowns-new-year.states.json",
9849
+ "mode": "0000644",
9850
+ "sha256": "e306b5f8402e43b3aa1957303c2b46c180d3c6478d567ca9ba8ea37752213849"
9851
+ },
9852
+ {
9853
+ "path": "modules/public-landing/public/community-crowns-none.states.json",
9854
+ "mode": "0000644",
9855
+ "sha256": "9e9ec1de075eb91a9c898414263c2384ec694f0d4709697029d6aee3762b7867"
9856
+ },
9832
9857
  {
9833
9858
  "path": "modules/public-landing/public/community-empty.states.json",
9834
9859
  "mode": "0000644",
9835
- "sha256": "f44b34538c9e7d7b1cd192af443b43ed06af3feacfd81a071eb452825d979ce5"
9860
+ "sha256": "e72473cca01f7a7dfae6845c15fec51324e07df20dd863aa48351612a80b71d0"
9836
9861
  },
9837
9862
  {
9838
9863
  "path": "modules/public-landing/public/community-owner-two.states.json",
9839
9864
  "mode": "0000644",
9840
- "sha256": "0b42fa004cae5102e03f42a6eea528c51bb7215e8d2935e8c25e2739fac76733"
9865
+ "sha256": "3783b8feba01d197546c842f7a20a3972d6315b36663b08b8e6de26cfdda3ba4"
9841
9866
  },
9842
9867
  {
9843
9868
  "path": "modules/public-landing/public/community-owner.states.json",
9844
9869
  "mode": "0000644",
9845
- "sha256": "666ce0c0c97ef8a6525e9c90781960b799a46244fca4fb93c1aea92ffefaf3b7"
9870
+ "sha256": "de7c92d3924401b6eb57cf8d21114cd11c9bc90a9c5c9028639bcaedcbe64a7c"
9846
9871
  },
9847
9872
  {
9848
9873
  "path": "modules/public-landing/public/community-recruiter.states.json",
@@ -9852,22 +9877,22 @@
9852
9877
  {
9853
9878
  "path": "modules/public-landing/public/community-week-none.states.json",
9854
9879
  "mode": "0000644",
9855
- "sha256": "fa177829c0178711172bad57b4e31c79ef02b64d2fa6fc6397f9d756a3ae0655"
9880
+ "sha256": "ad4e17280e101caefcb8ca973bf0e8d8ec359dcb4a019e9769d8d93258cb1a03"
9856
9881
  },
9857
9882
  {
9858
9883
  "path": "modules/public-landing/public/community.html",
9859
9884
  "mode": "0000644",
9860
- "sha256": "973873c0e367af8dcb7f795dfe683158784d77c4570b5bf5d38514096ec26687"
9885
+ "sha256": "58ac39588ef2d54988beda37c306e6ad985851fa6d3ab273f6c30a47dbbdacfb"
9861
9886
  },
9862
9887
  {
9863
9888
  "path": "modules/public-landing/public/community.probes.json",
9864
9889
  "mode": "0000644",
9865
- "sha256": "258dd5c2237bbec20b7da1ffae9f6ceface46100e0d0f7696c44eec1c88e94fd"
9890
+ "sha256": "6603802ed1b8ca50025045f0247df1245674dbaec1595644454924cc6d1b5be7"
9866
9891
  },
9867
9892
  {
9868
9893
  "path": "modules/public-landing/public/community.states.json",
9869
9894
  "mode": "0000644",
9870
- "sha256": "392008c5a7e797ff9f9cfc859ea4f5c70ae9ae46abd82ddab14c907690b10e2c"
9895
+ "sha256": "96d66b58f30b255d0a7b0bc37f2188be0f360da76c392a031f9da7fc68eba902"
9871
9896
  },
9872
9897
  {
9873
9898
  "path": "modules/public-landing/public/connections-empty.states.json",
@@ -9887,7 +9912,7 @@
9887
9912
  {
9888
9913
  "path": "modules/public-landing/public/connections.html",
9889
9914
  "mode": "0000644",
9890
- "sha256": "be4069955f2747514697bc65fbcb098de8d7596e54355bf459986e94e6cd49d3"
9915
+ "sha256": "4c4d353504c75d7169f2f71f89f4630e168371ebbc8faabf1a564dbaacc58b85"
9891
9916
  },
9892
9917
  {
9893
9918
  "path": "modules/public-landing/public/connections.probes.json",
@@ -9902,12 +9927,12 @@
9902
9927
  {
9903
9928
  "path": "modules/public-landing/public/contact.html",
9904
9929
  "mode": "0000644",
9905
- "sha256": "1775bd50cc1cab8ee6c3cd3c33faae39479ad48feaf6ef69a1ab90350bfe3341"
9930
+ "sha256": "598e824d9a980d1b4983c8a2207d113ecef61e59be47abe9928315e48f268910"
9906
9931
  },
9907
9932
  {
9908
9933
  "path": "modules/public-landing/public/guild.html",
9909
9934
  "mode": "0000644",
9910
- "sha256": "62c6993e28e166592baaa1a0e522c70175d6f7e894be6f4a0e86edb2a6ef29f1"
9935
+ "sha256": "2316d187ddeee68e24f4a234f3595b058f87b6ed4add321f0fa058ef8ec2d1e7"
9911
9936
  },
9912
9937
  {
9913
9938
  "path": "modules/public-landing/public/guild.probes.json",
@@ -9927,7 +9952,7 @@
9927
9952
  {
9928
9953
  "path": "modules/public-landing/public/index.html",
9929
9954
  "mode": "0000644",
9930
- "sha256": "f7da522708878b88a6283e0ed21c943a1f4dfb16032cccd55cc8edeeaea812cf"
9955
+ "sha256": "cea81efcf9557f56a6af927d6d4d10b3ce3670bff53f9ed3e99cf71abd33669f"
9931
9956
  },
9932
9957
  {
9933
9958
  "path": "modules/public-landing/public/index.probes.json",
@@ -9952,7 +9977,7 @@
9952
9977
  {
9953
9978
  "path": "modules/public-landing/public/invitations.html",
9954
9979
  "mode": "0000644",
9955
- "sha256": "91150f39682565a63978d9dcda0373d41239b7041548247df148d8fab44578b7"
9980
+ "sha256": "b236f72386705e37f3399bf4dd4abdcc2552479c97b43dc549d4449df5d9df57"
9956
9981
  },
9957
9982
  {
9958
9983
  "path": "modules/public-landing/public/invitations.probes.json",
@@ -9967,7 +9992,7 @@
9967
9992
  {
9968
9993
  "path": "modules/public-landing/public/privacy.html",
9969
9994
  "mode": "0000644",
9970
- "sha256": "38f2dc344228435fba8da201a3530b7eb333dcc63dd1db830206db397937368e"
9995
+ "sha256": "e5474c0ae5a2cefb794884d02ec20ee9fd4b75fbdd9d3b40255d2d26305f39ca"
9971
9996
  },
9972
9997
  {
9973
9998
  "path": "modules/public-landing/public/projects-demo.states.json",
@@ -10002,7 +10027,7 @@
10002
10027
  {
10003
10028
  "path": "modules/public-landing/public/projects.html",
10004
10029
  "mode": "0000644",
10005
- "sha256": "d8bbf5f8ffec0d6921ab151a059a3f45844994d64d4082340c969efd4a8fd45e"
10030
+ "sha256": "3113c7005943e2ad144c2f5e0a4fa76bf71101704960d1fad0849f82138b87d1"
10006
10031
  },
10007
10032
  {
10008
10033
  "path": "modules/public-landing/public/projects.probes.json",
@@ -10017,7 +10042,7 @@
10017
10042
  {
10018
10043
  "path": "modules/public-landing/public/terms.html",
10019
10044
  "mode": "0000644",
10020
- "sha256": "f674c7f919abaf3c7353407d5362811d64b554a54d86f98369eae2aecfeac713"
10045
+ "sha256": "7af59dcb1fe10a50ba409b21a6e49c9254f57c46d9f4c57bab15c638604512e7"
10021
10046
  },
10022
10047
  {
10023
10048
  "path": "modules/raise/CLAUDE.md",
@@ -10554,6 +10579,26 @@
10554
10579
  "mode": "0000644",
10555
10580
  "sha256": "c1cdbe61fabf472bbdad6ae0fd57bf47ea455bd5066e6cc65460025b0e9e1317"
10556
10581
  },
10582
+ {
10583
+ "path": "modules/ui-design/kit/fixtures/community-crowns-first.json",
10584
+ "mode": "0000644",
10585
+ "sha256": "ffb54a68b00cba0fbc8e406e51dba34abb22bdf8e902450f29b98a1c63152140"
10586
+ },
10587
+ {
10588
+ "path": "modules/ui-design/kit/fixtures/community-crowns-new-year.json",
10589
+ "mode": "0000644",
10590
+ "sha256": "7ba94e7f8cae59f0aaa443cc47bcee238eb12a0b5e7949bb673626cd85a07334"
10591
+ },
10592
+ {
10593
+ "path": "modules/ui-design/kit/fixtures/community-crowns-none.json",
10594
+ "mode": "0000644",
10595
+ "sha256": "d7cf122de12d79d6f5f997c2c9ac60086556cbb13587b3e5f6299d7669365598"
10596
+ },
10597
+ {
10598
+ "path": "modules/ui-design/kit/fixtures/community-crowns.json",
10599
+ "mode": "0000644",
10600
+ "sha256": "067c36034369c975be31a2710617a60781b1f4614bbb6424e2e058fd14ab111e"
10601
+ },
10557
10602
  {
10558
10603
  "path": "modules/ui-design/kit/fixtures/community-leaderboard-empty.json",
10559
10604
  "mode": "0000644",
@@ -10822,7 +10867,7 @@
10822
10867
  {
10823
10868
  "path": "modules/ui-design/kit/serve.js",
10824
10869
  "mode": "0000644",
10825
- "sha256": "293748c99cce0e02245b6b44a838387bceb103e4031ba40aa384b1097647dce5"
10870
+ "sha256": "714696e55adc67ff91a5cbac10ddbfabf74794aacc5c25eb169b50b83a401179"
10826
10871
  },
10827
10872
  {
10828
10873
  "path": "modules/ui-design/kit/tells.js",
@@ -10957,12 +11002,12 @@
10957
11002
  {
10958
11003
  "path": "package-lock.json",
10959
11004
  "mode": "0000644",
10960
- "sha256": "22b8b7bf76a70bbd3bbb57ed0ab3f53657cf2a989eb6acc8578022311932e5c1"
11005
+ "sha256": "82713dbba7f4835fcb19c5cc80d885a83d8c63ab330e4c3ee2d38e7d8bf2bd01"
10961
11006
  },
10962
11007
  {
10963
11008
  "path": "package.json",
10964
11009
  "mode": "0000644",
10965
- "sha256": "a9218f9cc690dc0c929a5fe7b6a4fccb6a0103f08c1637d09be5c2d23b96b035"
11010
+ "sha256": "24f40b67675ebfbadfc277a7a308f0e88ac01f55c0f87c6b2f0dd243c52d2cec"
10966
11011
  },
10967
11012
  {
10968
11013
  "path": "public-docs/index.html",
@@ -10982,7 +11027,7 @@
10982
11027
  {
10983
11028
  "path": "release-notes.json",
10984
11029
  "mode": "0000644",
10985
- "sha256": "d1193b47af93db407c4fe4ec5a227fdd5c97bd8ebeaa5d1f2c9b0a4c0fab32ca"
11030
+ "sha256": "d55b5891b6a12139c09546c4b094abf097d91fc4c1d4fa8404dc10739e56d229"
10986
11031
  },
10987
11032
  {
10988
11033
  "path": "scripts/bongos/CLAUDE.md",
@@ -12232,7 +12277,7 @@
12232
12277
  {
12233
12278
  "path": "scripts/bongos/run-unit-tests.js",
12234
12279
  "mode": "0000644",
12235
- "sha256": "c89993e3683b2e952f6bb3dbfdbb344c4f64ae8da5e4f9881d0081c4aaa39177"
12280
+ "sha256": "8ee05ad9595d77c4c64901f18b2ae4f00840253cead3c879187167e321ee1c35"
12236
12281
  },
12237
12282
  {
12238
12283
  "path": "scripts/bongos/runner-drift.js",
@@ -14857,7 +14902,7 @@
14857
14902
  {
14858
14903
  "path": "src/module-api.js",
14859
14904
  "mode": "0000644",
14860
- "sha256": "e28e39ed8813e02cf4f2689fdf369d45ea3631a6fb6f2994cfaa0089eb4898c1"
14905
+ "sha256": "bf912bb89bf9a6d852c81172cc86846b73168f70639f34ebe4170cad3f96117d"
14861
14906
  },
14862
14907
  {
14863
14908
  "path": "src/module-loader/catalog.js",
@@ -14907,7 +14952,7 @@
14907
14952
  {
14908
14953
  "path": "src/platform-server.js",
14909
14954
  "mode": "0000644",
14910
- "sha256": "e0239114bec3d0fcd567cb7b2dfbfc97beef68901fb026aaccddc2bd6b165cbc"
14955
+ "sha256": "1d47f2451ca14f78d576e8fa310feb799287e7b29a6936513c637ea68d1da530"
14911
14956
  },
14912
14957
  {
14913
14958
  "path": "src/role-responsibilities.js",
@@ -15779,6 +15824,16 @@
15779
15824
  "mode": "0000644",
15780
15825
  "sha256": "654e70af16092ed0dc76c058b245863c8470b8c3441c39e4c4f5bfd40f60c138"
15781
15826
  },
15827
+ {
15828
+ "path": "tests/community_crowns.mjs",
15829
+ "mode": "0000644",
15830
+ "sha256": "bbda55bc60bf23f010ff32caa7f6d39a58f6f30d3d3b5b930aeba6dd09771a0e"
15831
+ },
15832
+ {
15833
+ "path": "tests/community_crowns_db.mjs",
15834
+ "mode": "0000644",
15835
+ "sha256": "32b7053ed03a9ebbd898ffc5a82a8949cbef7a6e28dee65aaf4f5a78292835dc"
15836
+ },
15782
15837
  {
15783
15838
  "path": "tests/community_leaderboard_db.mjs",
15784
15839
  "mode": "0000644",
@@ -15907,7 +15962,7 @@
15907
15962
  {
15908
15963
  "path": "tests/copy_stuck_page_tweaks.mjs",
15909
15964
  "mode": "0000644",
15910
- "sha256": "d0a860520d482be8014a036d183e570f789195597891c367c16ee7e817825e2a"
15965
+ "sha256": "e53e4b7c768b0e1b5cb2343d174eba8886586678cc3d3a70560d107faa88a1f5"
15911
15966
  },
15912
15967
  {
15913
15968
  "path": "tests/core_258_box_session_claims_db.mjs",
@@ -17777,12 +17832,12 @@
17777
17832
  {
17778
17833
  "path": "tests/hub_account_page.mjs",
17779
17834
  "mode": "0000644",
17780
- "sha256": "425109ec469e9462f8855d605e1eb1088c91d739ba84a9f28c6ba752902ec0b8"
17835
+ "sha256": "0fbcec7a0f77ff149a5b2d8486e7e239101816acdcf81bea8b54207803d400ae"
17781
17836
  },
17782
17837
  {
17783
17838
  "path": "tests/hub_community_page.mjs",
17784
17839
  "mode": "0000644",
17785
- "sha256": "db02acf76f0f49954aa7b10260bc3b84ffec14a96fbb81bfd26a6af9a9b12258"
17840
+ "sha256": "a24f7da4a97db16dd8690b1314854d6fc7d6971eb9631a8940456902b3db1b86"
17786
17841
  },
17787
17842
  {
17788
17843
  "path": "tests/hub_connections_page.mjs",
@@ -18237,7 +18292,7 @@
18237
18292
  {
18238
18293
  "path": "tests/landing_legal_pages.mjs",
18239
18294
  "mode": "0000644",
18240
- "sha256": "6e6e141395f8a6d9b7fc068df539161f21bd8c5284739c01f195cb97320202c0"
18295
+ "sha256": "739f05ce3cb98871dfe958c092585035dce7a766c6ce9e1fafae52cd694d51b9"
18241
18296
  },
18242
18297
  {
18243
18298
  "path": "tests/landing_page.mjs",
@@ -19137,7 +19192,7 @@
19137
19192
  {
19138
19193
  "path": "tests/privacy_matrix.mjs",
19139
19194
  "mode": "0000644",
19140
- "sha256": "e671e54ce28bb2c93b31e3e5172698d718149594752a6f6f71c3b9fe3c1aba1e"
19195
+ "sha256": "3648f58b368d275b2307d2316999edeb9c9086c70f92740b97ebb605043d30c4"
19141
19196
  },
19142
19197
  {
19143
19198
  "path": "tests/probe_cache.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
- - 585 operations across 76 resource groups
8
+ - 586 operations across 76 resource groups
9
9
 
10
10
  ## Use it from your project
11
11
 
@@ -275,6 +275,8 @@ function createClient(opts = {}) {
275
275
  "community": {
276
276
  // GET /community/builder-of-the-week — rank: public — GET /community/builder-of-the-week
277
277
  getCommunityBuilderOfTheWeek: (args) => request("GET", "/community/builder-of-the-week", { hasBody: false }, args),
278
+ // GET /community/crowns — rank: public — GET /community/crowns
279
+ getCommunityCrowns: (args) => request("GET", "/community/crowns", { hasBody: false }, args),
278
280
  // GET /community/leaderboard — rank: public — GET /community/leaderboard
279
281
  getCommunityLeaderboard: (args) => request("GET", "/community/leaderboard", { hasBody: false }, args),
280
282
  // GET /community/search — rank: public — GET /community/search
@@ -274,6 +274,8 @@ function createClient(opts = {}) {
274
274
  "community": {
275
275
  // GET /community/builder-of-the-week — rank: public — GET /community/builder-of-the-week
276
276
  getCommunityBuilderOfTheWeek: (args) => request("GET", "/community/builder-of-the-week", { hasBody: false }, args),
277
+ // GET /community/crowns — rank: public — GET /community/crowns
278
+ getCommunityCrowns: (args) => request("GET", "/community/crowns", { hasBody: false }, args),
277
279
  // GET /community/leaderboard — rank: public — GET /community/leaderboard
278
280
  getCommunityLeaderboard: (args) => request("GET", "/community/leaderboard", { hasBody: false }, args),
279
281
  // GET /community/search — rank: public — GET /community/search
@@ -836,6 +836,8 @@ export interface BongosClient {
836
836
  "community": {
837
837
  /** GET /community/builder-of-the-week — rank: public */
838
838
  getCommunityBuilderOfTheWeek(args?: RequestArgs): Promise<ApiResponse>;
839
+ /** GET /community/crowns — rank: public */
840
+ getCommunityCrowns(args?: RequestArgs): Promise<ApiResponse>;
839
841
  /** GET /community/leaderboard — rank: public */
840
842
  getCommunityLeaderboard(args?: RequestArgs): Promise<GetCommunityLeaderboardResponse>;
841
843
  /** GET /community/search — rank: public */
@@ -271,6 +271,8 @@ export function createClient(opts = {}) {
271
271
  "community": {
272
272
  // GET /community/builder-of-the-week — rank: public — GET /community/builder-of-the-week
273
273
  getCommunityBuilderOfTheWeek: (args) => request("GET", "/community/builder-of-the-week", { hasBody: false }, args),
274
+ // GET /community/crowns — rank: public — GET /community/crowns
275
+ getCommunityCrowns: (args) => request("GET", "/community/crowns", { hasBody: false }, args),
274
276
  // GET /community/leaderboard — rank: public — GET /community/leaderboard
275
277
  getCommunityLeaderboard: (args) => request("GET", "/community/leaderboard", { hasBody: false }, args),
276
278
  // GET /community/search — rank: public — GET /community/search
@@ -3865,6 +3865,27 @@
3865
3865
  "security": []
3866
3866
  }
3867
3867
  },
3868
+ "/community/crowns": {
3869
+ "get": {
3870
+ "operationId": "get_community_crowns",
3871
+ "tags": [
3872
+ "community"
3873
+ ],
3874
+ "summary": "GET /community/crowns",
3875
+ "description": "the builders of the week, the month and the year (task 1004902): the week and month as crowned, the year so far. Takes no parameters; the first read after a week, month or year ends also records it (one row per period). Viewer-independent; no-store so a winner who hides leaves the page on the next read (ADR 0171 D5).\n\n**Rank:** `public` — No authentication — any caller.",
3876
+ "x-rank": "public",
3877
+ "x-source": "modules/platform-identity/routes/community-leaderboard.js",
3878
+ "responses": {
3879
+ "200": {
3880
+ "description": "Success."
3881
+ },
3882
+ "400": {
3883
+ "$ref": "#/components/responses/BadRequest"
3884
+ }
3885
+ },
3886
+ "security": []
3887
+ }
3888
+ },
3868
3889
  "/community/leaderboard": {
3869
3890
  "get": {
3870
3891
  "operationId": "get_community_leaderboard",
@@ -37404,7 +37425,7 @@
37404
37425
  "description": "A required dependency/feature is not configured or is temporarily down."
37405
37426
  }
37406
37427
  },
37407
- "x-endpoint-count": 585,
37428
+ "x-endpoint-count": 586,
37408
37429
  "x-schema-count": 628,
37409
37430
  "x-undocumented-bodies": 12,
37410
37431
  "x-response-schemas": 406,
@@ -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. 585 endpoints across 98 route files.
5
+ > **Generated from the live route files** — the route file is authoritative. 586 endpoints across 98 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`.
@@ -165,11 +165,12 @@ Base path: `/api/bongos`. Ranks (enforced server-side, [ADR 0016](adr/0016-trust
165
165
  | GET | `/api/bongos/closeness/weights` | `any-builder` | — | the MODEL is not private, and publishing it is the whole point of the weights being data. |
166
166
  | GET | `/api/bongos/closeness/with/:builderId` | `any-builder` | — | One pair — "why am I close to THEM", asked directly rather than by paging the graph. |
167
167
 
168
- ## `community` (3)
168
+ ## `community` (4)
169
169
 
170
170
  | Method | Path | Rank | Body | Description |
171
171
  |---|---|---|---|---|
172
172
  | GET | `/api/bongos/community/builder-of-the-week` | `public` | — | Builder of the Week (spec D5; task 1002981): the last full week's winner and the weeks before it. |
173
+ | GET | `/api/bongos/community/crowns` | `public` | — | the builders of the week, the month and the year (task 1004902): the week and month as crowned, the year so far. |
173
174
  | GET | `/api/bongos/community/leaderboard` | `public` | — | the cross-project leaderboard (?window=7d\|30d\|365d\|all, default all; ?discipline=; ?limit=&offset=). |
174
175
  | GET | `/api/bongos/community/search` | `public` | — | a name/discipline search under EXACTLY the public-profile visibility rules (D4): a hide_stats account is findable by name but drops out o… |
175
176