@bongos/core 1.19.552 → 1.19.553
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 +18 -18
- package/docs/module-api-changelog.md +2 -0
- package/modules/hall-ui/public/builders.js +4 -4
- package/modules/hall-ui/public/hall-render.js +1 -1
- package/modules/hall-ui/public/idea.js +1 -1
- package/modules/hall-ui/public/task-lib.js +2 -2
- package/modules/hall-ui/public/task.css +1 -1
- package/modules/hall-ui/public/task.js +3 -3
- package/modules/hall-ui/public/work.js +2 -2
- package/modules/public-landing/public/index.html +3 -3
- package/package-lock.json +2 -2
- package/package.json +1 -1
- package/public-docs/index.html +1 -1
- package/src/module-api.js +1 -1
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.553",
|
|
6
|
+
"core_contract": "1.19.553",
|
|
7
|
+
"source_commit": "0037c66da0cfa4bf64edadc01329b5b053aa50ad",
|
|
8
8
|
"source_ref": "HEAD",
|
|
9
|
-
"built_at": "2026-09-
|
|
9
|
+
"built_at": "2026-09-06T16:03:40.475Z",
|
|
10
10
|
"redaction": {
|
|
11
11
|
"model": "docs-redacted+functional-verbatim",
|
|
12
12
|
"docs_redacted": 442,
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
"gate": "passed"
|
|
18
18
|
},
|
|
19
19
|
"file_count": 2485,
|
|
20
|
-
"tree_sha256": "
|
|
20
|
+
"tree_sha256": "5394d408102a1217b87c8481579b5f9ee59eec97a9adac6f841254af6495e52a",
|
|
21
21
|
"files": [
|
|
22
22
|
{
|
|
23
23
|
"path": ".claude/skills/blocker-review/SKILL.md",
|
|
@@ -2652,7 +2652,7 @@
|
|
|
2652
2652
|
{
|
|
2653
2653
|
"path": "docs/module-api-changelog.md",
|
|
2654
2654
|
"mode": "0000644",
|
|
2655
|
-
"sha256": "
|
|
2655
|
+
"sha256": "ccbe2f9174064241f3e14dc6d1e816d6ebaae4f982497ff4efe3493e6800846c"
|
|
2656
2656
|
},
|
|
2657
2657
|
{
|
|
2658
2658
|
"path": "docs/modules-contract.md",
|
|
@@ -4607,7 +4607,7 @@
|
|
|
4607
4607
|
{
|
|
4608
4608
|
"path": "modules/hall-ui/public/builders.js",
|
|
4609
4609
|
"mode": "0000644",
|
|
4610
|
-
"sha256": "
|
|
4610
|
+
"sha256": "876c4f21b3aaa77fad298915afe7cc481a39b5235e846f61bcc7657a270dd227"
|
|
4611
4611
|
},
|
|
4612
4612
|
{
|
|
4613
4613
|
"path": "modules/hall-ui/public/chime.wav",
|
|
@@ -4822,7 +4822,7 @@
|
|
|
4822
4822
|
{
|
|
4823
4823
|
"path": "modules/hall-ui/public/hall-render.js",
|
|
4824
4824
|
"mode": "0000644",
|
|
4825
|
-
"sha256": "
|
|
4825
|
+
"sha256": "df47881aa19503356bc54c04ffca1167effb68f43b5c442e909074744f9af63c"
|
|
4826
4826
|
},
|
|
4827
4827
|
{
|
|
4828
4828
|
"path": "modules/hall-ui/public/hall-widgets.js",
|
|
@@ -4862,7 +4862,7 @@
|
|
|
4862
4862
|
{
|
|
4863
4863
|
"path": "modules/hall-ui/public/idea.js",
|
|
4864
4864
|
"mode": "0000644",
|
|
4865
|
-
"sha256": "
|
|
4865
|
+
"sha256": "e2b0491898652f569a569617c6f3ce969c9011072e04e376355b95d969a09119"
|
|
4866
4866
|
},
|
|
4867
4867
|
{
|
|
4868
4868
|
"path": "modules/hall-ui/public/idea.states.json",
|
|
@@ -5217,12 +5217,12 @@
|
|
|
5217
5217
|
{
|
|
5218
5218
|
"path": "modules/hall-ui/public/task-lib.js",
|
|
5219
5219
|
"mode": "0000644",
|
|
5220
|
-
"sha256": "
|
|
5220
|
+
"sha256": "64cfbc3a3815fd12249a4f8694668b4503272ec7c795ed3eaafbc81ed77183f3"
|
|
5221
5221
|
},
|
|
5222
5222
|
{
|
|
5223
5223
|
"path": "modules/hall-ui/public/task.css",
|
|
5224
5224
|
"mode": "0000644",
|
|
5225
|
-
"sha256": "
|
|
5225
|
+
"sha256": "1f2d0ed8f8c8497468e1102dd2d90b0e63f15bd89158e5935f50de1016c355e4"
|
|
5226
5226
|
},
|
|
5227
5227
|
{
|
|
5228
5228
|
"path": "modules/hall-ui/public/task.html",
|
|
@@ -5232,7 +5232,7 @@
|
|
|
5232
5232
|
{
|
|
5233
5233
|
"path": "modules/hall-ui/public/task.js",
|
|
5234
5234
|
"mode": "0000644",
|
|
5235
|
-
"sha256": "
|
|
5235
|
+
"sha256": "4e4ae2a620f30bc5d8863e0acf75003f97f9071405fceb51fda60de4deb7e3ad"
|
|
5236
5236
|
},
|
|
5237
5237
|
{
|
|
5238
5238
|
"path": "modules/hall-ui/public/task.states.json",
|
|
@@ -5277,7 +5277,7 @@
|
|
|
5277
5277
|
{
|
|
5278
5278
|
"path": "modules/hall-ui/public/work.js",
|
|
5279
5279
|
"mode": "0000644",
|
|
5280
|
-
"sha256": "
|
|
5280
|
+
"sha256": "1fed935dc521c45972e49435308cb791f2c509ea544ff55663221c9723590632"
|
|
5281
5281
|
},
|
|
5282
5282
|
{
|
|
5283
5283
|
"path": "modules/hall-ui/public/work.states.json",
|
|
@@ -6697,7 +6697,7 @@
|
|
|
6697
6697
|
{
|
|
6698
6698
|
"path": "modules/public-landing/public/index.html",
|
|
6699
6699
|
"mode": "0000644",
|
|
6700
|
-
"sha256": "
|
|
6700
|
+
"sha256": "c6ad936d8f4340a16f7faea30ec0b97b7a1c526a9a991d1e1c6ff1833ddb57ce"
|
|
6701
6701
|
},
|
|
6702
6702
|
{
|
|
6703
6703
|
"path": "modules/public-landing/public/index.probes.json",
|
|
@@ -7472,17 +7472,17 @@
|
|
|
7472
7472
|
{
|
|
7473
7473
|
"path": "package-lock.json",
|
|
7474
7474
|
"mode": "0000644",
|
|
7475
|
-
"sha256": "
|
|
7475
|
+
"sha256": "cfbffbcea38df68b7a0bffb2c6f99c76be20b0efcbb1d86489e029272e7d410b"
|
|
7476
7476
|
},
|
|
7477
7477
|
{
|
|
7478
7478
|
"path": "package.json",
|
|
7479
7479
|
"mode": "0000644",
|
|
7480
|
-
"sha256": "
|
|
7480
|
+
"sha256": "445928943329f12df7a6aa27a544b0f1a7c40bd4634c9c8460518777eb69981f"
|
|
7481
7481
|
},
|
|
7482
7482
|
{
|
|
7483
7483
|
"path": "public-docs/index.html",
|
|
7484
7484
|
"mode": "0000644",
|
|
7485
|
-
"sha256": "
|
|
7485
|
+
"sha256": "5ca4ae4f141fb9af378b8bdc0f3a013a6cb3f5289e0b9ba2f5ae5069c4c34844"
|
|
7486
7486
|
},
|
|
7487
7487
|
{
|
|
7488
7488
|
"path": "public-docs/redoc.standalone.js",
|
|
@@ -9172,7 +9172,7 @@
|
|
|
9172
9172
|
{
|
|
9173
9173
|
"path": "src/module-api.js",
|
|
9174
9174
|
"mode": "0000644",
|
|
9175
|
-
"sha256": "
|
|
9175
|
+
"sha256": "87189caf049da61dd52f02a1a8f884caac9bde741d3dd29543a7815e6994bca0"
|
|
9176
9176
|
},
|
|
9177
9177
|
{
|
|
9178
9178
|
"path": "src/module-loader/catalog.js",
|
|
@@ -1553,5 +1553,7 @@ is load-bearing: the script throws rather than guess if it is missing, and
|
|
|
1553
1553
|
landed since 1.19.550 with no explicit bump. run 33917261720. (task 1002620)
|
|
1554
1554
|
1.19.552 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
|
|
1555
1555
|
landed since 1.19.551 with no explicit bump. run 34043771286. (task 1002620)
|
|
1556
|
+
1.19.553 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
|
|
1557
|
+
landed since 1.19.552 with no explicit bump. run 34044208907. (task 1002620)
|
|
1556
1558
|
---------------------------------------------------------------------------
|
|
1557
1559
|
```
|
|
@@ -335,7 +335,7 @@
|
|
|
335
335
|
|
|
336
336
|
|
|
337
337
|
// Wires the public landing's access-request form. Submits to the one public
|
|
338
|
-
//
|
|
338
|
+
// Bongos write (POST /access-requests). On success the form collapses into a
|
|
339
339
|
// confirmation so the stranger knows the Archon has been pinged.
|
|
340
340
|
|
|
341
341
|
// Reads the module-level lastKarmaState / lastCostState directly — every caller
|
|
@@ -427,7 +427,7 @@
|
|
|
427
427
|
// * pick_disciplines — the craft picker (PATCH /me/disciplines).
|
|
428
428
|
// * join_discord — a Connect-Discord button (the existing OAuth flow,
|
|
429
429
|
// auto-joins + assigns rank role); clears when linked.
|
|
430
|
-
// cli_setup clears once the
|
|
430
|
+
// cli_setup clears once the Bongos CLI is authenticated (db.hasCliSession) and
|
|
431
431
|
// ship_three on the 3rd ship — both passive. The terminal ship_three step
|
|
432
432
|
// shows the live "N of 3" counter (its `detail`). `discord` is the /me discord
|
|
433
433
|
// block ({ linked, configured }) — when Discord isn't configured server-side
|
|
@@ -972,7 +972,7 @@
|
|
|
972
972
|
// local action or page reload while the hall sits open:
|
|
973
973
|
// * box_connect — stamped by the box's heartbeat the first time a `claude`
|
|
974
974
|
// process runs on the dev box (builder_boxes.first_connected_at);
|
|
975
|
-
// * cli_setup — stamped when the
|
|
975
|
+
// * cli_setup — stamped when the Bongos CLI is first authenticated on the box;
|
|
976
976
|
// * join_discord — flips on the OAuth link (usually a full redirect, but can
|
|
977
977
|
// also land from another tab).
|
|
978
978
|
// Without a poll, a newcomer who connects their box AFTER opening the hall sees
|
|
@@ -1268,7 +1268,7 @@
|
|
|
1268
1268
|
// The hall used to fetch every panel once at load and then freeze until a
|
|
1269
1269
|
// manual refresh — so an onboarding step that ticked server-side (e.g. after
|
|
1270
1270
|
// /builder-ship) never showed. We now open a Server-Sent Events stream
|
|
1271
|
-
// (GET /api/bongos/live) that emits a tiny `nudge` whenever
|
|
1271
|
+
// (GET /api/bongos/live) that emits a tiny `nudge` whenever Bongos state changes via
|
|
1272
1272
|
// ANY write path — API routes, background routines, even direct psql writes
|
|
1273
1273
|
// (the trigger lives in the DB; see migration 066 + src/bongos/routes/live.js).
|
|
1274
1274
|
// On a nudge we re-run loadAll(), debounced so a burst coalesces into one
|
|
@@ -916,7 +916,7 @@
|
|
|
916
916
|
// time. (The Discord step already did this; the craft picker and the
|
|
917
917
|
// See-the-works link used to render on locked/cleared steps too.) Every
|
|
918
918
|
// step auto-detects its own completion server-side (#777): join_discord
|
|
919
|
-
// clears on the Discord link, cli_setup once the
|
|
919
|
+
// clears on the Discord link, cli_setup once the Bongos CLI is authenticated,
|
|
920
920
|
// ship_three at the third ship — no manual ticking.
|
|
921
921
|
let action = '';
|
|
922
922
|
if (s.is_current && !s.cleared) {
|
|
@@ -114,7 +114,7 @@
|
|
|
114
114
|
}
|
|
115
115
|
|
|
116
116
|
// The body is markdown and renders through the hall's one parser, the way the
|
|
117
|
-
// task record's description does (task 1003465); a bare #NNN is a
|
|
117
|
+
// task record's description does (task 1003465); a bare #NNN is a Bongos id and
|
|
118
118
|
// drops its hash so it cannot read as a GitHub issue. Without the reader the
|
|
119
119
|
// text still shows, escaped.
|
|
120
120
|
function prose(text) {
|
|
@@ -65,7 +65,7 @@
|
|
|
65
65
|
return `<span class="task__tag task__tag--rank" title="Minimum rank required to claim this task">${esc(label)}</span>`;
|
|
66
66
|
}
|
|
67
67
|
|
|
68
|
-
// Strip bare "#NNN"
|
|
68
|
+
// Strip bare "#NNN" Bongos refs from prose we are about to paste elsewhere: on
|
|
69
69
|
// GitHub a bare #NNN autolinks to an ISSUE, and our ids are not GitHub's, so
|
|
70
70
|
// the link 404s. (Same rule the repo enforces in committed markdown.)
|
|
71
71
|
// VERBATIM from the two originals — do not "tidy" either detail:
|
|
@@ -95,7 +95,7 @@
|
|
|
95
95
|
const hallBase = location.hostname.startsWith('builders.') ? location.origin : `${location.origin}/builders`;
|
|
96
96
|
const hallUrl = `${hallBase}#/task/${t.id}`;
|
|
97
97
|
return [
|
|
98
|
-
`I am working on
|
|
98
|
+
`I am working on Bongos task ${t.id} (${t.title}) — ${hallUrl}`,
|
|
99
99
|
`Read the task description, follow its acceptance criteria, stay strictly within touches[], and ship via /builder-ship when done.`,
|
|
100
100
|
``,
|
|
101
101
|
`Task description:`,
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
beats with exactly ONE lit, which is the same lit-step grammar as the open tab
|
|
16
16
|
and the current nav item. It is a READOUT, not a control — nothing here is
|
|
17
17
|
pressable, so the accent lights only the beat the task is actually on.
|
|
18
|
-
The six
|
|
18
|
+
The six Bongos statuses fold into five beats because backlog / blocked / ready
|
|
19
19
|
are all "no builder has it yet"; task.js writes the caption that says which. */
|
|
20
20
|
.tk-rail {
|
|
21
21
|
display: grid;
|
|
@@ -244,7 +244,7 @@
|
|
|
244
244
|
return `<section><p class="rec-sec__h">${escapeHtml(kindWord)}</p><ul class="rec-deplist">${rows}</ul></section>`;
|
|
245
245
|
}
|
|
246
246
|
|
|
247
|
-
// The lifecycle rail: five beats, exactly one lit. Six
|
|
247
|
+
// The lifecycle rail: five beats, exactly one lit. Six Bongos statuses fold into
|
|
248
248
|
// five because backlog / blocked / ready all mean "no builder holds it yet";
|
|
249
249
|
// the first beat's caption is what says WHICH of the three it is, so the rail
|
|
250
250
|
// never implies a claim that has not happened.
|
|
@@ -321,7 +321,7 @@
|
|
|
321
321
|
}
|
|
322
322
|
}
|
|
323
323
|
|
|
324
|
-
// A bare #NNN in a description is a
|
|
324
|
+
// A bare #NNN in a description is a Bongos id, and anywhere it is pasted or
|
|
325
325
|
// rendered it would autolink to a GitHub issue that does not exist (CLAUDE.md's
|
|
326
326
|
// no-bare-#NNN rule) — so both the copy and the rendered paths drop the hash.
|
|
327
327
|
const delinkRefs = (s) => String(s || '').replace(/(^|\s)#(\d+)\b/g, '$1$2');
|
|
@@ -343,7 +343,7 @@
|
|
|
343
343
|
function buildPrompt(t) {
|
|
344
344
|
const url = `${location.origin}${hallBase()}/task/${t.id}`;
|
|
345
345
|
const desc = delinkRefs(t.description);
|
|
346
|
-
return `I am working on
|
|
346
|
+
return `I am working on Bongos task ${t.id} (${t.title || ''}) — ${url}\n\n` +
|
|
347
347
|
`Claim it with \`/builder-claim ${t.id}\`, build it, then \`/builder-ship ${t.id}\`.\n\n` +
|
|
348
348
|
`Task description:\n${desc}`;
|
|
349
349
|
}
|
|
@@ -817,7 +817,7 @@
|
|
|
817
817
|
function buildBulkParallelPrompt(tasks) {
|
|
818
818
|
const hallBase = location.hostname.startsWith('builders.') ? location.origin : `${location.origin}/builders`;
|
|
819
819
|
const lines = [
|
|
820
|
-
`I want to work on ${tasks.length}
|
|
820
|
+
`I want to work on ${tasks.length} Bongos tasks IN PARALLEL — open ${tasks.length} separate Claude Code sessions, each in its own worktree, one per task below, so they can run at the same time without touching each other's files.`,
|
|
821
821
|
'',
|
|
822
822
|
];
|
|
823
823
|
tasks.forEach((t, i) => {
|
|
@@ -831,7 +831,7 @@
|
|
|
831
831
|
function buildBulkSequentialPrompt(tasks) {
|
|
832
832
|
const hallBase = location.hostname.startsWith('builders.') ? location.origin : `${location.origin}/builders`;
|
|
833
833
|
const lines = [
|
|
834
|
-
`I want to work on ${tasks.length}
|
|
834
|
+
`I want to work on ${tasks.length} Bongos tasks IN ORDER, one after another in this same session — claim, build, and ship each before moving to the next.`,
|
|
835
835
|
'',
|
|
836
836
|
];
|
|
837
837
|
tasks.forEach((t, i) => {
|
|
@@ -910,7 +910,7 @@ composition A; landing composition v3, picked by the owner 2026-08-27. No roll,
|
|
|
910
910
|
<script>
|
|
911
911
|
(function () {
|
|
912
912
|
var API = '/api/bongos';
|
|
913
|
-
var
|
|
913
|
+
var API_ROOT = '/api/gds';
|
|
914
914
|
|
|
915
915
|
/* ── the tagline. It is ONE server-stamped string, but the composition wants it
|
|
916
916
|
on two lines, so the two halves are baked as separate spans. A host whose
|
|
@@ -1109,7 +1109,7 @@ composition A; landing composition v3, picked by the owner 2026-08-27. No roll,
|
|
|
1109
1109
|
return d.getDate() + ' ' + MONTHS[d.getMonth()];
|
|
1110
1110
|
}
|
|
1111
1111
|
|
|
1112
|
-
json(
|
|
1112
|
+
json(API_ROOT + '/public/progress').then(function (data) {
|
|
1113
1113
|
var rows = (data && data.progress) || [];
|
|
1114
1114
|
if (!rows.length) return;
|
|
1115
1115
|
var live = null;
|
|
@@ -1129,7 +1129,7 @@ composition A; landing composition v3, picked by the owner 2026-08-27. No roll,
|
|
|
1129
1129
|
}
|
|
1130
1130
|
});
|
|
1131
1131
|
|
|
1132
|
-
json(
|
|
1132
|
+
json(API_ROOT + '/public/recent-shipped?limit=6').then(function (data) {
|
|
1133
1133
|
var tasks = ((data && data.tasks) || []).slice(0, 6);
|
|
1134
1134
|
var list = document.querySelector('[data-rows]');
|
|
1135
1135
|
if (!tasks.length || !list) return;
|
package/package-lock.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bongos/core",
|
|
3
|
-
"version": "1.19.
|
|
3
|
+
"version": "1.19.553",
|
|
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.553",
|
|
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.553",
|
|
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/public-docs/index.html
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<meta charset="utf-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
6
6
|
<title>{{productName}} — API docs</title>
|
|
7
|
-
<meta name="description" content="{{productName}}
|
|
7
|
+
<meta name="description" content="{{productName}} API reference (OpenAPI 3.1)." />
|
|
8
8
|
<style>
|
|
9
9
|
/* Self-contained: no external fonts/CSS. Redoc paints the rest. */
|
|
10
10
|
html, body { margin: 0; padding: 0; }
|
package/src/module-api.js
CHANGED
|
@@ -49,7 +49,7 @@ const { validateOrRespond, LIMITS, parseId, asyncHandler, corsPublicGet, parsePa
|
|
|
49
49
|
// there. scripts/gds/bump-version.js still rewrites the literal below; it appends
|
|
50
50
|
// the entry to that file. Look for a version's history there, not here.
|
|
51
51
|
// ---------------------------------------------------------------------------
|
|
52
|
-
const CORE_VERSION = '1.19.
|
|
52
|
+
const CORE_VERSION = '1.19.553'; // CI auto-patch carrier (ADR 0161); changelog: docs/module-api-changelog.md
|
|
53
53
|
|
|
54
54
|
// A namespaced logger so a module's log lines are attributable + consistent.
|
|
55
55
|
// Usage: const log = api.logger('dev-box'); log.info('mounted');
|