@bongos/core 1.19.759 → 1.19.760

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.759",
6
- "core_contract": "1.19.759",
7
- "source_commit": "707e9f0b5bf49699402632ba77c655817675f27c",
5
+ "core_version": "1.19.760",
6
+ "core_contract": "1.19.760",
7
+ "source_commit": "d95227cc76780c216d4662c4b5d1979114a2841f",
8
8
  "source_ref": "HEAD",
9
- "built_at": "2026-09-16T03:03:00.033Z",
9
+ "built_at": "2026-09-16T03:30:46.130Z",
10
10
  "redaction": {
11
11
  "model": "docs-redacted+functional-verbatim",
12
12
  "docs_redacted": 483,
@@ -17,7 +17,7 @@
17
17
  "gate": "passed"
18
18
  },
19
19
  "file_count": 2623,
20
- "tree_sha256": "72ddc6e8bfc5b6eb4aa5ab50108bbe35d4639bb91cad6318c0d6359b3c86ceec",
20
+ "tree_sha256": "0aa4534bb30ad7aebdab2abc87c30d522f473d9d154e17820e73fedaa79748f5",
21
21
  "files": [
22
22
  {
23
23
  "path": ".claude/skills/ask-for-help/SKILL.md",
@@ -2512,7 +2512,7 @@
2512
2512
  {
2513
2513
  "path": "docs/module-api-changelog.md",
2514
2514
  "mode": "0000644",
2515
- "sha256": "1c38ce9a7932e516d69df1e3deaf499f2a8e10ef545e8d4621919eef11a14b8a"
2515
+ "sha256": "dac2227121e64e9f6516a5dfb80e9362b4b3c05da7abef17cd199b89bf861104"
2516
2516
  },
2517
2517
  {
2518
2518
  "path": "docs/modules-contract.md",
@@ -7567,12 +7567,12 @@
7567
7567
  {
7568
7568
  "path": "package-lock.json",
7569
7569
  "mode": "0000644",
7570
- "sha256": "d3aebc78f2bcf902f69e9f27bb7375410de5851af241dbaebf7aefe729465f69"
7570
+ "sha256": "578710b1ef47bdf6cdf4510cbe531c5ed92a8ae3758f820eeb75efe4c6bafa61"
7571
7571
  },
7572
7572
  {
7573
7573
  "path": "package.json",
7574
7574
  "mode": "0000644",
7575
- "sha256": "83cc5d9eb22a0201d8a6bca2a74392b23eb9713aa78a651200552a3e2710b273"
7575
+ "sha256": "34ee3354f9e18c01ed9b9f0b5cac46a1d4e64da68978e38519e37a540b2c8787"
7576
7576
  },
7577
7577
  {
7578
7578
  "path": "public-docs/index.html",
@@ -9352,7 +9352,7 @@
9352
9352
  {
9353
9353
  "path": "src/bongos/serve-internal.js",
9354
9354
  "mode": "0000644",
9355
- "sha256": "f4bba033b2052b61d026682b0a06dd3044d77138e1978ad601060fbebbfdc34d"
9355
+ "sha256": "405b8069c27ea596981cd4a2fd6a57b7e3637022cf63962d46a19b452fa675fc"
9356
9356
  },
9357
9357
  {
9358
9358
  "path": "src/bongos/uptime-poller.js",
@@ -9382,7 +9382,7 @@
9382
9382
  {
9383
9383
  "path": "src/module-api.js",
9384
9384
  "mode": "0000644",
9385
- "sha256": "8ec75227e0ef1df2b932e943d085151cbb47133212aae42c86b425fb664a3c4c"
9385
+ "sha256": "9080c03abc81fa68447459fcec10d19afb4c9f8a5816515a2af48adf4cce76dd"
9386
9386
  },
9387
9387
  {
9388
9388
  "path": "src/module-loader/catalog.js",
@@ -11067,7 +11067,7 @@
11067
11067
  {
11068
11068
  "path": "tests/hall_page_gate_map.mjs",
11069
11069
  "mode": "0000644",
11070
- "sha256": "c4da76a78326495bad7393797d47ca076f8ad1f49fc3224fa2be337a3b6f109d"
11070
+ "sha256": "10d8376f94e415d20b112a61e8d1f7f8f0f539eba5f685bdac4509624a69c13e"
11071
11071
  },
11072
11072
  {
11073
11073
  "path": "tests/hall_palette.mjs",
@@ -1992,5 +1992,7 @@ is load-bearing: the script throws rather than guess if it is missing, and
1992
1992
  landed since 1.19.757 with no explicit bump. run 35049006030. (task 1002620)
1993
1993
  1.19.759 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
1994
1994
  landed since 1.19.758 with no explicit bump. run 35050268139. (task 1002620)
1995
+ 1.19.760 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
1996
+ landed since 1.19.759 with no explicit bump. run 35052040282. (task 1002620)
1995
1997
  ---------------------------------------------------------------------------
1996
1998
  ```
package/package-lock.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@bongos/core",
3
- "version": "1.19.759",
3
+ "version": "1.19.760",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@bongos/core",
9
- "version": "1.19.759",
9
+ "version": "1.19.760",
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.759",
3
+ "version": "1.19.760",
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",
@@ -1164,8 +1164,16 @@ function mountInternalSurfaces(app) {
1164
1164
  // task 1003172 (C02): `collab` joins the same tier — every read behind it is
1165
1165
  // any-builder and scoped to the caller by the SERVER (GET /help-requests/for-me
1166
1166
  // derives crafts from the viewer's own profile), so signed-in is the right floor.
1167
+ // task 1003629 (idea 1000907): the BARE `task` and `idea` slugs join the tier
1168
+ // their own /:id forms already sit on. /builders/task/:id and /builders/idea/:id
1169
+ // are gated by TASK_DETAIL_PAGE_RE / IDEA_DETAIL_PAGE_RE below, but those
1170
+ // regexes require a numeric id, so the id-less slugs fell through to
1171
+ // BUILDERS_PAGE_RE — which resolves them to the SAME task.html / idea.html
1172
+ // shells — and matched no gate at all. The shell carries no data and every
1173
+ // read behind it is gated server-side, so this closed an inconsistency rather
1174
+ // than an exposure; the point is that one URL cannot be two tiers at once.
1167
1175
  const SIGNEDIN_BUILDERS_PAGE_RE =
1168
- /^\/builders\/(?:work|pair|settings|atlas|modules|goals|roadmap|copy-desk|studio|ideas|collab|primer(?:\.md)?|diagrams)(?:\.html)?\/?$/;
1176
+ /^\/builders\/(?:work|pair|settings|atlas|modules|goals|roadmap|copy-desk|studio|ideas|collab|task|idea|primer(?:\.md)?|diagrams)(?:\.html)?\/?$/;
1169
1177
  // The diagram image assets under /builders/diagrams/ ride the same tier as the
1170
1178
  // page that embeds them.
1171
1179
  const SIGNEDIN_BUILDERS_PREFIX_RE = /^\/builders\/diagrams\//;
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.759'; // CI auto-patch carrier (ADR 0161); changelog: docs/module-api-changelog.md
74
+ const CORE_VERSION = '1.19.760'; // 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');
@@ -122,15 +122,15 @@ const ORACLE = {
122
122
  '/builders/drachmae': null,
123
123
  '/builders/profile': null,
124
124
 
125
- // NOT deliberate — recorded because it is true, and filed as idea 1000907
126
- // (task 1003448). The detail pages are addressed by a second segment, and
127
- // /builders/task/:id and /builders/idea/:id are both gated at signed-in; the
128
- // id-less slugs still resolve to the same shells through BUILDERS_PAGE_RE and
129
- // match no gate. No data rides the shell and every read behind it is gated
130
- // server-side, so this is an inconsistency rather than an exposure — but it is
131
- // a row that should turn into a real gate (or a redirect) when that is decided.
132
- '/builders/task': null,
133
- '/builders/idea': null,
125
+ // The bare detail slugs, gated by task 1003629 — the decision idea 1000907
126
+ // (task 1003448) asked for. They resolve to the same task.html / idea.html
127
+ // shells their /:id forms do, so they now sit on the same tier: the id-less
128
+ // form was never a different page, only a different spelling that the
129
+ // id-requiring TASK_DETAIL_PAGE_RE / IDEA_DETAIL_PAGE_RE could not see. A
130
+ // gate, not a redirect, because the shell is a real page at signed-in tier
131
+ // and redirecting would have to invent an id it does not have.
132
+ '/builders/task': 'requireBuilderPage',
133
+ '/builders/idea': 'requireBuilderPage',
134
134
 
135
135
  // Gone, not public — the hall ships no my-projects page at all since task
136
136
  // 1003308 (owner's decision: "my projects" is a user-level page the hub owns,