@bongos/core 1.19.947 → 1.19.948
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
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.948",
|
|
6
|
+
"core_contract": "1.19.948",
|
|
7
|
+
"source_commit": "7e37e772b13a12d362d065e4717077968a833700",
|
|
8
8
|
"source_ref": "HEAD",
|
|
9
|
-
"built_at": "2026-09-22T00:
|
|
9
|
+
"built_at": "2026-09-22T00:24:59.637Z",
|
|
10
10
|
"redaction": {
|
|
11
11
|
"model": "docs-redacted+functional-verbatim",
|
|
12
12
|
"docs_redacted": 512,
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"gate": "passed"
|
|
18
18
|
},
|
|
19
19
|
"file_count": 2887,
|
|
20
|
-
"tree_sha256": "
|
|
20
|
+
"tree_sha256": "05aa6d17f1fc467a3da4bc029194d33bba69296024f1359ac1f8622f1278ad50",
|
|
21
21
|
"files": [
|
|
22
22
|
{
|
|
23
23
|
"path": ".claude/skills/ask-for-help/SKILL.md",
|
|
@@ -377,7 +377,7 @@
|
|
|
377
377
|
{
|
|
378
378
|
"path": "clients/bongos-client/package.json",
|
|
379
379
|
"mode": "0000644",
|
|
380
|
-
"sha256": "
|
|
380
|
+
"sha256": "f2a46cacecfdfff5632a6fbc7a9c5a7ac09a5b8d45bc48f579e91db4ff1cd7bd"
|
|
381
381
|
},
|
|
382
382
|
{
|
|
383
383
|
"path": "config/branding.neutral.json",
|
|
@@ -2682,7 +2682,7 @@
|
|
|
2682
2682
|
{
|
|
2683
2683
|
"path": "docs/module-api-changelog.md",
|
|
2684
2684
|
"mode": "0000644",
|
|
2685
|
-
"sha256": "
|
|
2685
|
+
"sha256": "3f21cd6d53ac515244ae5be6d14bcf36898e487b4638a51bf4611e735c823c9f"
|
|
2686
2686
|
},
|
|
2687
2687
|
{
|
|
2688
2688
|
"path": "docs/modules-contract.md",
|
|
@@ -8037,12 +8037,12 @@
|
|
|
8037
8037
|
{
|
|
8038
8038
|
"path": "package-lock.json",
|
|
8039
8039
|
"mode": "0000644",
|
|
8040
|
-
"sha256": "
|
|
8040
|
+
"sha256": "987a8459bed5c80b510ed385e8eadc8109c42abf0deadf9c08b3f83da31eb42d"
|
|
8041
8041
|
},
|
|
8042
8042
|
{
|
|
8043
8043
|
"path": "package.json",
|
|
8044
8044
|
"mode": "0000644",
|
|
8045
|
-
"sha256": "
|
|
8045
|
+
"sha256": "66e973de72ac31b96eca16d6f7fe34dd833d515fb5cf04c32a66bce743518a25"
|
|
8046
8046
|
},
|
|
8047
8047
|
{
|
|
8048
8048
|
"path": "public-docs/index.html",
|
|
@@ -8667,7 +8667,7 @@
|
|
|
8667
8667
|
{
|
|
8668
8668
|
"path": "scripts/gds/gen-api-client.js",
|
|
8669
8669
|
"mode": "0000644",
|
|
8670
|
-
"sha256": "
|
|
8670
|
+
"sha256": "00f267a8f3ceb040fa217d85f89b6e464ca6366f74b016c888d297ee900e816f"
|
|
8671
8671
|
},
|
|
8672
8672
|
{
|
|
8673
8673
|
"path": "scripts/gds/gen-api-docs.js",
|
|
@@ -10047,7 +10047,7 @@
|
|
|
10047
10047
|
{
|
|
10048
10048
|
"path": "src/module-api.js",
|
|
10049
10049
|
"mode": "0000644",
|
|
10050
|
-
"sha256": "
|
|
10050
|
+
"sha256": "d657538880551de9fb84c31218b01511298d620cb611f78bc4de93ae4acfb978"
|
|
10051
10051
|
},
|
|
10052
10052
|
{
|
|
10053
10053
|
"path": "src/module-loader/catalog.js",
|
|
@@ -10257,7 +10257,7 @@
|
|
|
10257
10257
|
{
|
|
10258
10258
|
"path": "tests/api_client.mjs",
|
|
10259
10259
|
"mode": "0000644",
|
|
10260
|
-
"sha256": "
|
|
10260
|
+
"sha256": "4f9a52f3f3eb998b87d06cb127fa79e21f7488281911159a159e0d856ea3f04c"
|
|
10261
10261
|
},
|
|
10262
10262
|
{
|
|
10263
10263
|
"path": "tests/api_docs.mjs",
|
|
@@ -2368,5 +2368,7 @@ is load-bearing: the script throws rather than guess if it is missing, and
|
|
|
2368
2368
|
landed since 1.19.945 with no explicit bump. run 35669244197. (task 1002620)
|
|
2369
2369
|
1.19.947 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
|
|
2370
2370
|
landed since 1.19.946 with no explicit bump. run 35671409094. (task 1002620)
|
|
2371
|
+
1.19.948 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
|
|
2372
|
+
landed since 1.19.947 with no explicit bump. run 35671807404. (task 1002620)
|
|
2371
2373
|
---------------------------------------------------------------------------
|
|
2372
2374
|
```
|
package/package-lock.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bongos/core",
|
|
3
|
-
"version": "1.19.
|
|
3
|
+
"version": "1.19.948",
|
|
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.948",
|
|
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.948",
|
|
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",
|
|
@@ -374,14 +374,29 @@ function renderPackageJson(spec) {
|
|
|
374
374
|
},
|
|
375
375
|
files: ['index.mjs', 'index.cjs', 'index.d.ts', 'bongos-client.global.js', 'README.md'],
|
|
376
376
|
license: 'AGPL-3.0-or-later',
|
|
377
|
+
// `private: true` is the ENFORCEMENT of the paragraph below (task 1004143). Task
|
|
378
|
+
// 1003742 removed the publishConfig, which stopped the repo CLAIMING this was a
|
|
379
|
+
// published package — but nothing stopped it BECOMING one again: `npm publish` in
|
|
380
|
+
// clients/bongos-client/ succeeded and would have recreated @bongos/client@0.0.2,
|
|
381
|
+
// the exact package the owner deleted from the registry on 2026-09-09. npm now
|
|
382
|
+
// refuses with EPRIVATE, so that removal cannot be silently undone by anyone who
|
|
383
|
+
// runs publish in the wrong directory.
|
|
384
|
+
//
|
|
385
|
+
// This is not the publish posture the note below calls fiction. That was declaring
|
|
386
|
+
// HOW it publishes (access: restricted) for something never published; this
|
|
387
|
+
// declares that it does not publish, which is the same fact the note states in
|
|
388
|
+
// prose. It does not affect `main`/`types`/`exports`, so the vendored copy and a
|
|
389
|
+
// workspace link resolve exactly as before.
|
|
390
|
+
private: true,
|
|
377
391
|
// NO publishConfig — this client is NOT an npm package (task 1003742).
|
|
378
392
|
//
|
|
379
393
|
// It was published once, 2026-07-07 at 0.0.2, under ADR 0134's private-first plan, and never
|
|
380
394
|
// updated while the API it is generated FROM moved 500+ core versions. It had zero consumers
|
|
381
395
|
// the whole time: nothing across the core or any instance repo ever declared it as a
|
|
382
|
-
// dependency — every consumer VENDORS a copy instead
|
|
383
|
-
//
|
|
384
|
-
//
|
|
396
|
+
// dependency — every consumer VENDORS a copy instead. That was two places when this was
|
|
397
|
+
// written; task 1003891 deleted the Dev Box Electron app, so build-cli-package.js vendoring
|
|
398
|
+
// it into @cloudbongos/cli (which could not depend on it anyway) is now the only one. The
|
|
399
|
+
// owner removed it from the registry on 2026-09-09.
|
|
385
400
|
//
|
|
386
401
|
// The manifest itself stays: `main`/`types`/`exports` are what make the vendored copy and a
|
|
387
402
|
// workspace link resolve. Declaring a publish posture is the part that was fiction.
|
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.948'; // 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');
|
package/tests/api_client.mjs
CHANGED
|
@@ -303,3 +303,40 @@ test('--check reads a CRLF working copy as fresh, and a real edit as stale (task
|
|
|
303
303
|
fs.rmSync(root, { recursive: true, force: true });
|
|
304
304
|
}
|
|
305
305
|
});
|
|
306
|
+
|
|
307
|
+
// ── the generated manifest must refuse to become an npm package (task 1004143) ──
|
|
308
|
+
//
|
|
309
|
+
// @bongos/client was published once (2026-07-07, 0.0.2), gathered zero consumers —
|
|
310
|
+
// everyone vendors a copy — and the owner deleted it from the registry on
|
|
311
|
+
// 2026-09-09. Task 1003742 removed the publishConfig so the repo stopped CLAIMING
|
|
312
|
+
// it was published, but nothing stopped it BECOMING published again: `npm publish`
|
|
313
|
+
// in clients/bongos-client/ succeeded and would have recreated it.
|
|
314
|
+
//
|
|
315
|
+
// WHY THIS IS ASSERTED ON THE MANIFEST AND NOT BY RUNNING npm. `npm publish
|
|
316
|
+
// --dry-run` is NOT a test of this and passes with `private: true` set: npm's
|
|
317
|
+
// dry-run path returns in lib/commands/publish.js before it ever calls
|
|
318
|
+
// libnpmpublish, and libnpmpublish/lib/publish.js is where the real guard lives —
|
|
319
|
+
// `if (manifest.private) throw EPRIVATE` as its first statement, unconditional and
|
|
320
|
+
// ahead of any network call. So a real publish IS blocked; a dry-run simply never
|
|
321
|
+
// reaches the check. Asserting the field is the honest test at this layer, and it
|
|
322
|
+
// is the part this repo actually controls.
|
|
323
|
+
test('the generated client manifest is private, so it cannot be republished', () => {
|
|
324
|
+
const pkg = JSON.parse(fs.readFileSync(
|
|
325
|
+
path.join(ROOT, 'clients', 'bongos-client', 'package.json'), 'utf8'));
|
|
326
|
+
assert.equal(pkg.private, true,
|
|
327
|
+
'clients/bongos-client/package.json lost `private: true` — npm publish in that directory '
|
|
328
|
+
+ 'would recreate @bongos/client, the package the owner removed from the registry.');
|
|
329
|
+
// The manifest still has to RESOLVE: 1003742 kept these on purpose, because the
|
|
330
|
+
// vendored copy and a workspace link go through them. `private` must not cost that.
|
|
331
|
+
for (const field of ['main', 'types', 'exports']) {
|
|
332
|
+
assert.ok(pkg[field], `the manifest lost \`${field}\` — the vendored copy resolves through it`);
|
|
333
|
+
}
|
|
334
|
+
});
|
|
335
|
+
|
|
336
|
+
test('the GENERATOR emits it, not just the committed file', () => {
|
|
337
|
+
// Fixing only the output is a fix that the next regeneration undoes.
|
|
338
|
+
const src = fs.readFileSync(path.join(ROOT, 'scripts', 'gds', 'gen-api-client.js'), 'utf8');
|
|
339
|
+
assert.match(src, /private:\s*true/,
|
|
340
|
+
'gen-api-client.js no longer emits `private: true` — the next regeneration would '
|
|
341
|
+
+ 'make clients/bongos-client publishable again.');
|
|
342
|
+
});
|