@bongos/core 1.19.1026 → 1.19.1028

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/.bongos-core.json +77 -37
  2. package/clients/bongos-client/README.md +1 -1
  3. package/clients/bongos-client/bongos-client.global.js +38 -0
  4. package/clients/bongos-client/index.cjs +38 -0
  5. package/clients/bongos-client/index.d.ts +60 -0
  6. package/clients/bongos-client/index.mjs +38 -0
  7. package/docs/adr/0213-platform-terms-acceptance-is-the-hubs-own-witness.md +4 -2
  8. package/docs/api/openapi.json +1345 -182
  9. package/docs/api-reference.md +29 -2
  10. package/docs/copy-inventory.md +209 -201
  11. package/docs/copy-registry.json +329 -257
  12. package/docs/module-api-changelog.md +4 -0
  13. package/modules/hall-ui/public/builders.js +7 -4
  14. package/modules/platform-identity/connections.js +1 -0
  15. package/modules/platform-identity/guilds.js +705 -0
  16. package/modules/platform-identity/migrations/platform_identity_025_guilds.sql +100 -0
  17. package/modules/platform-identity/module.json +1 -1
  18. package/modules/platform-identity/read-rate-limit.js +3 -2
  19. package/modules/platform-identity/routes/guilds-public.js +57 -0
  20. package/modules/platform-identity/routes/guilds.js +393 -0
  21. package/modules/platform-identity/terms-acceptance.js +14 -5
  22. package/modules/public-landing/public/assets/cosmos.css +36 -0
  23. package/modules/public-landing/public/projects.html +229 -26
  24. package/modules/public-landing/public/terms.html +3 -3
  25. package/modules/ui-design/kit/fixtures/my-projects__invites.json +1 -0
  26. package/modules/ui-design/kit/serve.js +12 -1
  27. package/package-lock.json +2 -2
  28. package/package.json +1 -1
  29. package/scripts/gds/run-unit-tests.js +5 -0
  30. package/src/module-api.js +1 -1
  31. package/tests/card_apply_ui.mjs +8 -1
  32. package/tests/curve_controls_delegation.mjs +87 -0
  33. package/tests/guilds_api.mjs +521 -0
  34. package/tests/guilds_db.mjs +343 -0
  35. package/tests/my_projects_surface.mjs +26 -14
  36. package/tests/own_scope_guard.mjs +5 -0
  37. package/tests/public_landing_projects.mjs +40 -0
  38. package/tests/terms_acceptance.mjs +74 -28
  39. package/tests/terms_grandfather_db.mjs +2 -2
