@bongos/core 1.19.699 → 1.19.701
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 +44 -24
- package/clients/bongos-client/README.md +1 -1
- package/clients/bongos-client/bongos-client.global.js +6 -0
- package/clients/bongos-client/index.cjs +6 -0
- package/clients/bongos-client/index.d.ts +8 -0
- package/clients/bongos-client/index.mjs +6 -0
- package/docs/api/openapi.json +127 -3
- package/docs/api-reference.md +8 -1
- package/docs/module-api-changelog.md +4 -0
- package/modules/agents/lib/validate.js +6 -0
- package/modules/agents/module.json +1 -1
- package/modules/agents/routes/agents.js +177 -0
- package/modules/dev-box/app/src/vendor/bongos-client.cjs +6 -0
- package/modules/lifecycle/conflict-resolve.js +52 -2
- package/modules/lifecycle/executed-closure.js +183 -0
- package/modules/lifecycle/publish-reconciler.js +28 -0
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/src/module-api.js +1 -1
- package/tests/agents_routes.mjs +194 -0
- package/tests/executed_closure.mjs +257 -0
- package/tests/publish_reconciler.mjs +58 -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.701",
|
|
6
|
+
"core_contract": "1.19.701",
|
|
7
|
+
"source_commit": "6c01baa69654043099e16c9bf0353eff61d2012d",
|
|
8
8
|
"source_ref": "HEAD",
|
|
9
|
-
"built_at": "2026-09-13T03:
|
|
9
|
+
"built_at": "2026-09-13T03:22:47.893Z",
|
|
10
10
|
"redaction": {
|
|
11
11
|
"model": "docs-redacted+functional-verbatim",
|
|
12
12
|
"docs_redacted": 477,
|
|
13
13
|
"agent_docs_stubbed": 24,
|
|
14
|
-
"functional_verbatim":
|
|
14
|
+
"functional_verbatim": 2130,
|
|
15
15
|
"rules": 3,
|
|
16
16
|
"gate_literals": 3,
|
|
17
17
|
"gate": "passed"
|
|
18
18
|
},
|
|
19
|
-
"file_count":
|
|
20
|
-
"tree_sha256": "
|
|
19
|
+
"file_count": 2631,
|
|
20
|
+
"tree_sha256": "640bb539971ad78a750aa80116d26c7f1f81fc1b2afb21ef0fd33855189fe10a",
|
|
21
21
|
"files": [
|
|
22
22
|
{
|
|
23
23
|
"path": ".claude/skills/ask-for-help/SKILL.md",
|
|
@@ -367,12 +367,12 @@
|
|
|
367
367
|
{
|
|
368
368
|
"path": "clients/bongos-client/README.md",
|
|
369
369
|
"mode": "0000644",
|
|
370
|
-
"sha256": "
|
|
370
|
+
"sha256": "cfa105831443d1543f03b217a1673b12ba54e40198d768b57bac1c10459ee35c"
|
|
371
371
|
},
|
|
372
372
|
{
|
|
373
373
|
"path": "clients/bongos-client/bongos-client.global.js",
|
|
374
374
|
"mode": "0000644",
|
|
375
|
-
"sha256": "
|
|
375
|
+
"sha256": "a418c0eace4c6335d4bd131ce33032b716bdd33f1b7b080c03b76db4259aa069"
|
|
376
376
|
},
|
|
377
377
|
{
|
|
378
378
|
"path": "clients/bongos-client/examples/hello-world.mjs",
|
|
@@ -382,17 +382,17 @@
|
|
|
382
382
|
{
|
|
383
383
|
"path": "clients/bongos-client/index.cjs",
|
|
384
384
|
"mode": "0000644",
|
|
385
|
-
"sha256": "
|
|
385
|
+
"sha256": "c36be893037b5c271ca116d9a26d66defcde55f1b06a1ea5b6a736b1997be0d4"
|
|
386
386
|
},
|
|
387
387
|
{
|
|
388
388
|
"path": "clients/bongos-client/index.d.ts",
|
|
389
389
|
"mode": "0000644",
|
|
390
|
-
"sha256": "
|
|
390
|
+
"sha256": "4fc17fc7a5a9ecdaa4539d99f6f30dde4a600043b24affd4677018c95fb94b17"
|
|
391
391
|
},
|
|
392
392
|
{
|
|
393
393
|
"path": "clients/bongos-client/index.mjs",
|
|
394
394
|
"mode": "0000644",
|
|
395
|
-
"sha256": "
|
|
395
|
+
"sha256": "83c4a4fc8f4adccb95f15c1943cc40eb6c29d8027c58269271313bb37dbad46c"
|
|
396
396
|
},
|
|
397
397
|
{
|
|
398
398
|
"path": "clients/bongos-client/package.json",
|
|
@@ -1922,12 +1922,12 @@
|
|
|
1922
1922
|
{
|
|
1923
1923
|
"path": "docs/api-reference.md",
|
|
1924
1924
|
"mode": "0000644",
|
|
1925
|
-
"sha256": "
|
|
1925
|
+
"sha256": "2e05ec4efeab7341561a2230e880f6f34d55ada2d542e53b3dcf87f1efa2062c"
|
|
1926
1926
|
},
|
|
1927
1927
|
{
|
|
1928
1928
|
"path": "docs/api/openapi.json",
|
|
1929
1929
|
"mode": "0000644",
|
|
1930
|
-
"sha256": "
|
|
1930
|
+
"sha256": "7263a9c74173ef0ca46a444310156f5d901ad4bb191fbd181f690387171d755c"
|
|
1931
1931
|
},
|
|
1932
1932
|
{
|
|
1933
1933
|
"path": "docs/architecture.md",
|
|
@@ -2802,7 +2802,7 @@
|
|
|
2802
2802
|
{
|
|
2803
2803
|
"path": "docs/module-api-changelog.md",
|
|
2804
2804
|
"mode": "0000644",
|
|
2805
|
-
"sha256": "
|
|
2805
|
+
"sha256": "4fc39aaaae76afb8153485474fc9f3459a2ee380b96f59d1d693a4a7680db464"
|
|
2806
2806
|
},
|
|
2807
2807
|
{
|
|
2808
2808
|
"path": "docs/modules-contract.md",
|
|
@@ -3862,7 +3862,7 @@
|
|
|
3862
3862
|
{
|
|
3863
3863
|
"path": "modules/agents/lib/validate.js",
|
|
3864
3864
|
"mode": "0000644",
|
|
3865
|
-
"sha256": "
|
|
3865
|
+
"sha256": "5cff70fc4e280c49d33dfb8f60ddb01181decd1645625b0bb5e7c2eb97335b81"
|
|
3866
3866
|
},
|
|
3867
3867
|
{
|
|
3868
3868
|
"path": "modules/agents/migrations/agents_001_definitions.sql",
|
|
@@ -3872,7 +3872,12 @@
|
|
|
3872
3872
|
{
|
|
3873
3873
|
"path": "modules/agents/module.json",
|
|
3874
3874
|
"mode": "0000644",
|
|
3875
|
-
"sha256": "
|
|
3875
|
+
"sha256": "af487dc7d134b45f2c1616b1a06cb017106529510e5ebc9d15d7dbb9f72d5fe5"
|
|
3876
|
+
},
|
|
3877
|
+
{
|
|
3878
|
+
"path": "modules/agents/routes/agents.js",
|
|
3879
|
+
"mode": "0000644",
|
|
3880
|
+
"sha256": "31fbc1118ac1f315babb9ba3d0ab4ae634bdce3a6e83cb79defdad73288b2e00"
|
|
3876
3881
|
},
|
|
3877
3882
|
{
|
|
3878
3883
|
"path": "modules/agents/spawn.js",
|
|
@@ -4257,7 +4262,7 @@
|
|
|
4257
4262
|
{
|
|
4258
4263
|
"path": "modules/dev-box/app/src/vendor/bongos-client.cjs",
|
|
4259
4264
|
"mode": "0000644",
|
|
4260
|
-
"sha256": "
|
|
4265
|
+
"sha256": "c36be893037b5c271ca116d9a26d66defcde55f1b06a1ea5b6a736b1997be0d4"
|
|
4261
4266
|
},
|
|
4262
4267
|
{
|
|
4263
4268
|
"path": "modules/dev-box/app/test/unit.mjs",
|
|
@@ -5637,7 +5642,7 @@
|
|
|
5637
5642
|
{
|
|
5638
5643
|
"path": "modules/lifecycle/conflict-resolve.js",
|
|
5639
5644
|
"mode": "0000644",
|
|
5640
|
-
"sha256": "
|
|
5645
|
+
"sha256": "4114eb2632a95a9b830956d0e476ad92ed6eaaa526d9bd46e7ddba8a6fb566e3"
|
|
5641
5646
|
},
|
|
5642
5647
|
{
|
|
5643
5648
|
"path": "modules/lifecycle/criterion-suggest.js",
|
|
@@ -5724,6 +5729,11 @@
|
|
|
5724
5729
|
"mode": "0000644",
|
|
5725
5730
|
"sha256": "23ee20e57c67adb5d2ec29c654d2bc469434cafa010b375a8a4452ced1df49e3"
|
|
5726
5731
|
},
|
|
5732
|
+
{
|
|
5733
|
+
"path": "modules/lifecycle/executed-closure.js",
|
|
5734
|
+
"mode": "0000644",
|
|
5735
|
+
"sha256": "70be81206f577910d250e70ed0841466bbe329691324156b5b15bb75abcd93d3"
|
|
5736
|
+
},
|
|
5727
5737
|
{
|
|
5728
5738
|
"path": "modules/lifecycle/github-push.js",
|
|
5729
5739
|
"mode": "0000644",
|
|
@@ -5847,7 +5857,7 @@
|
|
|
5847
5857
|
{
|
|
5848
5858
|
"path": "modules/lifecycle/publish-reconciler.js",
|
|
5849
5859
|
"mode": "0000644",
|
|
5850
|
-
"sha256": "
|
|
5860
|
+
"sha256": "9f3e3ae52f9fa49a1f5638d92a4b985d0c23fe0433d917d017aa78876c41ca43"
|
|
5851
5861
|
},
|
|
5852
5862
|
{
|
|
5853
5863
|
"path": "modules/lifecycle/rot.js",
|
|
@@ -7772,12 +7782,12 @@
|
|
|
7772
7782
|
{
|
|
7773
7783
|
"path": "package-lock.json",
|
|
7774
7784
|
"mode": "0000644",
|
|
7775
|
-
"sha256": "
|
|
7785
|
+
"sha256": "f7fb304e4955f8024186863281f2540c2e92299e49b16f7f6ea0f78c6d46d22a"
|
|
7776
7786
|
},
|
|
7777
7787
|
{
|
|
7778
7788
|
"path": "package.json",
|
|
7779
7789
|
"mode": "0000644",
|
|
7780
|
-
"sha256": "
|
|
7790
|
+
"sha256": "be0e756de883b5e3291f721efe8515540771994df5d83f0eb96bd07f87ecf1e8"
|
|
7781
7791
|
},
|
|
7782
7792
|
{
|
|
7783
7793
|
"path": "public-docs/index.html",
|
|
@@ -9542,7 +9552,7 @@
|
|
|
9542
9552
|
{
|
|
9543
9553
|
"path": "src/module-api.js",
|
|
9544
9554
|
"mode": "0000644",
|
|
9545
|
-
"sha256": "
|
|
9555
|
+
"sha256": "2fdd8c72769bba600991d5c886878c7390ef2086f67ad8c1036555e45631a971"
|
|
9546
9556
|
},
|
|
9547
9557
|
{
|
|
9548
9558
|
"path": "src/module-loader/catalog.js",
|
|
@@ -9644,6 +9654,11 @@
|
|
|
9644
9654
|
"mode": "0000644",
|
|
9645
9655
|
"sha256": "bdc9d3678e12dee3f3252785ca82e06071421762c7146cbc1591d3fc2ec72180"
|
|
9646
9656
|
},
|
|
9657
|
+
{
|
|
9658
|
+
"path": "tests/agents_routes.mjs",
|
|
9659
|
+
"mode": "0000644",
|
|
9660
|
+
"sha256": "4e07055707e77bffe2b60750273d16e92a6b213dbbc999e8ed7e0cc742915f7c"
|
|
9661
|
+
},
|
|
9647
9662
|
{
|
|
9648
9663
|
"path": "tests/agents_spawn.mjs",
|
|
9649
9664
|
"mode": "0000644",
|
|
@@ -10549,6 +10564,11 @@
|
|
|
10549
10564
|
"mode": "0000644",
|
|
10550
10565
|
"sha256": "d6a78357533fdeea3bc33fe97cfcd27b1d04747c600d0a7800ddfca5199dbb1f"
|
|
10551
10566
|
},
|
|
10567
|
+
{
|
|
10568
|
+
"path": "tests/executed_closure.mjs",
|
|
10569
|
+
"mode": "0000644",
|
|
10570
|
+
"sha256": "9f4b768e74b542e080f2f2d92db3e5d7a05a66e0fe8822528a40e1b9399f178c"
|
|
10571
|
+
},
|
|
10552
10572
|
{
|
|
10553
10573
|
"path": "tests/explore_visible_states.mjs",
|
|
10554
10574
|
"mode": "0000644",
|
|
@@ -12212,7 +12232,7 @@
|
|
|
12212
12232
|
{
|
|
12213
12233
|
"path": "tests/publish_reconciler.mjs",
|
|
12214
12234
|
"mode": "0000644",
|
|
12215
|
-
"sha256": "
|
|
12235
|
+
"sha256": "92806699b18a064233330d844d4a5bd85ae5ebc628231be81bcdc4548063f074"
|
|
12216
12236
|
},
|
|
12217
12237
|
{
|
|
12218
12238
|
"path": "tests/push_path_brief.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
|
-
-
|
|
8
|
+
- 365 operations across 56 resource groups
|
|
9
9
|
|
|
10
10
|
## Use it from your project
|
|
11
11
|
|
|
@@ -100,6 +100,12 @@ function createClient(opts = {}) {
|
|
|
100
100
|
// GET /achievements — rank: any-builder — GET /achievements
|
|
101
101
|
getAchievements: (args) => request("GET", "/achievements", { hasBody: false }, args),
|
|
102
102
|
},
|
|
103
|
+
"agents": {
|
|
104
|
+
// GET /agents — rank: any-builder — GET /agents
|
|
105
|
+
getAgents: (args) => request("GET", "/agents", { hasBody: false }, args),
|
|
106
|
+
// GET /agents/{name} — rank: any-builder — GET /agents/:name
|
|
107
|
+
getAgentsName: (args) => request("GET", "/agents/{name}", { hasBody: false }, args),
|
|
108
|
+
},
|
|
103
109
|
"analytics": {
|
|
104
110
|
// GET /analytics/builder/{id} — rank: any-builder — GET /analytics/builder/:id
|
|
105
111
|
getAnalyticsBuilderId: (args) => request("GET", "/analytics/builder/{id}", { hasBody: false }, args),
|
|
@@ -99,6 +99,12 @@ function createClient(opts = {}) {
|
|
|
99
99
|
// GET /achievements — rank: any-builder — GET /achievements
|
|
100
100
|
getAchievements: (args) => request("GET", "/achievements", { hasBody: false }, args),
|
|
101
101
|
},
|
|
102
|
+
"agents": {
|
|
103
|
+
// GET /agents — rank: any-builder — GET /agents
|
|
104
|
+
getAgents: (args) => request("GET", "/agents", { hasBody: false }, args),
|
|
105
|
+
// GET /agents/{name} — rank: any-builder — GET /agents/:name
|
|
106
|
+
getAgentsName: (args) => request("GET", "/agents/{name}", { hasBody: false }, args),
|
|
107
|
+
},
|
|
102
108
|
"analytics": {
|
|
103
109
|
// GET /analytics/builder/{id} — rank: any-builder — GET /analytics/builder/:id
|
|
104
110
|
getAnalyticsBuilderId: (args) => request("GET", "/analytics/builder/{id}", { hasBody: false }, args),
|
|
@@ -19,6 +19,8 @@ export interface ErrorEnvelope { error: ApiErrorObject }
|
|
|
19
19
|
export interface GetAccessRequestsResponse { requests: unknown }
|
|
20
20
|
export interface GetAccessRequestsStatusResponse { github_login: unknown; status: unknown; admitted: unknown }
|
|
21
21
|
export interface GetAchievementsResponse { achievements: unknown }
|
|
22
|
+
export interface GetAgentsNameResponse { ok: boolean; agent: unknown }
|
|
23
|
+
export interface GetAgentsResponse { ok: boolean; agents: unknown; counts: unknown; vocabulary: unknown }
|
|
22
24
|
export interface GetAuditLogResponse { rows: unknown; page: unknown }
|
|
23
25
|
export interface GetAuthAppPairInfoResponse { pair_code: unknown; device_name: unknown; platform: unknown; status: unknown }
|
|
24
26
|
export interface GetAuthWebAdmissionStatusResponse { admitted: boolean }
|
|
@@ -434,6 +436,12 @@ export interface BongosClient {
|
|
|
434
436
|
/** GET /achievements — rank: any-builder */
|
|
435
437
|
getAchievements(args?: RequestArgs): Promise<GetAchievementsResponse>;
|
|
436
438
|
};
|
|
439
|
+
"agents": {
|
|
440
|
+
/** GET /agents — rank: any-builder */
|
|
441
|
+
getAgents(args?: RequestArgs): Promise<GetAgentsResponse>;
|
|
442
|
+
/** GET /agents/{name} — rank: any-builder */
|
|
443
|
+
getAgentsName(args?: RequestArgs): Promise<GetAgentsNameResponse>;
|
|
444
|
+
};
|
|
437
445
|
"analytics": {
|
|
438
446
|
/** GET /analytics/builder/{id} — rank: any-builder */
|
|
439
447
|
getAnalyticsBuilderId(args?: RequestArgs): Promise<ApiResponse>;
|
|
@@ -96,6 +96,12 @@ export function createClient(opts = {}) {
|
|
|
96
96
|
// GET /achievements — rank: any-builder — GET /achievements
|
|
97
97
|
getAchievements: (args) => request("GET", "/achievements", { hasBody: false }, args),
|
|
98
98
|
},
|
|
99
|
+
"agents": {
|
|
100
|
+
// GET /agents — rank: any-builder — GET /agents
|
|
101
|
+
getAgents: (args) => request("GET", "/agents", { hasBody: false }, args),
|
|
102
|
+
// GET /agents/{name} — rank: any-builder — GET /agents/:name
|
|
103
|
+
getAgentsName: (args) => request("GET", "/agents/{name}", { hasBody: false }, args),
|
|
104
|
+
},
|
|
99
105
|
"analytics": {
|
|
100
106
|
// GET /analytics/builder/{id} — rank: any-builder — GET /analytics/builder/:id
|
|
101
107
|
getAnalyticsBuilderId: (args) => request("GET", "/analytics/builder/{id}", { hasBody: false }, args),
|
package/docs/api/openapi.json
CHANGED
|
@@ -29,6 +29,10 @@
|
|
|
29
29
|
"name": "achievements",
|
|
30
30
|
"description": "Endpoints under `/api/bongos/achievements`."
|
|
31
31
|
},
|
|
32
|
+
{
|
|
33
|
+
"name": "agents",
|
|
34
|
+
"description": "Endpoints under `/api/bongos/agents`."
|
|
35
|
+
},
|
|
32
36
|
{
|
|
33
37
|
"name": "analytics",
|
|
34
38
|
"description": "Endpoints under `/api/bongos/analytics`."
|
|
@@ -505,6 +509,96 @@
|
|
|
505
509
|
]
|
|
506
510
|
}
|
|
507
511
|
},
|
|
512
|
+
"/agents": {
|
|
513
|
+
"get": {
|
|
514
|
+
"operationId": "get_agents",
|
|
515
|
+
"tags": [
|
|
516
|
+
"agents"
|
|
517
|
+
],
|
|
518
|
+
"summary": "GET /agents",
|
|
519
|
+
"description": "GET /agents — the whole registry. Unpaginated on purpose: agents are instance CONFIGURATION reconciled from committed files, so the row count is bounded by what a human wrote, not by traffic. If that ever stops being true, this is the line that needs a cursor — not a silent LIMIT, which would make the registry quietly incomplete.\n\n**Rank:** `any-builder` — Any authenticated builder (row-level ownership enforced in-handler).",
|
|
520
|
+
"x-rank": "any-builder",
|
|
521
|
+
"x-source": "modules/agents/routes/agents.js",
|
|
522
|
+
"responses": {
|
|
523
|
+
"200": {
|
|
524
|
+
"description": "Success.",
|
|
525
|
+
"content": {
|
|
526
|
+
"application/json": {
|
|
527
|
+
"schema": {
|
|
528
|
+
"$ref": "#/components/schemas/GetAgentsResponse"
|
|
529
|
+
}
|
|
530
|
+
}
|
|
531
|
+
}
|
|
532
|
+
},
|
|
533
|
+
"400": {
|
|
534
|
+
"$ref": "#/components/responses/BadRequest"
|
|
535
|
+
},
|
|
536
|
+
"401": {
|
|
537
|
+
"$ref": "#/components/responses/Unauthorized"
|
|
538
|
+
},
|
|
539
|
+
"403": {
|
|
540
|
+
"$ref": "#/components/responses/Forbidden"
|
|
541
|
+
}
|
|
542
|
+
},
|
|
543
|
+
"security": [
|
|
544
|
+
{
|
|
545
|
+
"builderSession": []
|
|
546
|
+
}
|
|
547
|
+
]
|
|
548
|
+
}
|
|
549
|
+
},
|
|
550
|
+
"/agents/{name}": {
|
|
551
|
+
"get": {
|
|
552
|
+
"operationId": "get_agents_name",
|
|
553
|
+
"tags": [
|
|
554
|
+
"agents"
|
|
555
|
+
],
|
|
556
|
+
"summary": "GET /agents/:name",
|
|
557
|
+
"description": "GET /agents/:name — one definition, persona included. The name is validated against the SAME regex the schema CHECKs, before it reaches the query. The query is parameterised regardless, so this is not the injection wall — it is the difference between a 404 and a 400 for a caller who sent something that could never have been a name.\n\n**Rank:** `any-builder` — Any authenticated builder (row-level ownership enforced in-handler).",
|
|
558
|
+
"x-rank": "any-builder",
|
|
559
|
+
"x-source": "modules/agents/routes/agents.js",
|
|
560
|
+
"parameters": [
|
|
561
|
+
{
|
|
562
|
+
"name": "name",
|
|
563
|
+
"in": "path",
|
|
564
|
+
"required": true,
|
|
565
|
+
"schema": {
|
|
566
|
+
"type": "string"
|
|
567
|
+
},
|
|
568
|
+
"description": "Path parameter `name`."
|
|
569
|
+
}
|
|
570
|
+
],
|
|
571
|
+
"responses": {
|
|
572
|
+
"200": {
|
|
573
|
+
"description": "Success.",
|
|
574
|
+
"content": {
|
|
575
|
+
"application/json": {
|
|
576
|
+
"schema": {
|
|
577
|
+
"$ref": "#/components/schemas/GetAgentsNameResponse"
|
|
578
|
+
}
|
|
579
|
+
}
|
|
580
|
+
}
|
|
581
|
+
},
|
|
582
|
+
"400": {
|
|
583
|
+
"$ref": "#/components/responses/BadRequest"
|
|
584
|
+
},
|
|
585
|
+
"401": {
|
|
586
|
+
"$ref": "#/components/responses/Unauthorized"
|
|
587
|
+
},
|
|
588
|
+
"403": {
|
|
589
|
+
"$ref": "#/components/responses/Forbidden"
|
|
590
|
+
},
|
|
591
|
+
"404": {
|
|
592
|
+
"$ref": "#/components/responses/NotFound"
|
|
593
|
+
}
|
|
594
|
+
},
|
|
595
|
+
"security": [
|
|
596
|
+
{
|
|
597
|
+
"builderSession": []
|
|
598
|
+
}
|
|
599
|
+
]
|
|
600
|
+
}
|
|
601
|
+
},
|
|
508
602
|
"/analytics/builder/{id}": {
|
|
509
603
|
"get": {
|
|
510
604
|
"operationId": "get_analytics_builder_id",
|
|
@@ -16776,6 +16870,36 @@
|
|
|
16776
16870
|
"achievements"
|
|
16777
16871
|
]
|
|
16778
16872
|
},
|
|
16873
|
+
"GetAgentsNameResponse": {
|
|
16874
|
+
"type": "object",
|
|
16875
|
+
"properties": {
|
|
16876
|
+
"ok": {
|
|
16877
|
+
"type": "boolean"
|
|
16878
|
+
},
|
|
16879
|
+
"agent": {}
|
|
16880
|
+
},
|
|
16881
|
+
"required": [
|
|
16882
|
+
"ok",
|
|
16883
|
+
"agent"
|
|
16884
|
+
]
|
|
16885
|
+
},
|
|
16886
|
+
"GetAgentsResponse": {
|
|
16887
|
+
"type": "object",
|
|
16888
|
+
"properties": {
|
|
16889
|
+
"ok": {
|
|
16890
|
+
"type": "boolean"
|
|
16891
|
+
},
|
|
16892
|
+
"agents": {},
|
|
16893
|
+
"counts": {},
|
|
16894
|
+
"vocabulary": {}
|
|
16895
|
+
},
|
|
16896
|
+
"required": [
|
|
16897
|
+
"ok",
|
|
16898
|
+
"agents",
|
|
16899
|
+
"counts",
|
|
16900
|
+
"vocabulary"
|
|
16901
|
+
]
|
|
16902
|
+
},
|
|
16779
16903
|
"GetAuditLogResponse": {
|
|
16780
16904
|
"type": "object",
|
|
16781
16905
|
"properties": {
|
|
@@ -22992,9 +23116,9 @@
|
|
|
22992
23116
|
"description": "A required dependency/feature is not configured or is temporarily down."
|
|
22993
23117
|
}
|
|
22994
23118
|
},
|
|
22995
|
-
"x-endpoint-count":
|
|
22996
|
-
"x-schema-count":
|
|
23119
|
+
"x-endpoint-count": 365,
|
|
23120
|
+
"x-schema-count": 403,
|
|
22997
23121
|
"x-undocumented-bodies": 9,
|
|
22998
|
-
"x-response-schemas":
|
|
23122
|
+
"x-response-schemas": 272,
|
|
22999
23123
|
"x-generated-by": "scripts/gds/gen-api-docs.js"
|
|
23000
23124
|
}
|
package/docs/api-reference.md
CHANGED
|
@@ -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.
|
|
5
|
+
> **Generated from the live route files** — the route file is authoritative. 365 endpoints across 59 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/<redacted>.md)): `public` < `any-builder` < `metic+archon` < `archon`.
|
|
@@ -23,6 +23,13 @@ Base path: `/api/bongos`. Ranks (enforced server-side, [ADR 0016](adr/<redacted>
|
|
|
23
23
|
|---|---|---|---|---|
|
|
24
24
|
| GET | `/api/bongos/achievements` | `any-builder` | — | All seeded achievements — lets /builders render locked + unlocked side by side. |
|
|
25
25
|
|
|
26
|
+
## `agents` (2)
|
|
27
|
+
|
|
28
|
+
| Method | Path | Rank | Body | Description |
|
|
29
|
+
|---|---|---|---|---|
|
|
30
|
+
| GET | `/api/bongos/agents` | `any-builder` | — | GET /agents — the whole registry. |
|
|
31
|
+
| GET | `/api/bongos/agents/:name` | `any-builder` | — | GET /agents/:name — one definition, persona included. |
|
|
32
|
+
|
|
26
33
|
## `analytics` (1)
|
|
27
34
|
|
|
28
35
|
| Method | Path | Rank | Body | Description |
|
|
@@ -1857,5 +1857,9 @@ is load-bearing: the script throws rather than guess if it is missing, and
|
|
|
1857
1857
|
landed since 1.19.697 with no explicit bump. run 34733917938. (task 1002620)
|
|
1858
1858
|
1.19.699 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
|
|
1859
1859
|
landed since 1.19.698 with no explicit bump. run 34734848584. (task 1002620)
|
|
1860
|
+
1.19.700 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
|
|
1861
|
+
landed since 1.19.699 with no explicit bump. run 34735048203. (task 1002620)
|
|
1862
|
+
1.19.701 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
|
|
1863
|
+
landed since 1.19.700 with no explicit bump. run 34735311256. (task 1002620)
|
|
1860
1864
|
---------------------------------------------------------------------------
|
|
1861
1865
|
```
|
|
@@ -303,4 +303,10 @@ module.exports = {
|
|
|
303
303
|
MODEL_TIERS,
|
|
304
304
|
RANK_ORDER,
|
|
305
305
|
SCOPE_RANK_FLOOR,
|
|
306
|
+
// Exported for the read routes (task 1002488), which reject an impossible
|
|
307
|
+
// :name with a 400 before it reaches the query. Shared rather than re-spelled:
|
|
308
|
+
// this pair already mirrors the agents_definitions_name_fmt_chk CHECK, and a
|
|
309
|
+
// second copy in the route layer is one more place for the three to drift.
|
|
310
|
+
NAME_RE,
|
|
311
|
+
NAME_MAX,
|
|
306
312
|
};
|