@bongos/core 1.19.706 → 1.19.708

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,22 +2,22 @@
2
2
  "artifact": "bongos-core",
3
3
  "manifest_schema": 1,
4
4
  "generator": "scripts/gds/package-core.js",
5
- "core_version": "1.19.706",
6
- "core_contract": "1.19.706",
7
- "source_commit": "64c9df530070e324d8e24759cabe9f99b5f72e84",
5
+ "core_version": "1.19.708",
6
+ "core_contract": "1.19.708",
7
+ "source_commit": "42f201a980e11b8b417c2afa527230ed1ab05775",
8
8
  "source_ref": "HEAD",
9
- "built_at": "2026-09-13T05:25:47.946Z",
9
+ "built_at": "2026-09-13T06:14:54.451Z",
10
10
  "redaction": {
11
11
  "model": "docs-redacted+functional-verbatim",
12
12
  "docs_redacted": 477,
13
13
  "agent_docs_stubbed": 24,
14
- "functional_verbatim": 2135,
14
+ "functional_verbatim": 2138,
15
15
  "rules": 3,
16
16
  "gate_literals": 3,
17
17
  "gate": "passed"
18
18
  },
19
- "file_count": 2636,
20
- "tree_sha256": "153b7b8ec9f73145d3a44c31dd75daa089b2c94be32c2b91ad61e59270e89c69",
19
+ "file_count": 2639,
20
+ "tree_sha256": "369223629e32da5858cc92a00ab2643eaa169ca59d1d89d6ab77ab8c50e3fd57",
21
21
  "files": [
22
22
  {
23
23
  "path": ".claude/skills/ask-for-help/SKILL.md",
@@ -2802,7 +2802,7 @@
2802
2802
  {
2803
2803
  "path": "docs/module-api-changelog.md",
2804
2804
  "mode": "0000644",
2805
- "sha256": "68adee401731b2252b8f8e5c32d1164da7abb13261d0bc9aa1e8b83ead4a2a99"
2805
+ "sha256": "fd622c24f29995f2c8ebdd272cf5784f05285bbafc6c3da490308ed5e1730ba7"
2806
2806
  },
2807
2807
  {
2808
2808
  "path": "docs/modules-contract.md",
@@ -3882,7 +3882,7 @@
3882
3882
  {
3883
3883
  "path": "modules/agents/spawn.js",
3884
3884
  "mode": "0000644",
3885
- "sha256": "657e6a314e9daec8a7a3d17c3eee1ccfc35aaa1390d89fa0dd135d6365c103b1"
3885
+ "sha256": "4e92375cbedf3f782583af007314e46262d5776c4c7dc67dc7ff6abda0884ea3"
3886
3886
  },
3887
3887
  {
3888
3888
  "path": "modules/autonomy/CLAUDE.md",
@@ -7782,12 +7782,12 @@
7782
7782
  {
7783
7783
  "path": "package-lock.json",
7784
7784
  "mode": "0000644",
7785
- "sha256": "c22b832366994675cd2cb205017f9d775c35f89cafd4ecbf2ff4a13f5e8e218c"
7785
+ "sha256": "4f9b97401aebd998dd23bf3ec95a333fd6c596c0ea5551dc02dc6e863ad92742"
7786
7786
  },
7787
7787
  {
7788
7788
  "path": "package.json",
7789
7789
  "mode": "0000644",
7790
- "sha256": "e85ec6c7db1b0f2ba643ff4178049b28c57c43ba417feff7c54a4184a6da111f"
7790
+ "sha256": "9002e7fc0a70168d56042d71c7905aa045b541dbc36d61e88180a8dfb1e0f559"
7791
7791
  },
7792
7792
  {
7793
7793
  "path": "public-docs/index.html",
@@ -7859,6 +7859,11 @@
7859
7859
  "mode": "0000644",
7860
7860
  "sha256": "9c7ef61b64e41ee5dd6d913883e16dfed6d44bd6eefa4960b8dde566a63b5621"
7861
7861
  },
7862
+ {
7863
+ "path": "scripts/gds/agent-invoke.js",
7864
+ "mode": "0000644",
7865
+ "sha256": "ee5b3a261ff1821d81f8d9c44ec3b319cd1c8c6681e28547b4bddb802a6bda56"
7866
+ },
7862
7867
  {
7863
7868
  "path": "scripts/gds/agents-sync.js",
7864
7869
  "mode": "0000644",
@@ -7977,7 +7982,7 @@
7977
7982
  {
7978
7983
  "path": "scripts/gds/box-infra.js",
7979
7984
  "mode": "0000644",
7980
- "sha256": "7890dee972f792b633a86d5ac9e6195bafdfc6c197195b8ac3f00c4a0f80d5c0"
7985
+ "sha256": "431691aed02a415c619dc0ba33106ac1e832e539260eff5f526debebe2d8ffff"
7981
7986
  },
7982
7987
  {
7983
7988
  "path": "scripts/gds/box-sync.js",
@@ -9562,7 +9567,7 @@
9562
9567
  {
9563
9568
  "path": "src/module-api.js",
9564
9569
  "mode": "0000644",
9565
- "sha256": "ea041db8186de51e61bdb52281d9d8a57627b10514f94a39e4120d9888c05aa5"
9570
+ "sha256": "98205e89563b71f2e6ddbe44a9639464bdc589c20f3f0a8de12a2b968ac06569"
9566
9571
  },
9567
9572
  {
9568
9573
  "path": "src/module-loader/catalog.js",
@@ -9664,6 +9669,16 @@
9664
9669
  "mode": "0000644",
9665
9670
  "sha256": "bdc9d3678e12dee3f3252785ca82e06071421762c7146cbc1591d3fc2ec72180"
9666
9671
  },
9672
+ {
9673
+ "path": "tests/agent_invoke.mjs",
9674
+ "mode": "0000644",
9675
+ "sha256": "dfee6b9fd55abd8df182ddfc2a2b30b0168254368e1986b58fc60cb86fcaf2d7"
9676
+ },
9677
+ {
9678
+ "path": "tests/agent_invoke_live.mjs",
9679
+ "mode": "0000644",
9680
+ "sha256": "9b90e0caab614f0751c251c5b5812ee273443a74e684d9156a7bffbb28ac7ee2"
9681
+ },
9667
9682
  {
9668
9683
  "path": "tests/agents_routes.mjs",
9669
9684
  "mode": "0000644",
@@ -9997,7 +10012,7 @@
9997
10012
  {
9998
10013
  "path": "tests/box_infra_resolve.mjs",
9999
10014
  "mode": "0000644",
10000
- "sha256": "cf261fa549f36d47ee42343bac2a297b132638aedf03beb8f521370b0c45c0e3"
10015
+ "sha256": "fde24a8c273a098c89bbbce6c006fa4400448c9522b93707f5cd3f4fb358c515"
10001
10016
  },
10002
10017
  {
10003
10018
  "path": "tests/box_onboard.mjs",
@@ -1871,5 +1871,9 @@ is load-bearing: the script throws rather than guess if it is missing, and
1871
1871
  landed since 1.19.704 with no explicit bump. run 34739785273. (task 1002620)
1872
1872
  1.19.706 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
1873
1873
  landed since 1.19.705 with no explicit bump. run 34740247460. (task 1002620)
1874
+ 1.19.707 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
1875
+ landed since 1.19.706 with no explicit bump. run 34741980536. (task 1002620)
1876
+ 1.19.708 — CI auto-patch (publish-on-merge, ADR 0161): carrier for merges
1877
+ landed since 1.19.707 with no explicit bump. run 34742245823. (task 1002620)
1874
1878
  ---------------------------------------------------------------------------
1875
1879
  ```
@@ -74,6 +74,26 @@ function plannedRow({ definition = {}, trigger = {}, gate = {}, model = null, re
74
74
  };
75
75
  }
76
76
 
77
+ // THE PROMPT ONE FIRE SENDS. The persona is WHO the agent is; `input` is what it
78
+ // was asked THIS time.
79
+ //
80
+ // An on-demand definition is meaningless without the second half — the trigger
81
+ // type has existed in the schema since the first migration, but until task
82
+ // 1002491 there was no way to carry the demand, so every fire sent the persona
83
+ // alone and an on-demand agent could only ever answer the empty question. An
84
+ // event fire passes no input and composes to exactly the string it sent before.
85
+ //
86
+ // Composed HERE, in the one function that talks to the runner, rather than by the
87
+ // caller handing over a doctored `definition`. A caller that rewrote `persona` to
88
+ // smuggle the question in would also be the thing `plannedRow` reads the agent's
89
+ // identity from, and the ledger would then describe a definition that never ran.
90
+ function composePrompt(definition, input) {
91
+ const persona = (definition && typeof definition.persona === 'string') ? definition.persona : '';
92
+ const text = typeof input === 'string' ? input.trim() : '';
93
+ if (!text) return persona;
94
+ return persona ? `${persona}\n\n${text}` : text;
95
+ }
96
+
77
97
  // How a finished run is recorded. Pure for the same reason.
78
98
  function completedRow({ ok, errorCode = null, costUsd = null, durationMs = null, outputRef = null } = {}) {
79
99
  if (ok) {
@@ -114,7 +134,8 @@ async function finishRun(pool, id, patch) {
114
134
  // into whatever triggered it — an event fabric must not be taken down by one
115
135
  // agent's bad day.
116
136
  async function spawnAgent({
117
- definition, trigger = {}, gate = { decision: 'go' }, requestedByBuilderId = null, cache = null,
137
+ definition, input = null, trigger = {}, gate = { decision: 'go' },
138
+ requestedByBuilderId = null, cache = null,
118
139
  } = {}, deps = {}) {
119
140
  const pool = deps.pool || api.pool;
120
141
  const now = deps.now || (() => Date.now());
@@ -150,7 +171,7 @@ async function spawnAgent({
150
171
  const started = now();
151
172
  try {
152
173
  const res = await runner({
153
- prompt: (definition && definition.persona) || '',
174
+ prompt: composePrompt(definition, input),
154
175
  // model/cwd/timeout are the ONLY knobs the port takes. No tools, no
155
176
  // permissions — see constraint 3.
156
177
  opts: { model, ...(deps.opts || {}) },
@@ -177,4 +198,4 @@ async function spawnAgent({
177
198
  }
178
199
  }
179
200
 
180
- module.exports = { spawnAgent, resolveModel, plannedRow, completedRow };
201
+ module.exports = { spawnAgent, resolveModel, plannedRow, completedRow, composePrompt };
package/package-lock.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@bongos/core",
3
- "version": "1.19.706",
3
+ "version": "1.19.708",
4
4
  "lockfileVersion": 3,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "@bongos/core",
9
- "version": "1.19.706",
9
+ "version": "1.19.708",
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.706",
3
+ "version": "1.19.708",
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",