@bongos/core 1.19.324 → 1.19.326
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 +45 -25
- package/clients/bongos-client/README.md +1 -1
- package/clients/bongos-client/bongos-client.global.js +10 -0
- package/clients/bongos-client/index.cjs +10 -0
- package/clients/bongos-client/index.d.ts +16 -0
- package/clients/bongos-client/index.mjs +10 -0
- package/docs/api/openapi.json +290 -3
- package/docs/api-reference.md +10 -1
- package/modules/builder-settings/builder-needs.js +35 -1
- package/modules/dev-box/app/src/vendor/bongos-client.cjs +10 -0
- package/modules/lifecycle/help-requests.js +219 -0
- package/modules/lifecycle/lifecycle.js +4 -0
- package/modules/lifecycle/migrations/lifecycle_004_help_requests.sql +70 -0
- package/modules/lifecycle/module.json +22 -5
- package/modules/lifecycle/routes/help-requests.js +117 -0
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/scripts/gds/control-manifest.js +42 -1
- package/scripts/gds/doc-cli-guard.js +12 -29
- package/src/bongos/routes/me.js +18 -1
- package/src/module-api.js +5 -1
- package/tests/control_manifest.mjs +60 -0
- package/tests/help_requests.mjs +263 -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.19.
|
|
6
|
-
"core_contract": "1.19.
|
|
7
|
-
"source_commit": "
|
|
5
|
+
"core_version": "1.19.326",
|
|
6
|
+
"core_contract": "1.19.326",
|
|
7
|
+
"source_commit": "e45bd1d46602e4398fd004b0f58482821d9272d2",
|
|
8
8
|
"source_ref": "HEAD",
|
|
9
|
-
"built_at": "2026-08-
|
|
9
|
+
"built_at": "2026-08-24T21:08:08.576Z",
|
|
10
10
|
"redaction": {
|
|
11
11
|
"model": "docs-redacted+functional-verbatim",
|
|
12
12
|
"docs_redacted": 324,
|
|
13
13
|
"agent_docs_stubbed": 22,
|
|
14
|
-
"functional_verbatim":
|
|
14
|
+
"functional_verbatim": 1464,
|
|
15
15
|
"rules": 3,
|
|
16
16
|
"gate_literals": 3,
|
|
17
17
|
"gate": "passed"
|
|
18
18
|
},
|
|
19
|
-
"file_count":
|
|
20
|
-
"tree_sha256": "
|
|
19
|
+
"file_count": 1810,
|
|
20
|
+
"tree_sha256": "56db7faea7aa522af7f8ce16375f10d64ccf6177d82985d1eb678f5e72cabc98",
|
|
21
21
|
"files": [
|
|
22
22
|
{
|
|
23
23
|
"path": ".claude/skills/blocker-review/SKILL.md",
|
|
@@ -347,12 +347,12 @@
|
|
|
347
347
|
{
|
|
348
348
|
"path": "clients/bongos-client/README.md",
|
|
349
349
|
"mode": "0000644",
|
|
350
|
-
"sha256": "
|
|
350
|
+
"sha256": "615510285a7e398d5f0c188fa32a8d915ecc3b8bc420fc0f0e6b476e1a819a9d"
|
|
351
351
|
},
|
|
352
352
|
{
|
|
353
353
|
"path": "clients/bongos-client/bongos-client.global.js",
|
|
354
354
|
"mode": "0000644",
|
|
355
|
-
"sha256": "
|
|
355
|
+
"sha256": "4854a4975a05b0b7914a6c087f85c9b15130debefebde75e438fa73cc85df7d0"
|
|
356
356
|
},
|
|
357
357
|
{
|
|
358
358
|
"path": "clients/bongos-client/examples/hello-world.mjs",
|
|
@@ -362,17 +362,17 @@
|
|
|
362
362
|
{
|
|
363
363
|
"path": "clients/bongos-client/index.cjs",
|
|
364
364
|
"mode": "0000644",
|
|
365
|
-
"sha256": "
|
|
365
|
+
"sha256": "482572aaeacfa0b195bcb7fa9b812c746a8304b85d4ca423674cff85bc46e71c"
|
|
366
366
|
},
|
|
367
367
|
{
|
|
368
368
|
"path": "clients/bongos-client/index.d.ts",
|
|
369
369
|
"mode": "0000644",
|
|
370
|
-
"sha256": "
|
|
370
|
+
"sha256": "ef27d2f4e7e92b3c47c8bb372dd1e4eba7358986471efab9b626597970e4d94e"
|
|
371
371
|
},
|
|
372
372
|
{
|
|
373
373
|
"path": "clients/bongos-client/index.mjs",
|
|
374
374
|
"mode": "0000644",
|
|
375
|
-
"sha256": "
|
|
375
|
+
"sha256": "5d6cd728c907810d2a55e0c3ef1c73ed122cb2fbbd858c85654860ce42dbdf70"
|
|
376
376
|
},
|
|
377
377
|
{
|
|
378
378
|
"path": "clients/bongos-client/package.json",
|
|
@@ -1422,12 +1422,12 @@
|
|
|
1422
1422
|
{
|
|
1423
1423
|
"path": "docs/api-reference.md",
|
|
1424
1424
|
"mode": "0000644",
|
|
1425
|
-
"sha256": "
|
|
1425
|
+
"sha256": "7d9a216f5a2638037ba64868c4f6b0298417492f391c57ad38d1fa7920e6e937"
|
|
1426
1426
|
},
|
|
1427
1427
|
{
|
|
1428
1428
|
"path": "docs/api/openapi.json",
|
|
1429
1429
|
"mode": "0000644",
|
|
1430
|
-
"sha256": "
|
|
1430
|
+
"sha256": "3f3d991bab5069ad0877c6a44f22de50a4f06b9d9835b9f75ce43f55e76fbf27"
|
|
1431
1431
|
},
|
|
1432
1432
|
{
|
|
1433
1433
|
"path": "docs/architecture.md",
|
|
@@ -2497,7 +2497,7 @@
|
|
|
2497
2497
|
{
|
|
2498
2498
|
"path": "modules/builder-settings/builder-needs.js",
|
|
2499
2499
|
"mode": "0000644",
|
|
2500
|
-
"sha256": "
|
|
2500
|
+
"sha256": "01f32e6f160ffbfde7240cfc1dd0e0bdc3501f13578e073c9397a2a0cccb793b"
|
|
2501
2501
|
},
|
|
2502
2502
|
{
|
|
2503
2503
|
"path": "modules/builder-settings/db.js",
|
|
@@ -2827,7 +2827,7 @@
|
|
|
2827
2827
|
{
|
|
2828
2828
|
"path": "modules/dev-box/app/src/vendor/bongos-client.cjs",
|
|
2829
2829
|
"mode": "0000644",
|
|
2830
|
-
"sha256": "
|
|
2830
|
+
"sha256": "482572aaeacfa0b195bcb7fa9b812c746a8304b85d4ca423674cff85bc46e71c"
|
|
2831
2831
|
},
|
|
2832
2832
|
{
|
|
2833
2833
|
"path": "modules/dev-box/app/test/unit.mjs",
|
|
@@ -3944,6 +3944,11 @@
|
|
|
3944
3944
|
"mode": "0000644",
|
|
3945
3945
|
"sha256": "5fac15e501d6e5639b9e14d08ab34723b60e3569af913f4d15bb703a4e126a77"
|
|
3946
3946
|
},
|
|
3947
|
+
{
|
|
3948
|
+
"path": "modules/lifecycle/help-requests.js",
|
|
3949
|
+
"mode": "0000644",
|
|
3950
|
+
"sha256": "140fce2462a0013d2d863cb9ae4ae8ca93aac8045917cb8906d1a6e52c6b2549"
|
|
3951
|
+
},
|
|
3947
3952
|
{
|
|
3948
3953
|
"path": "modules/lifecycle/hierarchy.js",
|
|
3949
3954
|
"mode": "0000644",
|
|
@@ -3952,7 +3957,7 @@
|
|
|
3952
3957
|
{
|
|
3953
3958
|
"path": "modules/lifecycle/lifecycle.js",
|
|
3954
3959
|
"mode": "0000644",
|
|
3955
|
-
"sha256": "
|
|
3960
|
+
"sha256": "07ea278ae8c0f0055d6ac332d7580af55e82fecefda2d1cf46dad1bf27678c59"
|
|
3956
3961
|
},
|
|
3957
3962
|
{
|
|
3958
3963
|
"path": "modules/lifecycle/merge-lock.js",
|
|
@@ -3969,10 +3974,15 @@
|
|
|
3969
3974
|
"mode": "0000644",
|
|
3970
3975
|
"sha256": "b63517ec3b8c686a83c52e58a87b24a252b02e25833af9bfab1d647dcc068d62"
|
|
3971
3976
|
},
|
|
3977
|
+
{
|
|
3978
|
+
"path": "modules/lifecycle/migrations/lifecycle_004_help_requests.sql",
|
|
3979
|
+
"mode": "0000644",
|
|
3980
|
+
"sha256": "d52627071dcfbf70e9bccef60803d246e49b08c22da4c374d706e1f5712fbb11"
|
|
3981
|
+
},
|
|
3972
3982
|
{
|
|
3973
3983
|
"path": "modules/lifecycle/module.json",
|
|
3974
3984
|
"mode": "0000644",
|
|
3975
|
-
"sha256": "
|
|
3985
|
+
"sha256": "8f94f0609ee66725a31147da7ced78d4a9736ec1ee1f88daf6f3cf5df6b984c4"
|
|
3976
3986
|
},
|
|
3977
3987
|
{
|
|
3978
3988
|
"path": "modules/lifecycle/pollers/publish-reconciler.js",
|
|
@@ -4014,6 +4024,11 @@
|
|
|
4014
4024
|
"mode": "0000644",
|
|
4015
4025
|
"sha256": "a58f01647120ce0b1143314f5edab2501bc18b8a748073dac788c92aaa0484ca"
|
|
4016
4026
|
},
|
|
4027
|
+
{
|
|
4028
|
+
"path": "modules/lifecycle/routes/help-requests.js",
|
|
4029
|
+
"mode": "0000644",
|
|
4030
|
+
"sha256": "0e9430101ce99d0a84f1893d13bcf1434af13325c2ce531e693b6bce42cb9385"
|
|
4031
|
+
},
|
|
4017
4032
|
{
|
|
4018
4033
|
"path": "modules/lifecycle/routes/lifecycle.js",
|
|
4019
4034
|
"mode": "0000644",
|
|
@@ -4652,12 +4667,12 @@
|
|
|
4652
4667
|
{
|
|
4653
4668
|
"path": "package-lock.json",
|
|
4654
4669
|
"mode": "0000644",
|
|
4655
|
-
"sha256": "
|
|
4670
|
+
"sha256": "3bd132ca17ee7b22c34513aaa13a26bad931dfc74588117c6400bd2473c9a575"
|
|
4656
4671
|
},
|
|
4657
4672
|
{
|
|
4658
4673
|
"path": "package.json",
|
|
4659
4674
|
"mode": "0000644",
|
|
4660
|
-
"sha256": "
|
|
4675
|
+
"sha256": "6c02b85a00c26a316ccc71869f26bb4922e11b7a442afc86b76335efbb29bad6"
|
|
4661
4676
|
},
|
|
4662
4677
|
{
|
|
4663
4678
|
"path": "public-docs/index.html",
|
|
@@ -5182,7 +5197,7 @@
|
|
|
5182
5197
|
{
|
|
5183
5198
|
"path": "scripts/gds/control-manifest.js",
|
|
5184
5199
|
"mode": "0000644",
|
|
5185
|
-
"sha256": "
|
|
5200
|
+
"sha256": "189caa1e5c263beb5d2c251d924abfe6ea84b7f8b26409a93633c8466bd5801c"
|
|
5186
5201
|
},
|
|
5187
5202
|
{
|
|
5188
5203
|
"path": "scripts/gds/copy-inventory.js",
|
|
@@ -5267,7 +5282,7 @@
|
|
|
5267
5282
|
{
|
|
5268
5283
|
"path": "scripts/gds/doc-cli-guard.js",
|
|
5269
5284
|
"mode": "0000644",
|
|
5270
|
-
"sha256": "
|
|
5285
|
+
"sha256": "9cf6c8ead8129799d17a18eadedf0423828cb457fa07fd317dcf2853254861e9"
|
|
5271
5286
|
},
|
|
5272
5287
|
{
|
|
5273
5288
|
"path": "scripts/gds/docs-entropy.js",
|
|
@@ -6367,7 +6382,7 @@
|
|
|
6367
6382
|
{
|
|
6368
6383
|
"path": "src/bongos/routes/me.js",
|
|
6369
6384
|
"mode": "0000644",
|
|
6370
|
-
"sha256": "
|
|
6385
|
+
"sha256": "dc32a25a531f9ea76c25df57930e0566259737bbd1c559409df61f5b5f87813e"
|
|
6371
6386
|
},
|
|
6372
6387
|
{
|
|
6373
6388
|
"path": "src/bongos/routes/modules.js",
|
|
@@ -6437,7 +6452,7 @@
|
|
|
6437
6452
|
{
|
|
6438
6453
|
"path": "src/module-api.js",
|
|
6439
6454
|
"mode": "0000644",
|
|
6440
|
-
"sha256": "
|
|
6455
|
+
"sha256": "bdd8762b9a99257de8474de64cfc78cd7c38ab741847c41a370a4cb7a398de72"
|
|
6441
6456
|
},
|
|
6442
6457
|
{
|
|
6443
6458
|
"path": "src/module-loader/catalog.js",
|
|
@@ -6987,7 +7002,7 @@
|
|
|
6987
7002
|
{
|
|
6988
7003
|
"path": "tests/control_manifest.mjs",
|
|
6989
7004
|
"mode": "0000644",
|
|
6990
|
-
"sha256": "
|
|
7005
|
+
"sha256": "46ec55dbdb06b33cbe4b3dff44580cbb90d2daa0b225b810352a887e941e4798"
|
|
6991
7006
|
},
|
|
6992
7007
|
{
|
|
6993
7008
|
"path": "tests/copy_desk_flags_db.mjs",
|
|
@@ -7709,6 +7724,11 @@
|
|
|
7709
7724
|
"mode": "0000644",
|
|
7710
7725
|
"sha256": "a86e615af8b148572abf562b3c7b0d556076286e76e2d8d576f782a90ba3d457"
|
|
7711
7726
|
},
|
|
7727
|
+
{
|
|
7728
|
+
"path": "tests/help_requests.mjs",
|
|
7729
|
+
"mode": "0000644",
|
|
7730
|
+
"sha256": "19d743c063d5e35c63d33c163e3830175a129bea18ea662319997c4d416899bb"
|
|
7731
|
+
},
|
|
7712
7732
|
{
|
|
7713
7733
|
"path": "tests/helpers.mjs",
|
|
7714
7734
|
"mode": "0000644",
|
|
@@ -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
|
+
- 304 operations across 48 resource groups
|
|
9
9
|
|
|
10
10
|
## Install
|
|
11
11
|
|
|
@@ -394,6 +394,16 @@ function createClient(opts = {}) {
|
|
|
394
394
|
// GET /healthz — rank: public — GET /healthz
|
|
395
395
|
getHealthz: (args) => request("GET", "/healthz", { hasBody: false }, args),
|
|
396
396
|
},
|
|
397
|
+
"helpRequests": {
|
|
398
|
+
// POST /help-requests — rank: any-builder — POST /help-requests
|
|
399
|
+
postHelpRequests: (args) => request("POST", "/help-requests", { hasBody: true }, args),
|
|
400
|
+
// PATCH /help-requests/{id} — rank: any-builder — PATCH /help-requests/:id
|
|
401
|
+
patchHelpRequestsId: (args) => request("PATCH", "/help-requests/{id}", { hasBody: true }, args),
|
|
402
|
+
// GET /help-requests/for-me — rank: any-builder — GET /help-requests/for-me
|
|
403
|
+
getHelpRequestsForMe: (args) => request("GET", "/help-requests/for-me", { hasBody: false }, args),
|
|
404
|
+
// GET /help-requests/mine — rank: any-builder — GET /help-requests/mine
|
|
405
|
+
getHelpRequestsMine: (args) => request("GET", "/help-requests/mine", { hasBody: false }, args),
|
|
406
|
+
},
|
|
397
407
|
"inbox": {
|
|
398
408
|
// GET /inbox — rank: any-builder — GET /inbox
|
|
399
409
|
getInbox: (args) => request("GET", "/inbox", { hasBody: false }, args),
|
|
@@ -393,6 +393,16 @@ function createClient(opts = {}) {
|
|
|
393
393
|
// GET /healthz — rank: public — GET /healthz
|
|
394
394
|
getHealthz: (args) => request("GET", "/healthz", { hasBody: false }, args),
|
|
395
395
|
},
|
|
396
|
+
"helpRequests": {
|
|
397
|
+
// POST /help-requests — rank: any-builder — POST /help-requests
|
|
398
|
+
postHelpRequests: (args) => request("POST", "/help-requests", { hasBody: true }, args),
|
|
399
|
+
// PATCH /help-requests/{id} — rank: any-builder — PATCH /help-requests/:id
|
|
400
|
+
patchHelpRequestsId: (args) => request("PATCH", "/help-requests/{id}", { hasBody: true }, args),
|
|
401
|
+
// GET /help-requests/for-me — rank: any-builder — GET /help-requests/for-me
|
|
402
|
+
getHelpRequestsForMe: (args) => request("GET", "/help-requests/for-me", { hasBody: false }, args),
|
|
403
|
+
// GET /help-requests/mine — rank: any-builder — GET /help-requests/mine
|
|
404
|
+
getHelpRequestsMine: (args) => request("GET", "/help-requests/mine", { hasBody: false }, args),
|
|
405
|
+
},
|
|
396
406
|
"inbox": {
|
|
397
407
|
// GET /inbox — rank: any-builder — GET /inbox
|
|
398
408
|
getInbox: (args) => request("GET", "/inbox", { hasBody: false }, args),
|
|
@@ -47,6 +47,8 @@ export interface GetGovernmentPermissionsResponse { permissions: unknown; princi
|
|
|
47
47
|
export interface GetGovernmentRanksResponse { ranks: unknown }
|
|
48
48
|
export interface GetGradesByBuilderResponse { window_days: unknown; builders: unknown }
|
|
49
49
|
export interface GetHealthzResponse { ok: boolean; auth_configured: unknown }
|
|
50
|
+
export interface GetHelpRequestsForMeResponse { help_requests: unknown; count: unknown; crafts: unknown }
|
|
51
|
+
export interface GetHelpRequestsMineResponse { help_requests: unknown; count: unknown }
|
|
50
52
|
export interface GetInboxAwaitingNodResponse { awaiting: unknown; count: unknown }
|
|
51
53
|
export interface GetInboxIdResponse { idea: unknown }
|
|
52
54
|
export interface GetInboxResponse { ideas: unknown; open_count: unknown }
|
|
@@ -129,6 +131,8 @@ export interface PatchDoneWhenCriterionIdRequest { criterion_md: string }
|
|
|
129
131
|
export interface PatchDoneWhenCriterionIdResponse { ok: boolean; criterion: unknown; deltas: unknown; unchanged: boolean }
|
|
130
132
|
export interface PatchGoalsIdMembersBuilderIdRequest { membership_kind: string }
|
|
131
133
|
export interface PatchGoalsIdMembersBuilderIdResponse { ok: boolean; member: unknown; changed: boolean }
|
|
134
|
+
export interface PatchHelpRequestsIdRequest { status: "answered" | "withdrawn" }
|
|
135
|
+
export interface PatchHelpRequestsIdResponse { ok: boolean; help_request: unknown }
|
|
132
136
|
export interface PatchInboxIdBodyRequest { body_md: string }
|
|
133
137
|
export interface PatchInboxIdBodyResponse { ok: boolean; idea: unknown; delta: unknown; unchanged: unknown }
|
|
134
138
|
export interface PatchInboxIdRequest { status?: "open" | "promoted" | "discarded" | "merged"; kind?: string; promoted_to_task_id?: number; reviewed_at?: unknown; merged_into_idea_id?: number; triage_note?: string }
|
|
@@ -247,6 +251,8 @@ export interface PostGovernmentBoardItemsResponse { ok: boolean; amendment: unkn
|
|
|
247
251
|
export interface PostGovernmentRanksRankKeyResetResponse { ok: boolean; rank_key: unknown; seeded_rank: unknown; permission_count: unknown }
|
|
248
252
|
export interface PostGovernmentRanksRequest { rank_key: string; label: string; description?: string }
|
|
249
253
|
export interface PostGovernmentRanksResponse { rank: unknown }
|
|
254
|
+
export interface PostHelpRequestsRequest { needs_craft?: string; needs_builder_id?: number; what_is_stuck: string; task_id?: number; goal_id?: number }
|
|
255
|
+
export interface PostHelpRequestsResponse { ok: boolean; help_request: unknown }
|
|
250
256
|
export interface PostInboxIdDevelopRequest { field_values: Record<string, unknown>; template_key?: string }
|
|
251
257
|
export interface PostInboxIdRatifyRequest { notes_md?: string }
|
|
252
258
|
export interface PostInboxIdResubmitRequest { field_values: Record<string, unknown>; template_key?: string }
|
|
@@ -661,6 +667,16 @@ export interface BongosClient {
|
|
|
661
667
|
/** GET /healthz — rank: public */
|
|
662
668
|
getHealthz(args?: RequestArgs): Promise<GetHealthzResponse>;
|
|
663
669
|
};
|
|
670
|
+
"helpRequests": {
|
|
671
|
+
/** POST /help-requests — rank: any-builder */
|
|
672
|
+
postHelpRequests(args: RequestArgs & { body: PostHelpRequestsRequest }): Promise<PostHelpRequestsResponse>;
|
|
673
|
+
/** PATCH /help-requests/{id} — rank: any-builder */
|
|
674
|
+
patchHelpRequestsId(args: RequestArgs & { body: PatchHelpRequestsIdRequest }): Promise<PatchHelpRequestsIdResponse>;
|
|
675
|
+
/** GET /help-requests/for-me — rank: any-builder */
|
|
676
|
+
getHelpRequestsForMe(args?: RequestArgs): Promise<GetHelpRequestsForMeResponse>;
|
|
677
|
+
/** GET /help-requests/mine — rank: any-builder */
|
|
678
|
+
getHelpRequestsMine(args?: RequestArgs): Promise<GetHelpRequestsMineResponse>;
|
|
679
|
+
};
|
|
664
680
|
"inbox": {
|
|
665
681
|
/** GET /inbox — rank: any-builder */
|
|
666
682
|
getInbox(args?: RequestArgs): Promise<GetInboxResponse>;
|
|
@@ -390,6 +390,16 @@ export function createClient(opts = {}) {
|
|
|
390
390
|
// GET /healthz — rank: public — GET /healthz
|
|
391
391
|
getHealthz: (args) => request("GET", "/healthz", { hasBody: false }, args),
|
|
392
392
|
},
|
|
393
|
+
"helpRequests": {
|
|
394
|
+
// POST /help-requests — rank: any-builder — POST /help-requests
|
|
395
|
+
postHelpRequests: (args) => request("POST", "/help-requests", { hasBody: true }, args),
|
|
396
|
+
// PATCH /help-requests/{id} — rank: any-builder — PATCH /help-requests/:id
|
|
397
|
+
patchHelpRequestsId: (args) => request("PATCH", "/help-requests/{id}", { hasBody: true }, args),
|
|
398
|
+
// GET /help-requests/for-me — rank: any-builder — GET /help-requests/for-me
|
|
399
|
+
getHelpRequestsForMe: (args) => request("GET", "/help-requests/for-me", { hasBody: false }, args),
|
|
400
|
+
// GET /help-requests/mine — rank: any-builder — GET /help-requests/mine
|
|
401
|
+
getHelpRequestsMine: (args) => request("GET", "/help-requests/mine", { hasBody: false }, args),
|
|
402
|
+
},
|
|
393
403
|
"inbox": {
|
|
394
404
|
// GET /inbox — rank: any-builder — GET /inbox
|
|
395
405
|
getInbox: (args) => request("GET", "/inbox", { hasBody: false }, args),
|
package/docs/api/openapi.json
CHANGED
|
@@ -117,6 +117,10 @@
|
|
|
117
117
|
"name": "healthz",
|
|
118
118
|
"description": "Endpoints under `/api/bongos/healthz`."
|
|
119
119
|
},
|
|
120
|
+
{
|
|
121
|
+
"name": "help-requests",
|
|
122
|
+
"description": "Endpoints under `/api/bongos/help-requests`."
|
|
123
|
+
},
|
|
120
124
|
{
|
|
121
125
|
"name": "inbox",
|
|
122
126
|
"description": "Endpoints under `/api/bongos/inbox`."
|
|
@@ -6188,6 +6192,194 @@
|
|
|
6188
6192
|
"security": []
|
|
6189
6193
|
}
|
|
6190
6194
|
},
|
|
6195
|
+
"/help-requests": {
|
|
6196
|
+
"post": {
|
|
6197
|
+
"operationId": "post_help_requests",
|
|
6198
|
+
"tags": [
|
|
6199
|
+
"help-requests"
|
|
6200
|
+
],
|
|
6201
|
+
"summary": "POST /help-requests",
|
|
6202
|
+
"description": "asking for help is not a privileged act, and gating it would exclude exactly the newcomers most likely to be stuck.\n\n**Rank:** `any-builder` — Any authenticated builder (row-level ownership enforced in-handler).",
|
|
6203
|
+
"x-rank": "any-builder",
|
|
6204
|
+
"x-source": "modules/lifecycle/routes/help-requests.js",
|
|
6205
|
+
"requestBody": {
|
|
6206
|
+
"required": true,
|
|
6207
|
+
"content": {
|
|
6208
|
+
"application/json": {
|
|
6209
|
+
"schema": {
|
|
6210
|
+
"$ref": "#/components/schemas/PostHelpRequestsRequest"
|
|
6211
|
+
}
|
|
6212
|
+
}
|
|
6213
|
+
},
|
|
6214
|
+
"x-validated": true
|
|
6215
|
+
},
|
|
6216
|
+
"responses": {
|
|
6217
|
+
"200": {
|
|
6218
|
+
"description": "Success.",
|
|
6219
|
+
"content": {
|
|
6220
|
+
"application/json": {
|
|
6221
|
+
"schema": {
|
|
6222
|
+
"$ref": "#/components/schemas/PostHelpRequestsResponse"
|
|
6223
|
+
}
|
|
6224
|
+
}
|
|
6225
|
+
}
|
|
6226
|
+
},
|
|
6227
|
+
"400": {
|
|
6228
|
+
"$ref": "#/components/responses/ValidationFailed"
|
|
6229
|
+
},
|
|
6230
|
+
"401": {
|
|
6231
|
+
"$ref": "#/components/responses/Unauthorized"
|
|
6232
|
+
},
|
|
6233
|
+
"403": {
|
|
6234
|
+
"$ref": "#/components/responses/Forbidden"
|
|
6235
|
+
}
|
|
6236
|
+
},
|
|
6237
|
+
"security": [
|
|
6238
|
+
{
|
|
6239
|
+
"builderSession": []
|
|
6240
|
+
}
|
|
6241
|
+
]
|
|
6242
|
+
}
|
|
6243
|
+
},
|
|
6244
|
+
"/help-requests/for-me": {
|
|
6245
|
+
"get": {
|
|
6246
|
+
"operationId": "get_help_requests_for_me",
|
|
6247
|
+
"tags": [
|
|
6248
|
+
"help-requests"
|
|
6249
|
+
],
|
|
6250
|
+
"summary": "GET /help-requests/for-me",
|
|
6251
|
+
"description": "The addressed read — C01's answer to \"and fires a notification\". A request is immediately visible to the person or craft it names. A true PUSH lives in the builder-needs feed (`builder-settings`), which is outside this goal's scope wall, so it is recorded as a gap rather than reached for. rank: any-builder — you only ever see what is addressed to you.\n\n**Rank:** `any-builder` — Any authenticated builder (row-level ownership enforced in-handler).",
|
|
6252
|
+
"x-rank": "any-builder",
|
|
6253
|
+
"x-source": "modules/lifecycle/routes/help-requests.js",
|
|
6254
|
+
"responses": {
|
|
6255
|
+
"200": {
|
|
6256
|
+
"description": "Success.",
|
|
6257
|
+
"content": {
|
|
6258
|
+
"application/json": {
|
|
6259
|
+
"schema": {
|
|
6260
|
+
"$ref": "#/components/schemas/GetHelpRequestsForMeResponse"
|
|
6261
|
+
}
|
|
6262
|
+
}
|
|
6263
|
+
}
|
|
6264
|
+
},
|
|
6265
|
+
"400": {
|
|
6266
|
+
"$ref": "#/components/responses/BadRequest"
|
|
6267
|
+
},
|
|
6268
|
+
"401": {
|
|
6269
|
+
"$ref": "#/components/responses/Unauthorized"
|
|
6270
|
+
},
|
|
6271
|
+
"403": {
|
|
6272
|
+
"$ref": "#/components/responses/Forbidden"
|
|
6273
|
+
}
|
|
6274
|
+
},
|
|
6275
|
+
"security": [
|
|
6276
|
+
{
|
|
6277
|
+
"builderSession": []
|
|
6278
|
+
}
|
|
6279
|
+
]
|
|
6280
|
+
}
|
|
6281
|
+
},
|
|
6282
|
+
"/help-requests/mine": {
|
|
6283
|
+
"get": {
|
|
6284
|
+
"operationId": "get_help_requests_mine",
|
|
6285
|
+
"tags": [
|
|
6286
|
+
"help-requests"
|
|
6287
|
+
],
|
|
6288
|
+
"summary": "GET /help-requests/mine",
|
|
6289
|
+
"description": "your own asks, so you can settle them.\n\n**Rank:** `any-builder` — Any authenticated builder (row-level ownership enforced in-handler).",
|
|
6290
|
+
"x-rank": "any-builder",
|
|
6291
|
+
"x-source": "modules/lifecycle/routes/help-requests.js",
|
|
6292
|
+
"responses": {
|
|
6293
|
+
"200": {
|
|
6294
|
+
"description": "Success.",
|
|
6295
|
+
"content": {
|
|
6296
|
+
"application/json": {
|
|
6297
|
+
"schema": {
|
|
6298
|
+
"$ref": "#/components/schemas/GetHelpRequestsMineResponse"
|
|
6299
|
+
}
|
|
6300
|
+
}
|
|
6301
|
+
}
|
|
6302
|
+
},
|
|
6303
|
+
"400": {
|
|
6304
|
+
"$ref": "#/components/responses/BadRequest"
|
|
6305
|
+
},
|
|
6306
|
+
"401": {
|
|
6307
|
+
"$ref": "#/components/responses/Unauthorized"
|
|
6308
|
+
},
|
|
6309
|
+
"403": {
|
|
6310
|
+
"$ref": "#/components/responses/Forbidden"
|
|
6311
|
+
}
|
|
6312
|
+
},
|
|
6313
|
+
"security": [
|
|
6314
|
+
{
|
|
6315
|
+
"builderSession": []
|
|
6316
|
+
}
|
|
6317
|
+
]
|
|
6318
|
+
}
|
|
6319
|
+
},
|
|
6320
|
+
"/help-requests/{id}": {
|
|
6321
|
+
"patch": {
|
|
6322
|
+
"operationId": "patch_help_requests_id",
|
|
6323
|
+
"tags": [
|
|
6324
|
+
"help-requests"
|
|
6325
|
+
],
|
|
6326
|
+
"summary": "PATCH /help-requests/:id",
|
|
6327
|
+
"description": "Only the ASKER settles their own request: 'answered' when someone helped, 'withdrawn' when they no longer need it. Nobody is assigned by being asked — the same consent posture ADR 0187 §3 gives task recommendations. rank: any-builder — ownership is enforced in the UPDATE's WHERE, not by rank.\n\n**Rank:** `any-builder` — Any authenticated builder (row-level ownership enforced in-handler).",
|
|
6328
|
+
"x-rank": "any-builder",
|
|
6329
|
+
"x-source": "modules/lifecycle/routes/help-requests.js",
|
|
6330
|
+
"parameters": [
|
|
6331
|
+
{
|
|
6332
|
+
"name": "id",
|
|
6333
|
+
"in": "path",
|
|
6334
|
+
"required": true,
|
|
6335
|
+
"schema": {
|
|
6336
|
+
"type": "string"
|
|
6337
|
+
},
|
|
6338
|
+
"description": "Path parameter `id`."
|
|
6339
|
+
}
|
|
6340
|
+
],
|
|
6341
|
+
"requestBody": {
|
|
6342
|
+
"required": true,
|
|
6343
|
+
"content": {
|
|
6344
|
+
"application/json": {
|
|
6345
|
+
"schema": {
|
|
6346
|
+
"$ref": "#/components/schemas/PatchHelpRequestsIdRequest"
|
|
6347
|
+
}
|
|
6348
|
+
}
|
|
6349
|
+
},
|
|
6350
|
+
"x-validated": true
|
|
6351
|
+
},
|
|
6352
|
+
"responses": {
|
|
6353
|
+
"200": {
|
|
6354
|
+
"description": "Success.",
|
|
6355
|
+
"content": {
|
|
6356
|
+
"application/json": {
|
|
6357
|
+
"schema": {
|
|
6358
|
+
"$ref": "#/components/schemas/PatchHelpRequestsIdResponse"
|
|
6359
|
+
}
|
|
6360
|
+
}
|
|
6361
|
+
}
|
|
6362
|
+
},
|
|
6363
|
+
"400": {
|
|
6364
|
+
"$ref": "#/components/responses/ValidationFailed"
|
|
6365
|
+
},
|
|
6366
|
+
"401": {
|
|
6367
|
+
"$ref": "#/components/responses/Unauthorized"
|
|
6368
|
+
},
|
|
6369
|
+
"403": {
|
|
6370
|
+
"$ref": "#/components/responses/Forbidden"
|
|
6371
|
+
},
|
|
6372
|
+
"404": {
|
|
6373
|
+
"$ref": "#/components/responses/NotFound"
|
|
6374
|
+
}
|
|
6375
|
+
},
|
|
6376
|
+
"security": [
|
|
6377
|
+
{
|
|
6378
|
+
"builderSession": []
|
|
6379
|
+
}
|
|
6380
|
+
]
|
|
6381
|
+
}
|
|
6382
|
+
},
|
|
6191
6383
|
"/inbox": {
|
|
6192
6384
|
"get": {
|
|
6193
6385
|
"operationId": "get_inbox",
|
|
@@ -14178,6 +14370,30 @@
|
|
|
14178
14370
|
"auth_configured"
|
|
14179
14371
|
]
|
|
14180
14372
|
},
|
|
14373
|
+
"GetHelpRequestsForMeResponse": {
|
|
14374
|
+
"type": "object",
|
|
14375
|
+
"properties": {
|
|
14376
|
+
"help_requests": {},
|
|
14377
|
+
"count": {},
|
|
14378
|
+
"crafts": {}
|
|
14379
|
+
},
|
|
14380
|
+
"required": [
|
|
14381
|
+
"help_requests",
|
|
14382
|
+
"count",
|
|
14383
|
+
"crafts"
|
|
14384
|
+
]
|
|
14385
|
+
},
|
|
14386
|
+
"GetHelpRequestsMineResponse": {
|
|
14387
|
+
"type": "object",
|
|
14388
|
+
"properties": {
|
|
14389
|
+
"help_requests": {},
|
|
14390
|
+
"count": {}
|
|
14391
|
+
},
|
|
14392
|
+
"required": [
|
|
14393
|
+
"help_requests",
|
|
14394
|
+
"count"
|
|
14395
|
+
]
|
|
14396
|
+
},
|
|
14181
14397
|
"GetInboxAwaitingNodResponse": {
|
|
14182
14398
|
"type": "object",
|
|
14183
14399
|
"properties": {
|
|
@@ -15235,6 +15451,35 @@
|
|
|
15235
15451
|
"changed"
|
|
15236
15452
|
]
|
|
15237
15453
|
},
|
|
15454
|
+
"PatchHelpRequestsIdRequest": {
|
|
15455
|
+
"type": "object",
|
|
15456
|
+
"properties": {
|
|
15457
|
+
"status": {
|
|
15458
|
+
"type": "string",
|
|
15459
|
+
"enum": [
|
|
15460
|
+
"answered",
|
|
15461
|
+
"withdrawn"
|
|
15462
|
+
]
|
|
15463
|
+
}
|
|
15464
|
+
},
|
|
15465
|
+
"required": [
|
|
15466
|
+
"status"
|
|
15467
|
+
],
|
|
15468
|
+
"additionalProperties": false
|
|
15469
|
+
},
|
|
15470
|
+
"PatchHelpRequestsIdResponse": {
|
|
15471
|
+
"type": "object",
|
|
15472
|
+
"properties": {
|
|
15473
|
+
"ok": {
|
|
15474
|
+
"type": "boolean"
|
|
15475
|
+
},
|
|
15476
|
+
"help_request": {}
|
|
15477
|
+
},
|
|
15478
|
+
"required": [
|
|
15479
|
+
"ok",
|
|
15480
|
+
"help_request"
|
|
15481
|
+
]
|
|
15482
|
+
},
|
|
15238
15483
|
"PatchInboxIdBodyRequest": {
|
|
15239
15484
|
"type": "object",
|
|
15240
15485
|
"properties": {
|
|
@@ -17153,6 +17398,48 @@
|
|
|
17153
17398
|
"rank"
|
|
17154
17399
|
]
|
|
17155
17400
|
},
|
|
17401
|
+
"PostHelpRequestsRequest": {
|
|
17402
|
+
"type": "object",
|
|
17403
|
+
"properties": {
|
|
17404
|
+
"needs_craft": {
|
|
17405
|
+
"type": "string",
|
|
17406
|
+
"maxLength": 32
|
|
17407
|
+
},
|
|
17408
|
+
"needs_builder_id": {
|
|
17409
|
+
"type": "integer",
|
|
17410
|
+
"minimum": 1
|
|
17411
|
+
},
|
|
17412
|
+
"what_is_stuck": {
|
|
17413
|
+
"type": "string",
|
|
17414
|
+
"minLength": 1
|
|
17415
|
+
},
|
|
17416
|
+
"task_id": {
|
|
17417
|
+
"type": "integer",
|
|
17418
|
+
"minimum": 1
|
|
17419
|
+
},
|
|
17420
|
+
"goal_id": {
|
|
17421
|
+
"type": "integer",
|
|
17422
|
+
"minimum": 1
|
|
17423
|
+
}
|
|
17424
|
+
},
|
|
17425
|
+
"required": [
|
|
17426
|
+
"what_is_stuck"
|
|
17427
|
+
],
|
|
17428
|
+
"additionalProperties": false
|
|
17429
|
+
},
|
|
17430
|
+
"PostHelpRequestsResponse": {
|
|
17431
|
+
"type": "object",
|
|
17432
|
+
"properties": {
|
|
17433
|
+
"ok": {
|
|
17434
|
+
"type": "boolean"
|
|
17435
|
+
},
|
|
17436
|
+
"help_request": {}
|
|
17437
|
+
},
|
|
17438
|
+
"required": [
|
|
17439
|
+
"ok",
|
|
17440
|
+
"help_request"
|
|
17441
|
+
]
|
|
17442
|
+
},
|
|
17156
17443
|
"PostInboxIdDevelopRequest": {
|
|
17157
17444
|
"type": "object",
|
|
17158
17445
|
"properties": {
|
|
@@ -18956,9 +19243,9 @@
|
|
|
18956
19243
|
"description": "A required dependency/feature is not configured or is temporarily down."
|
|
18957
19244
|
}
|
|
18958
19245
|
},
|
|
18959
|
-
"x-endpoint-count":
|
|
18960
|
-
"x-schema-count":
|
|
19246
|
+
"x-endpoint-count": 304,
|
|
19247
|
+
"x-schema-count": 340,
|
|
18961
19248
|
"x-undocumented-bodies": 8,
|
|
18962
|
-
"x-response-schemas":
|
|
19249
|
+
"x-response-schemas": 227,
|
|
18963
19250
|
"x-generated-by": "scripts/gds/gen-api-docs.js"
|
|
18964
19251
|
}
|