@bongos/core 1.25.20 → 1.25.22

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 (99) hide show
  1. package/.bongos-core.json +213 -78
  2. package/clients/bongos-client/README.md +1 -1
  3. package/clients/bongos-client/bongos-client.global.js +18 -0
  4. package/clients/bongos-client/index.cjs +18 -0
  5. package/clients/bongos-client/index.d.ts +34 -8
  6. package/clients/bongos-client/index.mjs +18 -0
  7. package/docs/adr/0406-every-project-gets-a-sandbox-that-follows-main-and-live-moves-only-when-a-person-promotes.md +18 -0
  8. package/docs/adr/0407-a-project-grant-is-made-by-the-owner-not-witnessed-at-sign-in.md +3 -1
  9. package/docs/api/openapi.json +693 -125
  10. package/docs/api-reference.md +13 -4
  11. package/docs/copy-inventory.md +432 -427
  12. package/docs/copy-registry.json +571 -526
  13. package/docs/file-map.md +1 -0
  14. package/docs/module-api-changelog.md +4 -0
  15. package/docs/page-readings.json +350 -344
  16. package/modules/government/board.js +8 -7
  17. package/modules/government/charter-advice.js +10 -3
  18. package/modules/government/charter.js +88 -4
  19. package/modules/government/migrations/government_039_vote_cast_via_filed.sql +22 -0
  20. package/modules/government/routes/government.js +12 -12
  21. package/modules/government/sole-member.js +75 -0
  22. package/modules/hall-ui/public/genesis-home.js +12 -5
  23. package/modules/lifecycle/kickoff-checklist.js +1 -1
  24. package/modules/lifecycle/routes/pay-type-gates.js +7 -2
  25. package/modules/onboarding/genesis-home.js +14 -2
  26. package/modules/onboarding/project-facts.js +318 -0
  27. package/modules/onboarding/routes/genesis-work.js +16 -0
  28. package/modules/platform-identity/module.json +1 -1
  29. package/modules/platform-identity/project-standing.js +49 -0
  30. package/modules/platform-identity/routes/my-projects.js +8 -0
  31. package/modules/provisioning/grants.js +126 -0
  32. package/modules/provisioning/migrations/provisioning_038_render_promote.sql +43 -0
  33. package/modules/provisioning/migrations/provisioning_039_project_grants.sql +40 -0
  34. package/modules/provisioning/module.json +2 -1
  35. package/modules/provisioning/project-facts.js +55 -0
  36. package/modules/provisioning/project-refusal.js +107 -0
  37. package/modules/provisioning/provisioning.js +6 -3
  38. package/modules/provisioning/render-lookup.js +36 -1
  39. package/modules/provisioning/render-promote.js +80 -0
  40. package/modules/provisioning/render-sandbox.js +6 -0
  41. package/modules/provisioning/route-helpers.js +70 -16
  42. package/modules/provisioning/routes/env-manifest.js +21 -5
  43. package/modules/provisioning/routes/grants.js +141 -0
  44. package/modules/provisioning/routes/provisioning.js +8 -7
  45. package/modules/provisioning/routes/render-standup.js +82 -3
  46. package/modules/public-landing/public/projects.html +290 -32
  47. package/package-lock.json +2 -2
  48. package/package.json +2 -1
  49. package/release-notes.json +32 -0
  50. package/scripts/bongos/genesis.js +49 -3
  51. package/scripts/bongos/government-walk-sole.js +41 -0
  52. package/scripts/bongos/government-walk.js +15 -16
  53. package/scripts/bongos/init.js +13 -0
  54. package/scripts/bongos/package-core.js +2 -0
  55. package/scripts/bongos/provision-render-common.js +48 -0
  56. package/scripts/bongos/provision-render-promote.js +93 -0
  57. package/scripts/bongos/provision-render-sandbox.js +19 -3
  58. package/scripts/bongos/provision-render.js +4 -36
  59. package/scripts/bongos/provision.js +1 -0
  60. package/scripts/bongos/render-api.js +17 -2
  61. package/scripts/bongos/render-payload.js +5 -2
  62. package/scripts/gds/government-walk-sole.js +6 -0
  63. package/scripts/gds/provision-render-common.js +6 -0
  64. package/scripts/gds/provision-render-promote.js +6 -0
  65. package/src/bongos/folder-upload.js +243 -0
  66. package/src/bongos/routes/github.js +109 -16
  67. package/src/bongos/routes.js +3 -0
  68. package/src/branding.js +4 -0
  69. package/src/module-api.js +1 -1
  70. package/src/sandbox/gate.js +164 -0
  71. package/src/sandbox/index.js +144 -0
  72. package/tests/fleet_cost_view.mjs +2 -0
  73. package/tests/folder_upload_project.mjs +396 -0
  74. package/tests/genesis_government.mjs +5 -1
  75. package/tests/genesis_home.mjs +17 -0
  76. package/tests/genesis_work_routes.mjs +25 -1
  77. package/tests/government_charter_advice.mjs +49 -0
  78. package/tests/government_charter_forms.mjs +14 -3
  79. package/tests/government_seed.mjs +1 -0
  80. package/tests/government_sole_member.mjs +153 -0
  81. package/tests/project_catalog_routes.mjs +2 -0
  82. package/tests/project_facts.mjs +158 -0
  83. package/tests/projects_hub.mjs +1 -1
  84. package/tests/provision_settings_apply.mjs +2 -1
  85. package/tests/provisioning_env_manifest.mjs +4 -0
  86. package/tests/provisioning_env_manifest_edit_delete.mjs +2 -0
  87. package/tests/provisioning_project_grants.mjs +458 -0
  88. package/tests/provisioning_project_owner_gate.mjs +3 -1
  89. package/tests/provisioning_project_refusal.mjs +316 -0
  90. package/tests/provisioning_render_route.mjs +1 -1
  91. package/tests/provisioning_restart.mjs +2 -0
  92. package/tests/provisioning_settings.mjs +2 -0
  93. package/tests/provisioning_settings_apply.mjs +1 -1
  94. package/tests/provisioning_settings_env.mjs +2 -2
  95. package/tests/provisioning_teardown_intent.mjs +2 -2
  96. package/tests/public_landing_projects.mjs +27 -5
  97. package/tests/render_promote.mjs +309 -0
  98. package/tests/render_sandbox.mjs +16 -8
  99. package/tests/sandbox_gate.mjs +182 -0
