@bongos/core 1.25.17 → 1.25.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.
- package/.bongos-core.json +135 -65
- package/clients/bongos-client/README.md +1 -1
- package/clients/bongos-client/bongos-client.global.js +12 -0
- package/clients/bongos-client/index.cjs +12 -0
- package/clients/bongos-client/index.d.ts +17 -1
- package/clients/bongos-client/index.mjs +12 -0
- package/docs/adr/0408-a-genesis-stage-is-three-doors-onto-one-record.md +2 -1
- package/docs/api/openapi.json +288 -6
- package/docs/api-reference.md +14 -4
- package/docs/copy-inventory.md +132 -121
- package/docs/copy-registry.json +347 -195
- package/docs/file-map.md +2 -1
- package/docs/module-api-changelog.md +4 -0
- package/docs/page-inventory.json +3 -0
- package/docs/page-readings.json +63 -63
- package/modules/app-host/CLAUDE.md +15 -0
- package/modules/app-host/module.json +20 -0
- package/modules/app-host/public/settings-widget.js +143 -0
- package/modules/app-host/routes/app-host.js +88 -0
- package/modules/government/charter-advice.js +103 -0
- package/modules/government/presets.js +42 -0
- package/modules/government/recommendations.js +102 -7
- package/modules/government/routes/government.js +1 -0
- package/modules/hall-ui/public/genesis-home.js +28 -3
- package/modules/lifecycle/first-read-catalog.js +62 -0
- package/modules/lifecycle/first-read-db.js +47 -9
- package/modules/lifecycle/first-read.js +88 -23
- package/modules/lifecycle/migrations/lifecycle_023_repo_map_dismissed.sql +19 -0
- package/modules/lifecycle/routes/first-read.js +27 -5
- package/modules/onboarding/genesis-home.js +68 -7
- package/modules/onboarding/genesis-work.js +169 -4
- package/modules/onboarding/routes/genesis-work.js +5 -2
- package/modules/platform-identity/module.json +1 -1
- package/modules/platform-identity/routes/sso-app-status.js +65 -0
- package/modules/provisioning/module.json +1 -0
- package/modules/provisioning/seams.js +32 -1
- package/modules/provisioning/starter-bundles.js +1 -0
- package/modules/public-landing/public/assets/guide-core.js +475 -0
- package/modules/public-landing/public/assets/guide-hall.css +121 -0
- package/modules/public-landing/public/assets/guide-hall.js +164 -0
- package/modules/public-landing/public/assets/guide-scene.css +9 -0
- package/modules/public-landing/public/assets/guide-scene.js +58 -381
- package/modules/public-landing/public/index.html +46 -1
- package/modules/public-landing/public/projects.html +11 -2
- package/modules/ui-design/kit/serve.js +1 -1
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/release-notes.json +24 -0
- package/scripts/bongos/first-read.js +45 -11
- package/scripts/bongos/genesis.js +29 -2
- package/scripts/bongos/publish-manifest.js +1 -0
- package/scripts/bongos/seam-wiring-guard.js +3 -2
- package/scripts/hall-preview/server.js +2 -0
- package/src/bongos/auth-admission.js +64 -0
- package/src/bongos/auth.js +2 -1
- package/src/bongos/module-scope-map.js +4 -0
- package/src/bongos/routes/core-update.js +3 -16
- package/src/bongos/routes/modules.js +11 -0
- package/src/bongos/serve-internal.js +20 -6
- package/src/module-api.js +6 -1
- package/src/module-loader/loader.js +2 -2
- package/tests/app_host.mjs +413 -0
- package/tests/first_read.mjs +184 -8
- package/tests/genesis_home.mjs +81 -1
- package/tests/genesis_work.mjs +103 -3
- package/tests/genesis_work_routes.mjs +9 -0
- package/tests/government_charter_advice.mjs +150 -0
- package/tests/landing_guide_hall.mjs +364 -0
- package/tests/landing_guide_scene.mjs +8 -5
- package/tests/module_api.mjs +1 -0
- package/tests/module_loader.mjs +1 -1
- package/tests/npm_release_where.mjs +13 -3
|
@@ -154,6 +154,10 @@ function createClient(opts = {}) {
|
|
|
154
154
|
// GET /analytics/builder/{id} — rank: any-builder — GET /analytics/builder/:id
|
|
155
155
|
getAnalyticsBuilderId: (args) => request("GET", "/analytics/builder/{id}", { hasBody: false }, args),
|
|
156
156
|
},
|
|
157
|
+
"appHost": {
|
|
158
|
+
// GET /app-host — rank: any-builder — GET /app-host
|
|
159
|
+
getAppHost: (args) => request("GET", "/app-host", { hasBody: false }, args),
|
|
160
|
+
},
|
|
157
161
|
"artistGate": {
|
|
158
162
|
// GET /artist-gate — rank: any-builder — GET /artist-gate
|
|
159
163
|
getArtistGate: (args) => request("GET", "/artist-gate", { hasBody: false }, args),
|
|
@@ -469,12 +473,16 @@ function createClient(opts = {}) {
|
|
|
469
473
|
getFeedbackReceiptId: (args) => request("GET", "/feedback/receipt/{id}", { hasBody: false }, args),
|
|
470
474
|
},
|
|
471
475
|
"firstRead": {
|
|
476
|
+
// GET /first-read/catalog — rank: any-builder — GET /first-read/catalog
|
|
477
|
+
getFirstReadCatalog: (args) => request("GET", "/first-read/catalog", { hasBody: false }, args),
|
|
472
478
|
// POST /first-read/maps — rank: metic+archon — POST /first-read/maps
|
|
473
479
|
postFirstReadMaps: (args) => request("POST", "/first-read/maps", { hasBody: true }, args),
|
|
474
480
|
// GET /first-read/maps/{id} — rank: metic+archon — GET /first-read/maps/:id
|
|
475
481
|
getFirstReadMapsId: (args) => request("GET", "/first-read/maps/{id}", { hasBody: false }, args),
|
|
476
482
|
// POST /first-read/maps/{id}/accept — rank: metic+archon — POST /first-read/maps/:id/accept
|
|
477
483
|
postFirstReadMapsIdAccept: (args) => request("POST", "/first-read/maps/{id}/accept", { hasBody: true }, args),
|
|
484
|
+
// POST /first-read/maps/{id}/dismiss — rank: metic+archon — POST /first-read/maps/:id/dismiss
|
|
485
|
+
postFirstReadMapsIdDismiss: (args) => request("POST", "/first-read/maps/{id}/dismiss", { hasBody: true }, args),
|
|
478
486
|
// POST /first-read/maps/{id}/reject — rank: metic+archon — POST /first-read/maps/:id/reject
|
|
479
487
|
postFirstReadMapsIdReject: (args) => request("POST", "/first-read/maps/{id}/reject", { hasBody: true }, args),
|
|
480
488
|
// GET /first-read/prompt — rank: any-builder — GET /first-read/prompt
|
|
@@ -511,6 +519,8 @@ function createClient(opts = {}) {
|
|
|
511
519
|
getFoundingWorkStageAnswersQuestionHistory: (args) => request("GET", "/founding/work/{stage}/answers/{question}/history", { hasBody: false }, args),
|
|
512
520
|
// GET /founding/work/{stage}/assist — rank: any-builder — GET /founding/work/:stage/assist
|
|
513
521
|
getFoundingWorkStageAssist: (args) => request("GET", "/founding/work/{stage}/assist", { hasBody: false }, args),
|
|
522
|
+
// GET /founding/work/{stage}/document — rank: any-builder — GET /founding/work/:stage/document
|
|
523
|
+
getFoundingWorkStageDocument: (args) => request("GET", "/founding/work/{stage}/document", { hasBody: false }, args),
|
|
514
524
|
// PUT /founding/work/{stage}/door — rank: any-builder — PUT /founding/work/:stage/door
|
|
515
525
|
putFoundingWorkStageDoor: (args) => request("PUT", "/founding/work/{stage}/door", { hasBody: true }, args),
|
|
516
526
|
// PUT /founding/work/{stage}/link — rank: any-builder — PUT /founding/work/:stage/link
|
|
@@ -1515,6 +1525,8 @@ function createClient(opts = {}) {
|
|
|
1515
1525
|
"sso": {
|
|
1516
1526
|
// POST /sso/activity/rollup — rank: public — POST /sso/activity/rollup
|
|
1517
1527
|
postSsoActivityRollup: (args) => request("POST", "/sso/activity/rollup", { hasBody: true }, args),
|
|
1528
|
+
// POST /sso/app-status — rank: public — POST /sso/app-status
|
|
1529
|
+
postSsoAppStatus: (args) => request("POST", "/sso/app-status", { hasBody: true }, args),
|
|
1518
1530
|
// POST /sso/applicant-profile — rank: public — POST /sso/applicant-profile
|
|
1519
1531
|
postSsoApplicantProfile: (args) => request("POST", "/sso/applicant-profile", { hasBody: true }, args),
|
|
1520
1532
|
// GET /sso/authorize — rank: public — GET /sso/authorize
|
|
@@ -153,6 +153,10 @@ function createClient(opts = {}) {
|
|
|
153
153
|
// GET /analytics/builder/{id} — rank: any-builder — GET /analytics/builder/:id
|
|
154
154
|
getAnalyticsBuilderId: (args) => request("GET", "/analytics/builder/{id}", { hasBody: false }, args),
|
|
155
155
|
},
|
|
156
|
+
"appHost": {
|
|
157
|
+
// GET /app-host — rank: any-builder — GET /app-host
|
|
158
|
+
getAppHost: (args) => request("GET", "/app-host", { hasBody: false }, args),
|
|
159
|
+
},
|
|
156
160
|
"artistGate": {
|
|
157
161
|
// GET /artist-gate — rank: any-builder — GET /artist-gate
|
|
158
162
|
getArtistGate: (args) => request("GET", "/artist-gate", { hasBody: false }, args),
|
|
@@ -468,12 +472,16 @@ function createClient(opts = {}) {
|
|
|
468
472
|
getFeedbackReceiptId: (args) => request("GET", "/feedback/receipt/{id}", { hasBody: false }, args),
|
|
469
473
|
},
|
|
470
474
|
"firstRead": {
|
|
475
|
+
// GET /first-read/catalog — rank: any-builder — GET /first-read/catalog
|
|
476
|
+
getFirstReadCatalog: (args) => request("GET", "/first-read/catalog", { hasBody: false }, args),
|
|
471
477
|
// POST /first-read/maps — rank: metic+archon — POST /first-read/maps
|
|
472
478
|
postFirstReadMaps: (args) => request("POST", "/first-read/maps", { hasBody: true }, args),
|
|
473
479
|
// GET /first-read/maps/{id} — rank: metic+archon — GET /first-read/maps/:id
|
|
474
480
|
getFirstReadMapsId: (args) => request("GET", "/first-read/maps/{id}", { hasBody: false }, args),
|
|
475
481
|
// POST /first-read/maps/{id}/accept — rank: metic+archon — POST /first-read/maps/:id/accept
|
|
476
482
|
postFirstReadMapsIdAccept: (args) => request("POST", "/first-read/maps/{id}/accept", { hasBody: true }, args),
|
|
483
|
+
// POST /first-read/maps/{id}/dismiss — rank: metic+archon — POST /first-read/maps/:id/dismiss
|
|
484
|
+
postFirstReadMapsIdDismiss: (args) => request("POST", "/first-read/maps/{id}/dismiss", { hasBody: true }, args),
|
|
477
485
|
// POST /first-read/maps/{id}/reject — rank: metic+archon — POST /first-read/maps/:id/reject
|
|
478
486
|
postFirstReadMapsIdReject: (args) => request("POST", "/first-read/maps/{id}/reject", { hasBody: true }, args),
|
|
479
487
|
// GET /first-read/prompt — rank: any-builder — GET /first-read/prompt
|
|
@@ -510,6 +518,8 @@ function createClient(opts = {}) {
|
|
|
510
518
|
getFoundingWorkStageAnswersQuestionHistory: (args) => request("GET", "/founding/work/{stage}/answers/{question}/history", { hasBody: false }, args),
|
|
511
519
|
// GET /founding/work/{stage}/assist — rank: any-builder — GET /founding/work/:stage/assist
|
|
512
520
|
getFoundingWorkStageAssist: (args) => request("GET", "/founding/work/{stage}/assist", { hasBody: false }, args),
|
|
521
|
+
// GET /founding/work/{stage}/document — rank: any-builder — GET /founding/work/:stage/document
|
|
522
|
+
getFoundingWorkStageDocument: (args) => request("GET", "/founding/work/{stage}/document", { hasBody: false }, args),
|
|
513
523
|
// PUT /founding/work/{stage}/door — rank: any-builder — PUT /founding/work/:stage/door
|
|
514
524
|
putFoundingWorkStageDoor: (args) => request("PUT", "/founding/work/{stage}/door", { hasBody: true }, args),
|
|
515
525
|
// PUT /founding/work/{stage}/link — rank: any-builder — PUT /founding/work/:stage/link
|
|
@@ -1514,6 +1524,8 @@ function createClient(opts = {}) {
|
|
|
1514
1524
|
"sso": {
|
|
1515
1525
|
// POST /sso/activity/rollup — rank: public — POST /sso/activity/rollup
|
|
1516
1526
|
postSsoActivityRollup: (args) => request("POST", "/sso/activity/rollup", { hasBody: true }, args),
|
|
1527
|
+
// POST /sso/app-status — rank: public — POST /sso/app-status
|
|
1528
|
+
postSsoAppStatus: (args) => request("POST", "/sso/app-status", { hasBody: true }, args),
|
|
1517
1529
|
// POST /sso/applicant-profile — rank: public — POST /sso/applicant-profile
|
|
1518
1530
|
postSsoApplicantProfile: (args) => request("POST", "/sso/applicant-profile", { hasBody: true }, args),
|
|
1519
1531
|
// GET /sso/authorize — rank: public — GET /sso/authorize
|
|
@@ -75,7 +75,8 @@ export interface GetCoreUpgradesResponse { ok: boolean; running: unknown; limit:
|
|
|
75
75
|
export interface GetDiscordChannelsPlanResponse { ok: boolean; guild_id: unknown; op_count: unknown; ops: unknown; warnings: unknown }
|
|
76
76
|
export interface GetDiscordChannelsSnapshotResponse { ok: boolean; guild_id: unknown; config: unknown; warnings: unknown }
|
|
77
77
|
export interface GetDoneWhenPendingReviewResponse { criteria: unknown; count: unknown }
|
|
78
|
-
export interface
|
|
78
|
+
export interface GetFirstReadCatalogResponse { available: unknown; modules: unknown }
|
|
79
|
+
export interface GetFirstReadPromptResponse { schema: unknown; file: unknown; prompt: unknown; example: unknown; limits: unknown; catalog: unknown }
|
|
79
80
|
export interface GetFrontDoorGuideMineResponse { ok: boolean; conversation: unknown }
|
|
80
81
|
export interface GetGithubOrgsOrgResponse { org: unknown }
|
|
81
82
|
export interface GetGithubRepoResponse { ok: boolean; repo: unknown; private_deployable: boolean }
|
|
@@ -391,6 +392,7 @@ export interface PostDoneWhenCriterionIdUnsatisfyResponse { criterion: unknown }
|
|
|
391
392
|
export interface PostFeedbackReceiptRequest { sha256: string; kind?: "bug" | "idea" }
|
|
392
393
|
export interface PostFeedbackReceiptResponse { ok: boolean; receipt: unknown; hub: unknown }
|
|
393
394
|
export interface PostFirstReadMapsIdAcceptRequest { all?: boolean; items?: string[] }
|
|
395
|
+
export interface PostFirstReadMapsIdDismissRequest { items: string[] }
|
|
394
396
|
export interface PostFirstReadMapsRequest { map: Record<string, unknown> }
|
|
395
397
|
export interface PostFirstReadMapsResponse { map_id: unknown; status: unknown; items: unknown; next: unknown }
|
|
396
398
|
export interface PostFoundingPlanRequest { days?: Record<string, unknown>; passes?: number; advisors?: string; government?: string; expected_builders?: number; existing?: boolean }
|
|
@@ -658,6 +660,8 @@ export interface PostSpecialitiesRequest { name: string; discipline: string; sum
|
|
|
658
660
|
export interface PostSpecialitiesResponse { speciality: unknown }
|
|
659
661
|
export interface PostSsoActivityRollupRequest { client_id: string; client_secret: string; github_id: StringifiableId; credits?: number; tasks_shipped?: number; karma?: number; rank?: string; disciplines?: unknown; recent_ships?: unknown; crafts?: unknown }
|
|
660
662
|
export interface PostSsoActivityRollupResponse { ok: boolean }
|
|
663
|
+
export interface PostSsoAppStatusRequest { client_id: string; client_secret: string }
|
|
664
|
+
export interface PostSsoAppStatusResponse { ok: boolean; known: boolean; app: unknown; sandbox: unknown }
|
|
661
665
|
export interface PostSsoApplicantProfileRequest { client_id: string; client_secret: string; github_id: StringifiableId }
|
|
662
666
|
export interface PostSsoApplicantProfileResponse { profile: unknown; guild: unknown }
|
|
663
667
|
export interface PostSsoDevicePollRequest { device_code: string }
|
|
@@ -842,6 +846,10 @@ export interface BongosClient {
|
|
|
842
846
|
/** GET /analytics/builder/{id} — rank: any-builder */
|
|
843
847
|
getAnalyticsBuilderId(args?: RequestArgs): Promise<ApiResponse>;
|
|
844
848
|
};
|
|
849
|
+
"appHost": {
|
|
850
|
+
/** GET /app-host — rank: any-builder */
|
|
851
|
+
getAppHost(args?: RequestArgs): Promise<ApiResponse>;
|
|
852
|
+
};
|
|
845
853
|
"artistGate": {
|
|
846
854
|
/** GET /artist-gate — rank: any-builder */
|
|
847
855
|
getArtistGate(args?: RequestArgs): Promise<GetArtistGateResponse>;
|
|
@@ -1157,12 +1165,16 @@ export interface BongosClient {
|
|
|
1157
1165
|
getFeedbackReceiptId(args?: RequestArgs): Promise<ApiResponse>;
|
|
1158
1166
|
};
|
|
1159
1167
|
"firstRead": {
|
|
1168
|
+
/** GET /first-read/catalog — rank: any-builder */
|
|
1169
|
+
getFirstReadCatalog(args?: RequestArgs): Promise<GetFirstReadCatalogResponse>;
|
|
1160
1170
|
/** POST /first-read/maps — rank: metic+archon */
|
|
1161
1171
|
postFirstReadMaps(args: RequestArgs & { body: PostFirstReadMapsRequest }): Promise<PostFirstReadMapsResponse>;
|
|
1162
1172
|
/** GET /first-read/maps/{id} — rank: metic+archon */
|
|
1163
1173
|
getFirstReadMapsId(args?: RequestArgs): Promise<ApiResponse>;
|
|
1164
1174
|
/** POST /first-read/maps/{id}/accept — rank: metic+archon */
|
|
1165
1175
|
postFirstReadMapsIdAccept(args?: RequestArgs & { body?: PostFirstReadMapsIdAcceptRequest }): Promise<ApiResponse>;
|
|
1176
|
+
/** POST /first-read/maps/{id}/dismiss — rank: metic+archon */
|
|
1177
|
+
postFirstReadMapsIdDismiss(args: RequestArgs & { body: PostFirstReadMapsIdDismissRequest }): Promise<ApiResponse>;
|
|
1166
1178
|
/** POST /first-read/maps/{id}/reject — rank: metic+archon */
|
|
1167
1179
|
postFirstReadMapsIdReject(args?: RequestArgs): Promise<ApiResponse>;
|
|
1168
1180
|
/** GET /first-read/prompt — rank: any-builder */
|
|
@@ -1199,6 +1211,8 @@ export interface BongosClient {
|
|
|
1199
1211
|
getFoundingWorkStageAnswersQuestionHistory(args?: RequestArgs): Promise<ApiResponse>;
|
|
1200
1212
|
/** GET /founding/work/{stage}/assist — rank: any-builder */
|
|
1201
1213
|
getFoundingWorkStageAssist(args?: RequestArgs): Promise<ApiResponse>;
|
|
1214
|
+
/** GET /founding/work/{stage}/document — rank: any-builder */
|
|
1215
|
+
getFoundingWorkStageDocument(args?: RequestArgs): Promise<ApiResponse>;
|
|
1202
1216
|
/** PUT /founding/work/{stage}/door — rank: any-builder */
|
|
1203
1217
|
putFoundingWorkStageDoor(args: RequestArgs & { body: PutFoundingWorkStageDoorRequest }): Promise<ApiResponse>;
|
|
1204
1218
|
/** PUT /founding/work/{stage}/link — rank: any-builder */
|
|
@@ -2203,6 +2217,8 @@ export interface BongosClient {
|
|
|
2203
2217
|
"sso": {
|
|
2204
2218
|
/** POST /sso/activity/rollup — rank: public */
|
|
2205
2219
|
postSsoActivityRollup(args: RequestArgs & { body: PostSsoActivityRollupRequest }): Promise<PostSsoActivityRollupResponse>;
|
|
2220
|
+
/** POST /sso/app-status — rank: public */
|
|
2221
|
+
postSsoAppStatus(args: RequestArgs & { body: PostSsoAppStatusRequest }): Promise<PostSsoAppStatusResponse>;
|
|
2206
2222
|
/** POST /sso/applicant-profile — rank: public */
|
|
2207
2223
|
postSsoApplicantProfile(args: RequestArgs & { body: PostSsoApplicantProfileRequest }): Promise<PostSsoApplicantProfileResponse>;
|
|
2208
2224
|
/** GET /sso/authorize — rank: public */
|
|
@@ -150,6 +150,10 @@ export function createClient(opts = {}) {
|
|
|
150
150
|
// GET /analytics/builder/{id} — rank: any-builder — GET /analytics/builder/:id
|
|
151
151
|
getAnalyticsBuilderId: (args) => request("GET", "/analytics/builder/{id}", { hasBody: false }, args),
|
|
152
152
|
},
|
|
153
|
+
"appHost": {
|
|
154
|
+
// GET /app-host — rank: any-builder — GET /app-host
|
|
155
|
+
getAppHost: (args) => request("GET", "/app-host", { hasBody: false }, args),
|
|
156
|
+
},
|
|
153
157
|
"artistGate": {
|
|
154
158
|
// GET /artist-gate — rank: any-builder — GET /artist-gate
|
|
155
159
|
getArtistGate: (args) => request("GET", "/artist-gate", { hasBody: false }, args),
|
|
@@ -465,12 +469,16 @@ export function createClient(opts = {}) {
|
|
|
465
469
|
getFeedbackReceiptId: (args) => request("GET", "/feedback/receipt/{id}", { hasBody: false }, args),
|
|
466
470
|
},
|
|
467
471
|
"firstRead": {
|
|
472
|
+
// GET /first-read/catalog — rank: any-builder — GET /first-read/catalog
|
|
473
|
+
getFirstReadCatalog: (args) => request("GET", "/first-read/catalog", { hasBody: false }, args),
|
|
468
474
|
// POST /first-read/maps — rank: metic+archon — POST /first-read/maps
|
|
469
475
|
postFirstReadMaps: (args) => request("POST", "/first-read/maps", { hasBody: true }, args),
|
|
470
476
|
// GET /first-read/maps/{id} — rank: metic+archon — GET /first-read/maps/:id
|
|
471
477
|
getFirstReadMapsId: (args) => request("GET", "/first-read/maps/{id}", { hasBody: false }, args),
|
|
472
478
|
// POST /first-read/maps/{id}/accept — rank: metic+archon — POST /first-read/maps/:id/accept
|
|
473
479
|
postFirstReadMapsIdAccept: (args) => request("POST", "/first-read/maps/{id}/accept", { hasBody: true }, args),
|
|
480
|
+
// POST /first-read/maps/{id}/dismiss — rank: metic+archon — POST /first-read/maps/:id/dismiss
|
|
481
|
+
postFirstReadMapsIdDismiss: (args) => request("POST", "/first-read/maps/{id}/dismiss", { hasBody: true }, args),
|
|
474
482
|
// POST /first-read/maps/{id}/reject — rank: metic+archon — POST /first-read/maps/:id/reject
|
|
475
483
|
postFirstReadMapsIdReject: (args) => request("POST", "/first-read/maps/{id}/reject", { hasBody: true }, args),
|
|
476
484
|
// GET /first-read/prompt — rank: any-builder — GET /first-read/prompt
|
|
@@ -507,6 +515,8 @@ export function createClient(opts = {}) {
|
|
|
507
515
|
getFoundingWorkStageAnswersQuestionHistory: (args) => request("GET", "/founding/work/{stage}/answers/{question}/history", { hasBody: false }, args),
|
|
508
516
|
// GET /founding/work/{stage}/assist — rank: any-builder — GET /founding/work/:stage/assist
|
|
509
517
|
getFoundingWorkStageAssist: (args) => request("GET", "/founding/work/{stage}/assist", { hasBody: false }, args),
|
|
518
|
+
// GET /founding/work/{stage}/document — rank: any-builder — GET /founding/work/:stage/document
|
|
519
|
+
getFoundingWorkStageDocument: (args) => request("GET", "/founding/work/{stage}/document", { hasBody: false }, args),
|
|
510
520
|
// PUT /founding/work/{stage}/door — rank: any-builder — PUT /founding/work/:stage/door
|
|
511
521
|
putFoundingWorkStageDoor: (args) => request("PUT", "/founding/work/{stage}/door", { hasBody: true }, args),
|
|
512
522
|
// PUT /founding/work/{stage}/link — rank: any-builder — PUT /founding/work/:stage/link
|
|
@@ -1511,6 +1521,8 @@ export function createClient(opts = {}) {
|
|
|
1511
1521
|
"sso": {
|
|
1512
1522
|
// POST /sso/activity/rollup — rank: public — POST /sso/activity/rollup
|
|
1513
1523
|
postSsoActivityRollup: (args) => request("POST", "/sso/activity/rollup", { hasBody: true }, args),
|
|
1524
|
+
// POST /sso/app-status — rank: public — POST /sso/app-status
|
|
1525
|
+
postSsoAppStatus: (args) => request("POST", "/sso/app-status", { hasBody: true }, args),
|
|
1514
1526
|
// POST /sso/applicant-profile — rank: public — POST /sso/applicant-profile
|
|
1515
1527
|
postSsoApplicantProfile: (args) => request("POST", "/sso/applicant-profile", { hasBody: true }, args),
|
|
1516
1528
|
// GET /sso/authorize — rank: public — GET /sso/authorize
|
|
@@ -57,5 +57,6 @@ every stage, not a strategize feature that charter then copies.
|
|
|
57
57
|
- Presentation is left to the game frame (the founding of the government district) and
|
|
58
58
|
the hall version (task 1005285). Today a founder works a stage through their AI session
|
|
59
59
|
and `npx bongos genesis …`.
|
|
60
|
-
- Task 1005115 renders each stage's record as an editable document from this store.
|
|
60
|
+
- Task 1005115 renders each stage's record as an editable document from this store (`documentOf`, `GET /founding/work/:stage/document`), and on a project with no Board Room a stage whose tasks are finished advances by itself.
|
|
61
|
+
- Charter adopted it (task 1005119): how decisions should go and the founder's principles. A question may declare `choices` (a closed answer, stored as its key) where another module reads the answer; the charter stage's read carries the government module's recommendation built from them.
|
|
61
62
|
- Scope adopted it with the project interview (task 1005114): six questions in three groups. `/goal-create` and `/planning-session` read the answers before planning, through `genesis.js context`.
|
package/docs/api/openapi.json
CHANGED
|
@@ -45,6 +45,10 @@
|
|
|
45
45
|
"name": "analytics",
|
|
46
46
|
"description": "Endpoints under `/api/bongos/analytics`."
|
|
47
47
|
},
|
|
48
|
+
{
|
|
49
|
+
"name": "app-host",
|
|
50
|
+
"description": "Endpoints under `/api/bongos/app-host`."
|
|
51
|
+
},
|
|
48
52
|
{
|
|
49
53
|
"name": "artist-gate",
|
|
50
54
|
"description": "Endpoints under `/api/bongos/artist-gate`."
|
|
@@ -1748,6 +1752,37 @@
|
|
|
1748
1752
|
]
|
|
1749
1753
|
}
|
|
1750
1754
|
},
|
|
1755
|
+
"/app-host": {
|
|
1756
|
+
"get": {
|
|
1757
|
+
"operationId": "get_app_host",
|
|
1758
|
+
"tags": [
|
|
1759
|
+
"app-host"
|
|
1760
|
+
],
|
|
1761
|
+
"summary": "GET /app-host",
|
|
1762
|
+
"description": "GET /app-host — rank: any signed-in builder; owner-only parts gated on core.pin.move.\n\n**Rank:** `any-builder` — Any authenticated builder (row-level ownership enforced in-handler).",
|
|
1763
|
+
"x-rank": "any-builder",
|
|
1764
|
+
"x-source": "modules/app-host/routes/app-host.js",
|
|
1765
|
+
"responses": {
|
|
1766
|
+
"200": {
|
|
1767
|
+
"description": "Success."
|
|
1768
|
+
},
|
|
1769
|
+
"400": {
|
|
1770
|
+
"$ref": "#/components/responses/BadRequest"
|
|
1771
|
+
},
|
|
1772
|
+
"401": {
|
|
1773
|
+
"$ref": "#/components/responses/Unauthorized"
|
|
1774
|
+
},
|
|
1775
|
+
"403": {
|
|
1776
|
+
"$ref": "#/components/responses/Forbidden"
|
|
1777
|
+
}
|
|
1778
|
+
},
|
|
1779
|
+
"security": [
|
|
1780
|
+
{
|
|
1781
|
+
"builderSession": []
|
|
1782
|
+
}
|
|
1783
|
+
]
|
|
1784
|
+
}
|
|
1785
|
+
},
|
|
1751
1786
|
"/artist-gate": {
|
|
1752
1787
|
"get": {
|
|
1753
1788
|
"operationId": "get_artist_gate",
|
|
@@ -7613,6 +7648,44 @@
|
|
|
7613
7648
|
"security": []
|
|
7614
7649
|
}
|
|
7615
7650
|
},
|
|
7651
|
+
"/first-read/catalog": {
|
|
7652
|
+
"get": {
|
|
7653
|
+
"operationId": "get_first_read_catalog",
|
|
7654
|
+
"tags": [
|
|
7655
|
+
"first-read"
|
|
7656
|
+
],
|
|
7657
|
+
"summary": "GET /first-read/catalog",
|
|
7658
|
+
"description": "the modules this project can switch on, the only ones a map may recommend. `available: false` when the list cannot be read here.\n\n**Rank:** `any-builder` — Any authenticated builder (row-level ownership enforced in-handler).",
|
|
7659
|
+
"x-rank": "any-builder",
|
|
7660
|
+
"x-source": "modules/lifecycle/routes/first-read.js",
|
|
7661
|
+
"responses": {
|
|
7662
|
+
"200": {
|
|
7663
|
+
"description": "Success.",
|
|
7664
|
+
"content": {
|
|
7665
|
+
"application/json": {
|
|
7666
|
+
"schema": {
|
|
7667
|
+
"$ref": "#/components/schemas/GetFirstReadCatalogResponse"
|
|
7668
|
+
}
|
|
7669
|
+
}
|
|
7670
|
+
}
|
|
7671
|
+
},
|
|
7672
|
+
"400": {
|
|
7673
|
+
"$ref": "#/components/responses/BadRequest"
|
|
7674
|
+
},
|
|
7675
|
+
"401": {
|
|
7676
|
+
"$ref": "#/components/responses/Unauthorized"
|
|
7677
|
+
},
|
|
7678
|
+
"403": {
|
|
7679
|
+
"$ref": "#/components/responses/Forbidden"
|
|
7680
|
+
}
|
|
7681
|
+
},
|
|
7682
|
+
"security": [
|
|
7683
|
+
{
|
|
7684
|
+
"builderSession": []
|
|
7685
|
+
}
|
|
7686
|
+
]
|
|
7687
|
+
}
|
|
7688
|
+
},
|
|
7616
7689
|
"/first-read/maps": {
|
|
7617
7690
|
"post": {
|
|
7618
7691
|
"operationId": "post_first_read_maps",
|
|
@@ -7772,6 +7845,65 @@
|
|
|
7772
7845
|
]
|
|
7773
7846
|
}
|
|
7774
7847
|
},
|
|
7848
|
+
"/first-read/maps/{id}/dismiss": {
|
|
7849
|
+
"post": {
|
|
7850
|
+
"operationId": "post_first_read_maps_id_dismiss",
|
|
7851
|
+
"tags": [
|
|
7852
|
+
"first-read"
|
|
7853
|
+
],
|
|
7854
|
+
"summary": "POST /first-read/maps/:id/dismiss",
|
|
7855
|
+
"description": ".create — the owner's no to named items (a module recommendation, usually). Files nothing; a later \"accept all\" passes them by.\n\n**Rank:** `metic+archon` — Metic or Archon rank (review/triage powers).\n\n**Permissions:** `goal.create` (all required).",
|
|
7856
|
+
"x-rank": "metic+archon",
|
|
7857
|
+
"x-source": "modules/lifecycle/routes/first-read.js",
|
|
7858
|
+
"x-permissions": [
|
|
7859
|
+
"goal.create"
|
|
7860
|
+
],
|
|
7861
|
+
"parameters": [
|
|
7862
|
+
{
|
|
7863
|
+
"name": "id",
|
|
7864
|
+
"in": "path",
|
|
7865
|
+
"required": true,
|
|
7866
|
+
"schema": {
|
|
7867
|
+
"type": "string"
|
|
7868
|
+
},
|
|
7869
|
+
"description": "Path parameter `id`."
|
|
7870
|
+
}
|
|
7871
|
+
],
|
|
7872
|
+
"requestBody": {
|
|
7873
|
+
"required": true,
|
|
7874
|
+
"content": {
|
|
7875
|
+
"application/json": {
|
|
7876
|
+
"schema": {
|
|
7877
|
+
"$ref": "#/components/schemas/PostFirstReadMapsIdDismissRequest"
|
|
7878
|
+
}
|
|
7879
|
+
}
|
|
7880
|
+
},
|
|
7881
|
+
"x-validated": true
|
|
7882
|
+
},
|
|
7883
|
+
"responses": {
|
|
7884
|
+
"200": {
|
|
7885
|
+
"description": "Success."
|
|
7886
|
+
},
|
|
7887
|
+
"400": {
|
|
7888
|
+
"$ref": "#/components/responses/ValidationFailed"
|
|
7889
|
+
},
|
|
7890
|
+
"401": {
|
|
7891
|
+
"$ref": "#/components/responses/Unauthorized"
|
|
7892
|
+
},
|
|
7893
|
+
"403": {
|
|
7894
|
+
"$ref": "#/components/responses/Forbidden"
|
|
7895
|
+
},
|
|
7896
|
+
"404": {
|
|
7897
|
+
"$ref": "#/components/responses/NotFound"
|
|
7898
|
+
}
|
|
7899
|
+
},
|
|
7900
|
+
"security": [
|
|
7901
|
+
{
|
|
7902
|
+
"builderSession": []
|
|
7903
|
+
}
|
|
7904
|
+
]
|
|
7905
|
+
}
|
|
7906
|
+
},
|
|
7775
7907
|
"/first-read/maps/{id}/reject": {
|
|
7776
7908
|
"post": {
|
|
7777
7909
|
"operationId": "post_first_read_maps_id_reject",
|
|
@@ -7827,7 +7959,7 @@
|
|
|
7827
7959
|
"first-read"
|
|
7828
7960
|
],
|
|
7829
7961
|
"summary": "GET /first-read/prompt",
|
|
7830
|
-
"description": "the prompt and the shape are instructions, not project data.\n\n**Rank:** `any-builder` — Any authenticated builder (row-level ownership enforced in-handler).",
|
|
7962
|
+
"description": "the prompt and the shape are instructions, not project data. The prompt carries the live module list (task 1005281), so a session recommends from it.\n\n**Rank:** `any-builder` — Any authenticated builder (row-level ownership enforced in-handler).",
|
|
7831
7963
|
"x-rank": "any-builder",
|
|
7832
7964
|
"x-source": "modules/lifecycle/routes/first-read.js",
|
|
7833
7965
|
"responses": {
|
|
@@ -8465,6 +8597,51 @@
|
|
|
8465
8597
|
]
|
|
8466
8598
|
}
|
|
8467
8599
|
},
|
|
8600
|
+
"/founding/work/{stage}/document": {
|
|
8601
|
+
"get": {
|
|
8602
|
+
"operationId": "get_founding_work_stage_document",
|
|
8603
|
+
"tags": [
|
|
8604
|
+
"founding"
|
|
8605
|
+
],
|
|
8606
|
+
"summary": "GET /founding/work/:stage/document",
|
|
8607
|
+
"description": "The stage's document (task 1005115): its record read as one named page, editable through the writes below at any time, without reopening the stage.\n\n**Rank:** `any-builder` — Any authenticated builder (row-level ownership enforced in-handler).",
|
|
8608
|
+
"x-rank": "any-builder",
|
|
8609
|
+
"x-source": "modules/onboarding/routes/genesis-work.js",
|
|
8610
|
+
"parameters": [
|
|
8611
|
+
{
|
|
8612
|
+
"name": "stage",
|
|
8613
|
+
"in": "path",
|
|
8614
|
+
"required": true,
|
|
8615
|
+
"schema": {
|
|
8616
|
+
"type": "string"
|
|
8617
|
+
},
|
|
8618
|
+
"description": "Path parameter `stage`."
|
|
8619
|
+
}
|
|
8620
|
+
],
|
|
8621
|
+
"responses": {
|
|
8622
|
+
"200": {
|
|
8623
|
+
"description": "Success."
|
|
8624
|
+
},
|
|
8625
|
+
"400": {
|
|
8626
|
+
"$ref": "#/components/responses/BadRequest"
|
|
8627
|
+
},
|
|
8628
|
+
"401": {
|
|
8629
|
+
"$ref": "#/components/responses/Unauthorized"
|
|
8630
|
+
},
|
|
8631
|
+
"403": {
|
|
8632
|
+
"$ref": "#/components/responses/Forbidden"
|
|
8633
|
+
},
|
|
8634
|
+
"404": {
|
|
8635
|
+
"$ref": "#/components/responses/NotFound"
|
|
8636
|
+
}
|
|
8637
|
+
},
|
|
8638
|
+
"security": [
|
|
8639
|
+
{
|
|
8640
|
+
"builderSession": []
|
|
8641
|
+
}
|
|
8642
|
+
]
|
|
8643
|
+
}
|
|
8644
|
+
},
|
|
8468
8645
|
"/founding/work/{stage}/door": {
|
|
8469
8646
|
"put": {
|
|
8470
8647
|
"operationId": "put_founding_work_stage_door",
|
|
@@ -29282,6 +29459,45 @@
|
|
|
29282
29459
|
"security": []
|
|
29283
29460
|
}
|
|
29284
29461
|
},
|
|
29462
|
+
"/sso/app-status": {
|
|
29463
|
+
"post": {
|
|
29464
|
+
"operationId": "post_sso_app_status",
|
|
29465
|
+
"tags": [
|
|
29466
|
+
"sso"
|
|
29467
|
+
],
|
|
29468
|
+
"summary": "POST /sso/app-status",
|
|
29469
|
+
"description": "authenticated by client_id + client_secret, not a builder rank.\n\n**Rank:** `public` — No authentication — any caller.",
|
|
29470
|
+
"x-rank": "public",
|
|
29471
|
+
"x-source": "modules/platform-identity/routes/sso-app-status.js",
|
|
29472
|
+
"requestBody": {
|
|
29473
|
+
"required": true,
|
|
29474
|
+
"content": {
|
|
29475
|
+
"application/json": {
|
|
29476
|
+
"schema": {
|
|
29477
|
+
"$ref": "#/components/schemas/PostSsoAppStatusRequest"
|
|
29478
|
+
}
|
|
29479
|
+
}
|
|
29480
|
+
},
|
|
29481
|
+
"x-validated": true
|
|
29482
|
+
},
|
|
29483
|
+
"responses": {
|
|
29484
|
+
"200": {
|
|
29485
|
+
"description": "Success.",
|
|
29486
|
+
"content": {
|
|
29487
|
+
"application/json": {
|
|
29488
|
+
"schema": {
|
|
29489
|
+
"$ref": "#/components/schemas/PostSsoAppStatusResponse"
|
|
29490
|
+
}
|
|
29491
|
+
}
|
|
29492
|
+
}
|
|
29493
|
+
},
|
|
29494
|
+
"400": {
|
|
29495
|
+
"$ref": "#/components/responses/ValidationFailed"
|
|
29496
|
+
}
|
|
29497
|
+
},
|
|
29498
|
+
"security": []
|
|
29499
|
+
}
|
|
29500
|
+
},
|
|
29285
29501
|
"/sso/applicant-profile": {
|
|
29286
29502
|
"post": {
|
|
29287
29503
|
"operationId": "post_sso_applicant_profile",
|
|
@@ -34664,6 +34880,17 @@
|
|
|
34664
34880
|
"count"
|
|
34665
34881
|
]
|
|
34666
34882
|
},
|
|
34883
|
+
"GetFirstReadCatalogResponse": {
|
|
34884
|
+
"type": "object",
|
|
34885
|
+
"properties": {
|
|
34886
|
+
"available": {},
|
|
34887
|
+
"modules": {}
|
|
34888
|
+
},
|
|
34889
|
+
"required": [
|
|
34890
|
+
"available",
|
|
34891
|
+
"modules"
|
|
34892
|
+
]
|
|
34893
|
+
},
|
|
34667
34894
|
"GetFirstReadPromptResponse": {
|
|
34668
34895
|
"type": "object",
|
|
34669
34896
|
"properties": {
|
|
@@ -34671,14 +34898,16 @@
|
|
|
34671
34898
|
"file": {},
|
|
34672
34899
|
"prompt": {},
|
|
34673
34900
|
"example": {},
|
|
34674
|
-
"limits": {}
|
|
34901
|
+
"limits": {},
|
|
34902
|
+
"catalog": {}
|
|
34675
34903
|
},
|
|
34676
34904
|
"required": [
|
|
34677
34905
|
"schema",
|
|
34678
34906
|
"file",
|
|
34679
34907
|
"prompt",
|
|
34680
34908
|
"example",
|
|
34681
|
-
"limits"
|
|
34909
|
+
"limits",
|
|
34910
|
+
"catalog"
|
|
34682
34911
|
]
|
|
34683
34912
|
},
|
|
34684
34913
|
"GetFrontDoorGuideMineResponse": {
|
|
@@ -39192,6 +39421,22 @@
|
|
|
39192
39421
|
},
|
|
39193
39422
|
"additionalProperties": false
|
|
39194
39423
|
},
|
|
39424
|
+
"PostFirstReadMapsIdDismissRequest": {
|
|
39425
|
+
"type": "object",
|
|
39426
|
+
"properties": {
|
|
39427
|
+
"items": {
|
|
39428
|
+
"type": "array",
|
|
39429
|
+
"items": {
|
|
39430
|
+
"type": "string"
|
|
39431
|
+
},
|
|
39432
|
+
"maxItems": 500
|
|
39433
|
+
}
|
|
39434
|
+
},
|
|
39435
|
+
"required": [
|
|
39436
|
+
"items"
|
|
39437
|
+
],
|
|
39438
|
+
"additionalProperties": false
|
|
39439
|
+
},
|
|
39195
39440
|
"PostFirstReadMapsRequest": {
|
|
39196
39441
|
"type": "object",
|
|
39197
39442
|
"properties": {
|
|
@@ -43544,6 +43789,43 @@
|
|
|
43544
43789
|
"ok"
|
|
43545
43790
|
]
|
|
43546
43791
|
},
|
|
43792
|
+
"PostSsoAppStatusRequest": {
|
|
43793
|
+
"type": "object",
|
|
43794
|
+
"properties": {
|
|
43795
|
+
"client_id": {
|
|
43796
|
+
"type": "string",
|
|
43797
|
+
"maxLength": 200
|
|
43798
|
+
},
|
|
43799
|
+
"client_secret": {
|
|
43800
|
+
"type": "string",
|
|
43801
|
+
"maxLength": 512
|
|
43802
|
+
}
|
|
43803
|
+
},
|
|
43804
|
+
"required": [
|
|
43805
|
+
"client_id",
|
|
43806
|
+
"client_secret"
|
|
43807
|
+
],
|
|
43808
|
+
"additionalProperties": false
|
|
43809
|
+
},
|
|
43810
|
+
"PostSsoAppStatusResponse": {
|
|
43811
|
+
"type": "object",
|
|
43812
|
+
"properties": {
|
|
43813
|
+
"ok": {
|
|
43814
|
+
"type": "boolean"
|
|
43815
|
+
},
|
|
43816
|
+
"known": {
|
|
43817
|
+
"type": "boolean"
|
|
43818
|
+
},
|
|
43819
|
+
"app": {},
|
|
43820
|
+
"sandbox": {}
|
|
43821
|
+
},
|
|
43822
|
+
"required": [
|
|
43823
|
+
"ok",
|
|
43824
|
+
"known",
|
|
43825
|
+
"app",
|
|
43826
|
+
"sandbox"
|
|
43827
|
+
]
|
|
43828
|
+
},
|
|
43547
43829
|
"PostSsoApplicantProfileRequest": {
|
|
43548
43830
|
"type": "object",
|
|
43549
43831
|
"properties": {
|
|
@@ -45306,9 +45588,9 @@
|
|
|
45306
45588
|
"description": "A required dependency/feature is not configured or is temporarily down."
|
|
45307
45589
|
}
|
|
45308
45590
|
},
|
|
45309
|
-
"x-endpoint-count":
|
|
45310
|
-
"x-schema-count":
|
|
45591
|
+
"x-endpoint-count": 730,
|
|
45592
|
+
"x-schema-count": 759,
|
|
45311
45593
|
"x-undocumented-bodies": 12,
|
|
45312
|
-
"x-response-schemas":
|
|
45594
|
+
"x-response-schemas": 473,
|
|
45313
45595
|
"x-generated-by": "scripts/bongos/gen-api-docs.js"
|
|
45314
45596
|
}
|