@bongos/core 1.19.193 → 1.19.194

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.193",
6
- "core_contract": "1.19.193",
7
- "source_commit": "8a3a21b06b2034b9972f0ae33c509b4551bb2d15",
5
+ "core_version": "1.19.194",
6
+ "core_contract": "1.19.194",
7
+ "source_commit": "51e36d9f794eb0037aa09c1e1730e1e840809121",
8
8
  "source_ref": "HEAD",
9
- "built_at": "2026-08-17T01:42:01.062Z",
9
+ "built_at": "2026-08-17T02:24:40.175Z",
10
10
  "redaction": {
11
11
  "model": "docs-redacted+functional-verbatim",
12
12
  "docs_redacted": 309,
@@ -17,7 +17,7 @@
17
17
  "gate": "passed"
18
18
  },
19
19
  "file_count": 1614,
20
- "tree_sha256": "1e89fae2ed7eddba5976e753bd28c3e2b9d9acff1e43cc1046b24133fdede5b6",
20
+ "tree_sha256": "01783a610e639ab5b32fc23d453417b70b8a9277f80e987926c0b0e95a12b225",
21
21
  "files": [
22
22
  {
23
23
  "path": ".claude/skills/blocker-review/SKILL.md",
@@ -4267,12 +4267,12 @@
4267
4267
  {
4268
4268
  "path": "package-lock.json",
4269
4269
  "mode": "0000644",
4270
- "sha256": "7d80a4c5bc2445f0f5e3402d5e1fabd3715e1b9ef42a63b9a807a8a4d3d3b07e"
4270
+ "sha256": "426eec8097d4ca14acea9859a254673f9d51fe2c644ef013229b1efe46a2d389"
4271
4271
  },
4272
4272
  {
4273
4273
  "path": "package.json",
4274
4274
  "mode": "0000644",
4275
- "sha256": "8afe9e20e19a60590530619bf1c380b4e8ba570a0fc49c15b8e3fdedc30f6f97"
4275
+ "sha256": "07bf17d0989db9908ddc62823f0f46c03806aaa0e01add72f0073d8cc86ec158"
4276
4276
  },
4277
4277
  {
4278
4278
  "path": "public-docs/index.html",
@@ -5882,7 +5882,7 @@
5882
5882
  {
5883
5883
  "path": "src/module-api.js",
5884
5884
  "mode": "0000644",
5885
- "sha256": "02055b996dbce5d537591cffca1eb0d12eff1207dd4df6b594da27482d3c2fdf"
5885
+ "sha256": "c670dfda30a263cdef49ff035bb9e6739346fca361b38f5e4fea67eea76dd423"
5886
5886
  },
5887
5887
  {
5888
5888
  "path": "src/module-loader/catalog.js",
@@ -6562,7 +6562,7 @@
6562
6562
  {
6563
6563
  "path": "tests/discord_channels.mjs",
6564
6564
  "mode": "0000644",
6565
- "sha256": "9685df65e80f438c082867f2167b63c224dd32a9fe1e722957ac97d48ad2e88c"
6565
+ "sha256": "981d34c2fb5ecb6e9b9f38ece947c6c7a400dceadf8bbcf09546c8b3a92eb899"
6566
6566
  },
6567
6567
  {
6568
6568
  "path": "tests/discord_foundation.mjs",
package/package-lock.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@bongos/core",
3
- "version": "1.19.193",
3
+ "version": "1.19.194",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@bongos/core",
9
- "version": "1.19.193",
9
+ "version": "1.19.194",
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.193",
3
+ "version": "1.19.194",
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",
package/src/module-api.js CHANGED
@@ -813,8 +813,10 @@ const { validateOrRespond, LIMITS, parseId, asyncHandler, corsPublicGet, parsePa
813
813
  // landed since 1.19.191 with no explicit bump. run 31984583069. (task 1002620)
814
814
  // 1.19.193 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
815
815
  // landed since 1.19.192 with no explicit bump. run 31985689267. (task 1002620)
816
+ // 1.19.194 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
817
+ // landed since 1.19.193 with no explicit bump. run 31987857242. (task 1002620)
816
818
  // ---------------------------------------------------------------------------
817
- const CORE_VERSION = '1.19.193'; // CI auto-patch carrier (ADR 0161); see changelog above
819
+ const CORE_VERSION = '1.19.194'; // CI auto-patch carrier (ADR 0161); see changelog above
818
820
 
819
821
  // A namespaced logger so a module's log lines are attributable + consistent.
820
822
  // Usage: const log = api.logger('dev-box'); log.info('mounted');
@@ -333,5 +333,37 @@ await t('planChannelReconcile no-ops a guild already matching, categories includ
333
333
  assert.deepEqual(ops, [], `expected no ops after #202 fix, got ${JSON.stringify(ops.map((o) => o.op + ' ' + (o.name || o.id)))}`);
334
334
  });
335
335
 
336
+ // --- the REAL repo config (task 1003033 / R20 of goal 1000069) -------------
337
+ // ADR 0037 calls docs/discord/channels.json the single source of truth, and
338
+ // rests its "Archon-gated by construction" argument on that file being a
339
+ // REPO file that has to be merged. It was not tracked in core until R20, so
340
+ // loadConfig() threw ENOENT on a fresh checkout and the argument did not hold.
341
+ // These pin the file's existence and shape so it cannot silently vanish again.
342
+ await t('the real docs/discord/channels.json exists and parses', () => {
343
+ const cfg = ch.loadConfig();
344
+ assert.ok(Array.isArray(cfg.categories) && cfg.categories.length > 0,
345
+ 'config must declare at least one category');
346
+ });
347
+
348
+ await t('the real config declares the board-room channel, visible to every builder', () => {
349
+ const cfg = ch.loadConfig();
350
+ const channels = cfg.categories.flatMap((c) => c.channels || []);
351
+ const board = channels.find((c) => ch.slugify(c.name) === 'board-room');
352
+ assert.ok(board, 'expected a channel whose slug is board-room');
353
+ // ADR 0175 §9 chose an OPEN ballot: a board nobody can observe cannot hold
354
+ // anyone to account. `xenos` grants that rank and every rank above it, so
355
+ // every builder sees the board's business while only members vote — and the
356
+ // vote itself is cast in the hall, never here.
357
+ assert.equal(board.view, 'xenos', 'board-room must be visible to every builder');
358
+ assert.ok(board.topic && board.topic.length > 0, 'board-room needs a topic');
359
+ });
360
+
361
+ await t('the real config plans cleanly against an empty guild and never deletes', () => {
362
+ const cfg = ch.loadConfig();
363
+ const { ops } = ch.planChannelReconcile({ categories: [], channels: [] }, cfg, CTX_BOT);
364
+ assert.ok(ops.some((o) => o.op === 'create-channel'), 'expected the channel to be created');
365
+ assert.ok(!ops.some((o) => String(o.op).startsWith('delete')), 'reconcile must never delete');
366
+ });
367
+
336
368
  console.log(`\n${passed} passed, ${failed} failed`);
337
369
  process.exit(failed ? 1 : 0);