@@ -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. 420 endpoints across 72 route files.
5
+ > **Generated from the live route files** — the route file is authoritative. 437 endpoints across 74 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`.
@@ -332,6 +332,31 @@ Base path: `/api/bongos`. Ranks (enforced server-side, [ADR 0016](adr/0016-trust
332
332
  |---|---|---|---|---|
333
333
  | GET | `/api/bongos/grades/by-builder` | `metic+archon` | — | GET /grades/by-builder?days=30 — per-builder grade breakdown (task 726). |
334
334
 
335
+ ## `guild-requests` (3)
336
+
337
+ | Method | Path | Rank | Body | Description |
338
+ |---|---|---|---|---|
339
+ | DELETE | `/api/bongos/guild-requests/:id` | `any-builder` | — | cancel a row I opened: my request, or (as owner) an invite my guild sent. |
340
+ | POST | `/api/bongos/guild-requests/:id/accept` | `any-builder` | `visibility`, `counted_in_totals` | accept an invite addressed to ME, or (as the guild's owner) a request to join it. |
341
+ | POST | `/api/bongos/guild-requests/:id/decline` | `any-builder` | — | decline an invite to ME, or (as owner) a request to my guild. |
342
+
343
+ ## `guilds` (12)
344
+
345
+ | Method | Path | Rank | Body | Description |
346
+ |---|---|---|---|---|
347
+ | POST | `/api/bongos/guilds` | `any-builder` | `slug`, `name`, `description`, `visibility` | create a guild. |
348
+ | GET | `/api/bongos/guilds/:slug` | `public` | — | a public guild's page data. |
349
+ | PATCH | `/api/bongos/guilds/:slug` | `any-builder` | `name`, `description`, `visibility` | owner: edit name, description or visibility. |
350
+ | DELETE | `/api/bongos/guilds/:slug` | `any-builder` | — | owner: dissolve. |
351
+ | POST | `/api/bongos/guilds/:slug/invites` | `any-builder` | `handles` | owner: invite up to INVITE_BATCH_MAX builders by handle, each an ordinary individual invite (ADR 0336 D3). |
352
+ | GET | `/api/bongos/guilds/:slug/members` | `any-builder` | — | the members' roster, for members only (the own-scope door to an unlisted guild, ADR 0336 D4). |
353
+ | DELETE | `/api/bongos/guilds/:slug/members/:handle` | `any-builder` | — | owner: remove a member (never the owner). |
354
+ | PATCH | `/api/bongos/guilds/:slug/membership` | `any-builder` | `shown_publicly`, `counted_in_totals` | MY switches in one guild: shown on its public page (ADR 0336 D4) and counted in its totals (ADR 0337 D4.4). |
355
+ | DELETE | `/api/bongos/guilds/:slug/membership` | `any-builder` | — | leave. |
356
+ | GET | `/api/bongos/guilds/:slug/requests` | `any-builder` | — | owner: the join requests to decide and the invites still out. |
357
+ | POST | `/api/bongos/guilds/:slug/requests` | `any-builder` | `counted_in_totals` | ask to join. |
358
+ | POST | `/api/bongos/guilds/:slug/transfer` | `any-builder` | `handle` | owner: hand ownership to an existing member. |
359
+
335
360
  ## `healthz` (1)
336
361
 
337
362
  | Method | Path | Rank | Body | Description |
@@ -406,7 +431,7 @@ Base path: `/api/bongos`. Ranks (enforced server-side, [ADR 0016](adr/0016-trust
406
431
  | POST | `/api/bongos/llm-cache/lookup` | `metic+archon` | `cache_key`, `tokens_saved_est` | POST /llm-cache/lookup — hit/miss + atomic hit_count bump. |
407
432
  | POST | `/api/bongos/llm-cache/store` | `metic+archon` | `spec`, `result_stdout`, `result_cost_usd` | POST /llm-cache/store — upsert a freshly-produced result. |
408
433
 
409
- ## `me` (32)
434
+ ## `me` (34)
410
435
 
411
436
  | Method | Path | Rank | Body | Description |
412
437
  |---|---|---|---|---|
@@ -421,6 +446,8 @@ Base path: `/api/bongos`. Ranks (enforced server-side, [ADR 0016](adr/0016-trust
421
446
  | PATCH | `/api/bongos/me/display-name` | `any-builder` | _undocumented_ | PATCH the display name. |
422
447
  | GET | `/api/bongos/me/event-sound-prefs` | `any-builder` | — | Per-builder per-event sound variant selection (task 582, migration 164). |
423
448
  | PATCH | `/api/bongos/me/event-sound-prefs` | `any-builder` | _undocumented_ | PATCH a partial set of event sound overrides. |
449
+ | GET | `/api/bongos/me/guild-requests` | `any-builder` | — | MY queue: invites addressed to me, each carrying the card (the guild's current visibility, which an accept must echo back), and the join … |
450
+ | GET | `/api/bongos/me/guilds` | `any-builder` | — | MY guilds, each with my own two switches. |
424
451
  | PATCH | `/api/bongos/me/handle` | `any-builder` | `handle` | rename the caller's OWN handle (own data, keyed on the authenticated github_id). |
425
452
  | GET | `/api/bongos/me/interaction` | `any-builder` | — | Per-builder INTERACTION PROFILE (task 2010, shares the behavior_prefs jsonb / migration 119). |
426
453
  | PATCH | `/api/bongos/me/interaction` | `any-builder` | _undocumented_ | PATCH the interaction profile. |