@bongos/core 1.19.973 → 1.19.975
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 +12 -12
- package/.claude/skills/builder-cost/SKILL.md +1 -1
- package/docs/module-api-changelog.md +4 -0
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/scripts/gds/api-alias-caller-scan.js +8 -2
- package/src/module-api.js +1 -1
- package/tests/api_alias_caller_ratchet.mjs +6 -0
package/.bongos-core.json
CHANGED
|
@@ -2,11 +2,11 @@
|
|
|
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.975",
|
|
6
|
+
"core_contract": "1.19.975",
|
|
7
|
+
"source_commit": "4073475edb22dae11e825a4191c1467101ca8b78",
|
|
8
8
|
"source_ref": "HEAD",
|
|
9
|
-
"built_at": "2026-09-
|
|
9
|
+
"built_at": "2026-09-23T14:01:28.147Z",
|
|
10
10
|
"redaction": {
|
|
11
11
|
"model": "docs-redacted+functional-verbatim",
|
|
12
12
|
"docs_redacted": 516,
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"gate": "passed"
|
|
18
18
|
},
|
|
19
19
|
"file_count": 2920,
|
|
20
|
-
"tree_sha256": "
|
|
20
|
+
"tree_sha256": "2ff13cad510adfd6dc7430579c417a6c8216d515d0fadb546fec92844fee0186",
|
|
21
21
|
"files": [
|
|
22
22
|
{
|
|
23
23
|
"path": ".claude/skills/ask-for-help/SKILL.md",
|
|
@@ -57,7 +57,7 @@
|
|
|
57
57
|
{
|
|
58
58
|
"path": ".claude/skills/builder-cost/SKILL.md",
|
|
59
59
|
"mode": "0000644",
|
|
60
|
-
"sha256": "
|
|
60
|
+
"sha256": "3ba9cf5184515a8ab51e07e360e8e6e22d819cf8e10f7af1a7fb33466d619e30"
|
|
61
61
|
},
|
|
62
62
|
{
|
|
63
63
|
"path": ".claude/skills/builder-end/SKILL.md",
|
|
@@ -2702,7 +2702,7 @@
|
|
|
2702
2702
|
{
|
|
2703
2703
|
"path": "docs/module-api-changelog.md",
|
|
2704
2704
|
"mode": "0000644",
|
|
2705
|
-
"sha256": "
|
|
2705
|
+
"sha256": "7daf42cf3ac4f8acccb5543777095d0cbd57c6cf44769c12eb9ad3c0f45caa29"
|
|
2706
2706
|
},
|
|
2707
2707
|
{
|
|
2708
2708
|
"path": "docs/modules-contract.md",
|
|
@@ -8122,12 +8122,12 @@
|
|
|
8122
8122
|
{
|
|
8123
8123
|
"path": "package-lock.json",
|
|
8124
8124
|
"mode": "0000644",
|
|
8125
|
-
"sha256": "
|
|
8125
|
+
"sha256": "0f89059003740deb1ccd605358c8f983a2d0e1ea880bf5a584150d8f8549fef6"
|
|
8126
8126
|
},
|
|
8127
8127
|
{
|
|
8128
8128
|
"path": "package.json",
|
|
8129
8129
|
"mode": "0000644",
|
|
8130
|
-
"sha256": "
|
|
8130
|
+
"sha256": "d12f17578bc304bdef802b5e15a9a705437a947795a255a70b5e7d76c8a3f2e7"
|
|
8131
8131
|
},
|
|
8132
8132
|
{
|
|
8133
8133
|
"path": "public-docs/index.html",
|
|
@@ -8222,7 +8222,7 @@
|
|
|
8222
8222
|
{
|
|
8223
8223
|
"path": "scripts/gds/api-alias-caller-scan.js",
|
|
8224
8224
|
"mode": "0000644",
|
|
8225
|
-
"sha256": "
|
|
8225
|
+
"sha256": "b4c2dea7c692c034903e847179e9e4e067b31562341334a0b31af0f558bf81fc"
|
|
8226
8226
|
},
|
|
8227
8227
|
{
|
|
8228
8228
|
"path": "scripts/gds/api.js",
|
|
@@ -10147,7 +10147,7 @@
|
|
|
10147
10147
|
{
|
|
10148
10148
|
"path": "src/module-api.js",
|
|
10149
10149
|
"mode": "0000644",
|
|
10150
|
-
"sha256": "
|
|
10150
|
+
"sha256": "e0a617d0a28a74ab5e8a1af5b6ddeb79de9ec5b8c94640e6f548dac35416c085"
|
|
10151
10151
|
},
|
|
10152
10152
|
{
|
|
10153
10153
|
"path": "src/module-loader/catalog.js",
|
|
@@ -10342,7 +10342,7 @@
|
|
|
10342
10342
|
{
|
|
10343
10343
|
"path": "tests/api_alias_caller_ratchet.mjs",
|
|
10344
10344
|
"mode": "0000644",
|
|
10345
|
-
"sha256": "
|
|
10345
|
+
"sha256": "d212b275e725aef98e9f35ea79742ec2409167f07e812cb9cfc8c4ad93d27ed8"
|
|
10346
10346
|
},
|
|
10347
10347
|
{
|
|
10348
10348
|
"path": "tests/api_alias_exceptions.mjs",
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: builder-cost
|
|
3
3
|
description: >-
|
|
4
|
-
Log
|
|
4
|
+
Log or read project spend — api, compute, infra, domain, art or other. Triggers: "/builder-cost", "log cost", "what have we spent", "I just spent X on Y".
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
**Script skill (authoritative).** The core action is `node scripts/gds/cost.js <amount-usd> <category> [--task-id N] [--description "..."] [--skill <name>]`. Once the args are determined, run it and print its output verbatim.
|
|
@@ -2420,5 +2420,9 @@ is load-bearing: the script throws rather than guess if it is missing, and
|
|
|
2420
2420
|
landed since 1.19.971 with no explicit bump. run 35806478158. (task 1002620)
|
|
2421
2421
|
1.19.973 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
|
|
2422
2422
|
landed since 1.19.972 with no explicit bump. run 35813381436. (task 1002620)
|
|
2423
|
+
1.19.974 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
|
|
2424
|
+
landed since 1.19.973 with no explicit bump. run 35816317024. (task 1002620)
|
|
2425
|
+
1.19.975 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
|
|
2426
|
+
landed since 1.19.974 with no explicit bump. run 35871083707. (task 1002620)
|
|
2423
2427
|
---------------------------------------------------------------------------
|
|
2424
2428
|
```
|
package/package-lock.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bongos/core",
|
|
3
|
-
"version": "1.19.
|
|
3
|
+
"version": "1.19.975",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@bongos/core",
|
|
9
|
-
"version": "1.19.
|
|
9
|
+
"version": "1.19.975",
|
|
10
10
|
"license": "AGPL-3.0-or-later",
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"express": "^4.21.2",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bongos/core",
|
|
3
|
-
"version": "1.19.
|
|
3
|
+
"version": "1.19.975",
|
|
4
4
|
"description": "Cloud Bongos — the AI-first build platform core (GDS + platform surfaces + module system), installed as a versioned dependency (ADR 0108).",
|
|
5
5
|
"license": "AGPL-3.0-or-later",
|
|
6
6
|
"main": "src/platform-server.js",
|
|
@@ -146,8 +146,14 @@ const ALIAS_COMMENTARY_RE = /\balias\b|\blegacy\b|\bpermanent\b|\bforever\b/i;
|
|
|
146
146
|
// Two shapes: the URL itself, and prose ABOUT it — a heading such as "Authorized callback URL must
|
|
147
147
|
// include the full /api/gds path" names the prefix without the /auth/ segment, and sweeping it left
|
|
148
148
|
// the heading contradicting the body two lines below it. Caught in review on task 1004113; the rule
|
|
149
|
-
//
|
|
150
|
-
|
|
149
|
+
// covers the heading rather than the heading being rewritten, because the heading is right.
|
|
150
|
+
//
|
|
151
|
+
// NARROWED after grade review on 1004113: the first cut of this was a bare `\bcallback\b`, which
|
|
152
|
+
// excused ANY line carrying the word — "the webhook fires a callback to /api/gds/tasks" would have
|
|
153
|
+
// gone silently uncounted, and a shrink-only ratchet whose exclusions can be triggered by a common
|
|
154
|
+
// noun is not shrink-only. `callback URL` is the OAuth-registration phrase specifically, and the
|
|
155
|
+
// negative cases below are tested, not just the positive ones.
|
|
156
|
+
const ALIAS_PINNED_AUTH_RE = /\/api\/gds\/auth\/|\bcallback URL\b/i;
|
|
151
157
|
|
|
152
158
|
function isExcludedPath(relPath) {
|
|
153
159
|
const p = relPath.replace(/\\/g, '/');
|
package/src/module-api.js
CHANGED
|
@@ -71,7 +71,7 @@ const { responsibilityFor, ROLE_RESPONSIBILITIES } = require('./role-responsibil
|
|
|
71
71
|
// there. scripts/gds/bump-version.js still rewrites the literal below; it appends
|
|
72
72
|
// the entry to that file. Look for a version's history there, not here.
|
|
73
73
|
// ---------------------------------------------------------------------------
|
|
74
|
-
const CORE_VERSION = '1.19.
|
|
74
|
+
const CORE_VERSION = '1.19.975'; // CI auto-patch carrier (ADR 0161); changelog: docs/module-api-changelog.md
|
|
75
75
|
|
|
76
76
|
// A namespaced logger so a module's log lines are attributable + consistent.
|
|
77
77
|
// Usage: const log = api.logger('dev-box'); log.info('mounted');
|
|
@@ -164,6 +164,12 @@ test('a PINNED auth URL is not a caller anyone may move (rule 10, task 1004113)'
|
|
|
164
164
|
// The rule is NOT so wide that an ordinary caller in an auth-adjacent file escapes it.
|
|
165
165
|
assert.equal(scan.isCountedLine('node scripts/gds/api.js GET /api/gds/me'), true);
|
|
166
166
|
assert.equal(scan.isCountedLine('POST /api/gds/auth-free/thing'), true, 'only the /auth/ segment, not any word starting auth');
|
|
167
|
+
// …and the NEGATIVE half, which is the half that keeps a shrink-only metric shrink-only. The
|
|
168
|
+
// first cut of this rule was a bare `\bcallback\b`; a line that merely USES the common noun must
|
|
169
|
+
// still count, or the exclusion becomes a way to hide a caller by wording a sentence around it.
|
|
170
|
+
assert.equal(scan.isCountedLine('the webhook fires a callback to /api/gds/tasks'), true, 'a plain "callback" is not the pinned URL');
|
|
171
|
+
assert.equal(scan.isCountedLine('// callback handler posts to /api/gds/hooks'), true);
|
|
172
|
+
assert.equal(scan.isCountedLine('pass a callback; the poller reads /api/gds/versions'), true);
|
|
167
173
|
});
|
|
168
174
|
|
|
169
175
|
test('occurrences are counted, not lines — moving ONE of two callers on a line lowers the number', () => {
|