@@ -2,7 +2,7 @@
2
2
 
3
3
  # Bongos API reference
4
4
 
5
- > **Generated from the live route files** — the route file is authoritative. 731 endpoints across 124 route files.
5
+ > **Generated from the live route files** — the route file is authoritative. 740 endpoints across 125 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`.
@@ -333,7 +333,7 @@ Base path: `/api/bongos`. Ranks (enforced server-side, [ADR 0016](adr/0016-trust
333
333
  | POST | `/api/bongos/first-read/maps/:id/reject` | `metic+archon` | — | .create — the owner's no. |
334
334
  | GET | `/api/bongos/first-read/prompt` | `any-builder` | — | the prompt and the shape are instructions, not project data. |
335
335
 
336
- ## `founding` (19)
336
+ ## `founding` (22)
337
337
 
338
338
  | Method | Path | Rank | Body | Description |
339
339
  |---|---|---|---|---|
@@ -341,7 +341,10 @@ Base path: `/api/bongos`. Ranks (enforced server-side, [ADR 0016](adr/0016-trust
341
341
  | GET | `/api/bongos/founding/builders` | `any-builder` | — | The founding mark (task 1004424): who joined while the project was founding, in join order, with the stage each joined at. |
342
342
  | GET | `/api/bongos/founding/context` | `any-builder` | — | |
343
343
  | PUT | `/api/bongos/founding/enabled` | `any-builder` | `enabled` | The Test features panel's genesis switch (task 1005036): a test project only, the owner's call. |
344
+ | GET | `/api/bongos/founding/facts` | `any-builder` | — | The project's own facts and the legalize stage's options (task 1005129, ../project-facts.js): any builder reads them; the facts are the o… |
345
+ | PUT | `/api/bongos/founding/facts` | `any-builder` | `facts` | |
344
346
  | GET | `/api/bongos/founding/genesis` | `any-builder` | — | A project born through the startup flow enters genesis on its first founding read (founding-birth.js, task 1004506) — here and on GET /me… |
347
+ | GET | `/api/bongos/founding/legalize/options` | `any-builder` | — | |
345
348
  | POST | `/api/bongos/founding/plan` | `any-builder` | `days`, `passes`, `advisors`, `government`, `expected_builders`, `existing` | The plan's ranges and vocabularies are genesis-home.js parsePlan's (one source); this schema only names the fields so an unknown one is r… |
346
349
  | POST | `/api/bongos/founding/skip` | `any-builder` | — | Skip genesis: the owner opens the full hall from any stage, no sitting, no gate. |
347
350
  | POST | `/api/bongos/founding/stages/:stage/close` | `any-builder` | — | task 1005121: one call. |
@@ -370,7 +373,7 @@ Base path: `/api/bongos`. Ranks (enforced server-side, [ADR 0016](adr/0016-trust
370
373
  | GET | `/api/bongos/front-door-guide/mine/handoff.md` | `any-builder` | — | my plan as the hand-off file (task 1005274), offered as a download on the creation page. |
371
374
  | GET | `/api/bongos/front-door-guide/status` | `public` | — | the landing asks before it offers the chat. |
372
375
 
373
- ## `github` (8)
376
+ ## `github` (9)
374
377
 
375
378
  | Method | Path | Rank | Body | Description |
376
379
  |---|---|---|---|---|
@@ -382,6 +385,7 @@ Base path: `/api/bongos`. Ranks (enforced server-side, [ADR 0016](adr/0016-trust
382
385
  | POST | `/api/bongos/github/repo/visibility` | `any-builder` | `repo`, `visibility` | flips one of the caller's repos PUBLIC, with their own credential. |
383
386
  | GET | `/api/bongos/github/repos` | `any-builder` | — | acts only on the caller's OWN GitHub identity (the token they granted). |
384
387
  | POST | `/api/bongos/github/repos` | `any-builder` | `name`, `org` | creates a repo in the caller's OWN account, or (task 1004651) under an organisation they name in `org`. |
388
+ | POST | `/api/bongos/github/repos/upload` | `any-builder` | `name`, `org`, `into`, `files` | create a project's repository FROM A FOLDER the person uploaded (task 1005282): papers, artwork or scaffolding, for someone with no repos… |
385
389
 
386
390
  ## `goal-task-relevance` (2)
387
391
 
@@ -870,7 +874,7 @@ Base path: `/api/bongos`. Ranks (enforced server-side, [ADR 0016](adr/0016-trust
870
874
  | POST | `/api/bongos/projects/invite` | `metic+archon` | `client_id`, `github_login` | own-or-metic in effect: where to invite a builder into a project, asked by a `project.curate` holder OR the project's OWN OWNER (task 100… |
871
875
  | POST | `/api/bongos/projects/invite-guild` | `metic+archon` | `client_id`, `guild` | own-or-metic in effect, the SAME gate as POST /projects/invite above and for the same reasons (a non-inviter gets that route's unchanged … |
872
876
 
873
- ## `provisioning` (48)
877
+ ## `provisioning` (53)
874
878
 
875
879
  | Method | Path | Rank | Body | Description |
876
880
  |---|---|---|---|---|
@@ -899,6 +903,9 @@ Base path: `/api/bongos`. Ranks (enforced server-side, [ADR 0016](adr/0016-trust
899
903
  | POST | `/api/bongos/provisioning/instances/:id/force-teardown` | `metic+archon` | — | POST /provisioning/instances/:id/force-teardown — Archon tears down ANY instance. |
900
904
  | POST | `/api/bongos/provisioning/instances/:id/github-app` | `any-builder` | `account`, `org` | POST /provisioning/instances/:id/github-app — mint a GitHub-App-Manifest onboarding link for the caller's OWN instance (task 2080, ADR 01… |
901
905
  | POST | `/api/bongos/provisioning/instances/:id/github-app/pick-up` | `any-builder` | — | POST /provisioning/instances/:id/github-app/pick-up — "Pick up where it stopped" and "Check again" (task 1004652). |
906
+ | GET | `/api/bongos/provisioning/instances/:id/grants` | `any-builder` | — | GET /provisioning/instances/:id/grants — the project's live grants. |
907
+ | POST | `/api/bongos/provisioning/instances/:id/grants` | `any-builder` | `github_login` | POST /provisioning/instances/:id/grants { github_login } — give a person access. |
908
+ | DELETE | `/api/bongos/provisioning/instances/:id/grants/:grantId` | `any-builder` | — | DELETE /provisioning/instances/:id/grants/:grantId — take access back. |
902
909
  | GET | `/api/bongos/provisioning/instances/:id/invite-suggestions` | `any-builder` | — | ── Who is worth inviting (BV1.R28, task 1002347, goal 1000046 C6) ──────── GET /provisioning/instances/:id/invite-suggestions — turn the … |
903
910
  | PUT | `/api/bongos/provisioning/instances/:id/logo` | `any-builder` | `image_b64`, `content_type` | PUT …/logo — rank: any authenticated builder (own resource; archon may change any). |
904
911
  | DELETE | `/api/bongos/provisioning/instances/:id/logo` | `any-builder` | validated | DELETE …/logo — rank: any authenticated builder (own resource; archon may change any). |
@@ -906,6 +913,8 @@ Base path: `/api/bongos`. Ranks (enforced server-side, [ADR 0016](adr/0016-trust
906
913
  | PATCH | `/api/bongos/provisioning/instances/:id/look` | `any-builder` | `look`, `night_tint`, `accent` | PATCH — rank: any authenticated builder (own resource; archon may change any). |
907
914
  | GET | `/api/bongos/provisioning/instances/:id/render` | `any-builder` | — | GET /provisioning/instances/:id/render — rank: any authenticated builder, and OWNER ONLY, like the POST (task 1004353). |
908
915
  | POST | `/api/bongos/provisioning/instances/:id/render` | `any-builder` | `key`, `owner_id`, `mode`, `service_id`, `web_plan`, `db_plan`, `region`, `runtime`, `build_command`, `start_command`, `database` | POST /provisioning/instances/:id/render — rank: any authenticated builder, and OWNER ONLY: the key is the owner's and so is the account i… |
916
+ | POST | `/api/bongos/provisioning/instances/:id/render/promote` | `any-builder` | `key`, `commit_id`, `expect_live_commit` | POST /provisioning/instances/:id/render/promote — rank: any authenticated builder, and OWNER ONLY: the key and the live app are the owner… |
917
+ | POST | `/api/bongos/provisioning/instances/:id/render/promote/look` | `any-builder` | `key` | POST /provisioning/instances/:id/render/promote/look — rank: any authenticated builder, and OWNER ONLY. |
909
918
  | POST | `/api/bongos/provisioning/instances/:id/render/sandbox` | `any-builder` | `key` | POST /provisioning/instances/:id/render/sandbox — rank: any authenticated builder, and OWNER ONLY, like every Render route. |
910
919
  | POST | `/api/bongos/provisioning/instances/:id/repo-private` | `any-builder` | validated | POST /provisioning/instances/:id/repo-private — rank: any authenticated builder, and OWNER ONLY: no archon override, because the runner f… |
911
920
  | POST | `/api/bongos/provisioning/instances/:id/restart` | `any-builder` | — | POST /provisioning/instances/:id/restart — restart an ACTIVE project the heartbeat cannot reach (task 1003238). |