docs(row253): integrate 385a base and record dependency drift and bounds
This commit is contained in:
1 parent
141b79c293
commit
d213ef6514
14 files changed
+1473
-11
No files matched your search
@@ -197,3 +197,24 @@ The required gate base is the refactor tip Sage names at CLEAR, 378a76b85 or lat
|
||||
Duckworth-0113 approves 761893dac after git reads only (8d3fa3f20). B1 and M1 are closed; real timing remains unverified until the gate. N5 is harmless diagnostic noise on a vanished stat entry: the input redirection can report before stderr is redirected, and tester_capture discards supervisor stderr. No source change is made for it. N6 is recorded with R3: if the inner watchdog expires before kernel SID confirmation, finish has only the known child PID and kills that PID, not an unverified session. Other members may remain. Root still refuses, discards stdout and waits only within the outer bound. This is an explicit limit of cleanup before session identity is established, not a claim that the session was swept. The independent outer bound does not prove cross-session cleanup. Source/test bytes and the seven-entry manifest remain exactly those approved at 761893dac.
|
||||
|
||||
Sage-2463 integration onto 0fa7bf421: new gander/row253-0fa7 preserves both earlier branches. Only BUILD-LOG append conflicted; current upstream remains an exact prefix. README auto-merged with row191 processing controls. Focused row253 tests do not read the changed Console/processing code, but WebUI whole covers it on this base. Only README changed in the manifest; refreshed digest 24b6a01b2ede6f025ec898fa4ec830bb9585ce6151d6298e713e31c7430a502b. integration-0fa7/ records source-only dependency inspection, range-diff and every commit patch-id. No test/syntax/probe ran.
|
||||
|
||||
## Re-integration under sage-2659, no runs
|
||||
|
||||
New branch gander/row253-385a on385a7194c, rebased source141b79c29. Only the BUILD-LOG append conflicted; kept upstream as exact prefix. Runtime scripts, focused tests and shared fixture match8de88458d byte for byte. DEFERRED/README absorb upstream additions; manifest72a70e99ba0416ceb1f63ed737132ebbeb212332d1441c362b3dfa6c8b00209c. integration-385a/ holds the range-diff, full and no-log patch-ids, upstream manifest diff, test import/read drift and40 unique targets. No test or Node ran.
|
||||
|
||||
The focused tests indirectly import Store through CLI helpers, so they read/hash-check current schema.sql and migrations. 264a changes3k-to-3l ahead of this gate and needs a dependency re-check before CLEAR, even if its manifest overlap is empty. Whole stack-release T46 also reads current schema. case2 sandbox availability skip remains named under Duckworth0116 N9. The real Console files moved in278, but the focused tests write Console/config stand-ins; wholeWebUI covers the real changes.
|
||||
|
||||
SHELL-LIMITS.json now includes fresh278 run3 receipts. Same ceil(3*longest)+120 formula; foundation maximum39.901s gives240s. window.py uses each recorded whole-shell limit, and driver.py classifies GNUtimeout124/137 as timeout, never kill. No script/product/assertion changed. Historical row253 results carry nothing after C4.
|
||||
|
||||
| Shell | Longest recorded seconds | Limit seconds |
|
||||
|---|---:|---:|
|
||||
| scripts/test-auth.sh | 1.908123 | 126 |
|
||||
| scripts/test-conductor.sh | 8.057174 | 145 |
|
||||
| scripts/test-config.sh | 3.167892 | 130 |
|
||||
| scripts/test-discord.sh | 8.776728 | 147 |
|
||||
| scripts/test-extension-package.sh | 3.012857 | 130 |
|
||||
| scripts/test-foundation.sh | 39.901000 | 240 |
|
||||
| scripts/test-land-work.sh | 12.623263 | 158 |
|
||||
| scripts/test-queue.sh | 23.443742 | 191 |
|
||||
| scripts/test-release.sh | 12.168674 | 157 |
|
||||
| scripts/test-task.sh | 36.783798 | 231 |
|
||||
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"scripts/case2-unit.sh": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b",
|
||||
"scripts/case1-accept.sh": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"docs/plans/DEFERRED.md": "8a050b494f6678030aabb7a7c92116c58ad6306ab0a27f31b368cff53c9b5d7c",
|
||||
"packages/cli/tests/case-sudo-fixture.mjs": "b259b8c7926e49829c8a956674021cb0cc85ddd65aebdc786d05cc08d7790008",
|
||||
"packages/cli/tests/case2-unit.test.mjs": "1e0696eb196e83a0766b433ef71f27df0a3f8fcb6399787ab8c1c0f05c54dc44",
|
||||
"packages/cli/tests/case1-accept.test.mjs": "6cfd2963303315aa6911c4d4f6d75d3ab87d9fcba8e128b056216e7f85fd8901",
|
||||
"packages/webui/README.md": "9de6c8356e1f1e0ecb8d0be8ec523cb817b04bb633f0cd8aed7db32565ffd009",
|
||||
"docs/plans/DEFERRED.md": "3ea465cf7ed664ceb1ea4076b829f706f8480f80c4a8aaa6a7487e4eceaf318f"
|
||||
"packages/cli/tests/case2-unit.test.mjs": "1e0696eb196e83a0766b433ef71f27df0a3f8fcb6399787ab8c1c0f05c54dc44",
|
||||
"packages/webui/README.md": "ce9054060867120798c6b26737ac7d910d8cfbc7aa4ad614f4295619c7605e46",
|
||||
"scripts/case1-accept.sh": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd",
|
||||
"scripts/case2-unit.sh": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
}
|
||||
@@ -7,3 +7,5 @@ Base before the required gate integration: c3d88840c. Initial static repair pack
|
||||
Sage-2335 authorizes the runnable commit before the whole gate. No repaired-source syntax check, test, probe or host experiment has run. No results from 8a8df4171 carry. After Duckworth's delta static verdict, the gate must use the candidate integrated onto the refactor tip named by Sage at CLEAR (378a76b85 or later under sage-2342), never this old base. Fresh integration records and hashes will identify that final gate candidate.
|
||||
|
||||
Superseding integration under sage-2463: gander/row253-0fa7 on 0fa7bf421. See integration-0fa7/. Only README changed among the seven landing entries, retaining row191 processing-control documentation; the refreshed manifest digest is 24b6a01b2ede6f025ec898fa4ec830bb9585ce6151d6298e713e31c7430a502b. No gate has run.
|
||||
|
||||
Superseding integration under sage-2659: gander/row253-385a on385a7194c, source141b79c29, digest72a70e99ba0416ceb1f63ed737132ebbeb212332d1441c362b3dfa6c8b00209c. Only README and DEFERRED hashes change. See integration-385a/ for drift, patch-ids and dependency reads. No gate run;264a schema dependency must be re-checked before CLEAR.
|
||||
@@ -1,7 +1,7 @@
|
||||
3ea465cf7ed664ceb1ea4076b829f706f8480f80c4a8aaa6a7487e4eceaf318f docs/plans/DEFERRED.md
|
||||
8a050b494f6678030aabb7a7c92116c58ad6306ab0a27f31b368cff53c9b5d7c docs/plans/DEFERRED.md
|
||||
b259b8c7926e49829c8a956674021cb0cc85ddd65aebdc786d05cc08d7790008 packages/cli/tests/case-sudo-fixture.mjs
|
||||
6cfd2963303315aa6911c4d4f6d75d3ab87d9fcba8e128b056216e7f85fd8901 packages/cli/tests/case1-accept.test.mjs
|
||||
1e0696eb196e83a0766b433ef71f27df0a3f8fcb6399787ab8c1c0f05c54dc44 packages/cli/tests/case2-unit.test.mjs
|
||||
9de6c8356e1f1e0ecb8d0be8ec523cb817b04bb633f0cd8aed7db32565ffd009 packages/webui/README.md
|
||||
ce9054060867120798c6b26737ac7d910d8cfbc7aa4ad614f4295619c7605e46 packages/webui/README.md
|
||||
c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd scripts/case1-accept.sh
|
||||
d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b scripts/case2-unit.sh
|
||||
@@ -0,0 +1,132 @@
|
||||
{
|
||||
"authority": [
|
||||
"mos-1275",
|
||||
"sage-2659"
|
||||
],
|
||||
"scope": "Own Gander row196 receipt set documented for row278, plus the complete row278 run3 shell phase. Row253 old C4 results do not carry. Receipts choose timeouts only.",
|
||||
"consulted_records": [
|
||||
"ec1e7fad8:agents/gander/work/queue-196/evidence/suite-results-run1.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/evidence/suite-results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r2/mutants/results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r2/run2/base-results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r2/run2/killers/results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r3/gate/base-results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r3/gate/killers/results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r3/gate/sso-results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r4/gate/base-results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r4/gate/killers/results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r4/gate/sso-results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r4/gate/whole-results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r5/gate/whole-results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r5/resume/summary.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r6/base-results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r6/first-attempt/results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r6/killers/results.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r6/summary.json",
|
||||
"ec1e7fad8:agents/gander/work/queue-196/r6/whole-results.json",
|
||||
"385a7194c:agents/gander/work/queue-278/run3/whole/results.json"
|
||||
],
|
||||
"scripts": {
|
||||
"scripts/test-auth.sh": {
|
||||
"recorded_duration_seconds": 1.9081228229999543,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r6/whole-results.json",
|
||||
"limit_seconds": 126,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "dd4720cb0cbecd2fc523a318f2222d21d257c8c5889996a3d69e522ee971a707",
|
||||
"previous_maximum_seconds": 1.9081228229999543,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r6/whole-results.json",
|
||||
"row278_run3_seconds": 0.816
|
||||
},
|
||||
"scripts/test-conductor.sh": {
|
||||
"recorded_duration_seconds": 8.057173820000026,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r6/whole-results.json",
|
||||
"limit_seconds": 145,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "da84150467494a4c979759f400854411bd93a7efce981139757bf526d688a23b",
|
||||
"previous_maximum_seconds": 8.057173820000026,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r6/whole-results.json",
|
||||
"row278_run3_seconds": 6.078
|
||||
},
|
||||
"scripts/test-config.sh": {
|
||||
"recorded_duration_seconds": 3.1678915339999367,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r6/whole-results.json",
|
||||
"limit_seconds": 130,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "3301c1fabf616bb961d62f6decd0a46dadb0f399b8ba7f3c2ca60023d2b24c78",
|
||||
"previous_maximum_seconds": 3.1678915339999367,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r6/whole-results.json",
|
||||
"row278_run3_seconds": 1.868
|
||||
},
|
||||
"scripts/test-discord.sh": {
|
||||
"recorded_duration_seconds": 8.776727847000002,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"limit_seconds": 147,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "a5dcf783c51a5d5d184a357f91ebf9fa1c4e054f0cb84a3d1d7668f6156e025e",
|
||||
"previous_maximum_seconds": 8.776727847000002,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"row278_run3_seconds": 7.431
|
||||
},
|
||||
"scripts/test-extension-package.sh": {
|
||||
"recorded_duration_seconds": 3.01285702399991,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"limit_seconds": 130,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "5d7b687f16fd1a9414b229501177d530ba3af4eadd3cac319b33f38fdba9bf99",
|
||||
"previous_maximum_seconds": 3.01285702399991,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"row278_run3_seconds": 1.366
|
||||
},
|
||||
"scripts/test-foundation.sh": {
|
||||
"recorded_duration_seconds": 39.901,
|
||||
"receipt": "385a7194c:agents/gander/work/queue-278/run3/whole/results.json",
|
||||
"limit_seconds": 240,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "2e11038e7f784ec4f539eb768f63bab0fab9c9940334388a1fe2d47ab9e2b008",
|
||||
"previous_maximum_seconds": 39.70872647900006,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"row278_run3_seconds": 39.901
|
||||
},
|
||||
"scripts/test-land-work.sh": {
|
||||
"recorded_duration_seconds": 12.623263413000037,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"limit_seconds": 158,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "c9d1d5c9b006d5c12e5f796a9828361059f8e0410846fc55c070c0148b15cef4",
|
||||
"previous_maximum_seconds": 12.623263413000037,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"row278_run3_seconds": 11.338
|
||||
},
|
||||
"scripts/test-queue.sh": {
|
||||
"recorded_duration_seconds": 23.443742031000088,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"limit_seconds": 191,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "c270f181d1fa8b6d42ff4131c339beba786a8fd620bb66f8afdcec05e8b10868",
|
||||
"previous_maximum_seconds": 23.443742031000088,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"row278_run3_seconds": 21.158
|
||||
},
|
||||
"scripts/test-release.sh": {
|
||||
"recorded_duration_seconds": 12.168674453999964,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"limit_seconds": 157,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "be706dff832257bd4781abeabd19faa4ac16edf9a4af0c96457e33cf3bb6deb3",
|
||||
"previous_maximum_seconds": 12.168674453999964,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"row278_run3_seconds": 2.67
|
||||
},
|
||||
"scripts/test-task.sh": {
|
||||
"recorded_duration_seconds": 36.783798266,
|
||||
"receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"limit_seconds": 231,
|
||||
"derivation": "ceil(3 * longest successful whole-file receipt) + 120s headroom",
|
||||
"script_sha256": "10c4abb70bf9b83e617089b06a5436cc7fa6b866a176458b22128c3a15163f94",
|
||||
"previous_maximum_seconds": 36.783798266,
|
||||
"previous_receipt": "ec1e7fad8:agents/gander/work/queue-196/r5/resume/whole-results.json",
|
||||
"row278_run3_seconds": 13.843
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -33,6 +33,7 @@ def run(command, path, seconds=60):
|
||||
expired = False
|
||||
try:
|
||||
code = p.wait(timeout=seconds)
|
||||
expired = code in (124, 137)
|
||||
except subprocess.TimeoutExpired:
|
||||
expired = True
|
||||
os.killpg(p.pid, signal.SIGKILL)
|
||||
@@ -89,7 +90,7 @@ def main():
|
||||
raise RuntimeError('invalid syntax: '+d['id'])
|
||||
result = run(command,args.out/(d['id']+'.log'))
|
||||
result.update(id=d['id'], base_seconds=results['bases'][key]['seconds'],
|
||||
outcome='killed' if result['code'] != 0 else 'survived')
|
||||
outcome='timeout' if result['timeout'] else 'killed' if result['code'] != 0 else 'survived')
|
||||
results['changes'].append(result)
|
||||
if result['timeout']:
|
||||
raise RuntimeError('timeout requires Sage/Mos classification: '+d['id'])
|
||||
|
||||
@@ -0,0 +1,29 @@
|
||||
# Row253 re-integration onto 385a7194c
|
||||
|
||||
Authority: sage-2659. Branch gander/row253-385a preserves all previous seat branches. Source tip before this packet: 141b79c293d78e78b9ce05bcf0fcaa18ba4d6963. Ten commits replayed from 0fa7bf421..8de88458d onto 385a7194c.
|
||||
|
||||
The first design commit conflicted only on BUILD-LOG.md. Kept all upstream bytes and appended the row253 phase; later appends replayed. BUILD-LOG and DEFERRED keep 385a7194c as exact byte prefixes. BUILD-LOG stays outside the manifest and lands by append after code. README merged automatically; its four row253 replacement pairs are exactly the same as before. The row278 thread-claims documentation stays present. No runtime/test conflict or repair.
|
||||
|
||||
range-diff.txt identifies two context-only changes (commits1 and6), both BUILD-LOG context. All other pairs equal. patch-ids.json records all ten old/new pairs. The full patch-ids for commits1 and6 change because their BUILD-LOG context changed. Excluding BUILD-LOG, all ten patch-ids match. No runtime/test change.
|
||||
|
||||
The new seven-path manifest digest is 72a70e99ba0416ceb1f63ed737132ebbeb212332d1441c362b3dfa6c8b00209c. Only DEFERRED and README differ from8de88458d. The two host scripts, two test files and shared sudo fixture are byte-identical to Duckworth's approved candidate. manifest-drift.diff is the required 0fa7bf421..385a7194c diff restricted to the seven landing paths; upstream changed only DEFERRED(+79) and README(+9). drift.json lists every upstream changed path separately.
|
||||
|
||||
## Test reads and pins, source-only inspection
|
||||
|
||||
The focused case1/case2 tests read the host scripts and temporary fixture files. case2 also reads case2-precheck.sh and the two service templates; those three assets did not change in 0fa7bf421..385a7194c. Both tests write their own config.mjs and webui cli.mjs stand-ins into scratch copies. They do not import the real Console cli/serve/public modules, and row278's real Console changes require no focused fixture change.
|
||||
|
||||
The earlier dependency claim is widened here: both tests import cli/tests/helpers.mjs, which imports Store/Broker. Store reads schema.sql and the migration chain and checks schema bytes at module load, even when a particular test only calls tmp(). Store, broker, schema.sql and 3j-3k.sql changed upstream. drift.json lists the conservative literal-import closure and its nine moved modules (including business access/credentials/role/vocabulary and library mapping). The closure includes generated-source literals and is not an execution trace. case2-precheck.sh also dynamically imports the actual cli config and business index; business imports changed and the whole focused file must cover them. cli config itself did not change.
|
||||
|
||||
case2 imports seat/src/sandbox.mjs, as Duckworth0116 N9 identified. It did not change since0fa7, and its sandbox test still may skip on sandboxProblem(). Report that exact skip in the gate; do not assume zero. The actual sandbox binder reads the repository file inventory, so changed dependencies are covered by the whole-file run if available. No host experiment was run here.
|
||||
|
||||
Whole CLI covers changed format/grants/instances/lifecycle/tester/stack-release tests and real cli modules. Whole WebUI covers row278 and its existing shell fixture repair on this base. stack-release.test.mjs T46 at916 reads actual schema.sql and classifies every table; Store's schema hash and migrations are another live consumer. Whole-shell calls can load queue/business/bus consumers too. No row253 test has a literal 3k/3l version pin to update by assumption. The relevant whole-CLI schema fixture strings in stack-release-fixture.mjs model old target copies intentionally; they are not pins on the current bus schema. No assertion is changed to anticipate264a.
|
||||
|
||||
264a's 3k-to-3l schema change has not landed on this base. Before CLEAR, compare its store/schema/migration and any test or asset it moves, and integrate on a new branch if Sage names a new base. A seven-manifest-path-only check is insufficient because the focused import closure reads schema at load time. No result carries from the historical row253 gates after the C4 product repair.
|
||||
|
||||
## Gate preparation, no runs
|
||||
|
||||
SHELL-LIMITS.json uses the same successful whole-file receipt set as row278, plus every row278 run3 whole-shell result from385a7194c. Each limit is ceil(3*longest)+120 seconds. Foundation's newer39.901s receipt replaces39.708726s; its limit remains240. Other maxima remain the row196 receipts. All ten scripts have receipts;900 is the no-record fallback only. Each current script hash is pinned. No scripts/test-*.sh changed.
|
||||
|
||||
window.py now uses these whole-shell wrappers: timeout -k10 LIMIT bash scripts/test-X.sh, with the outer harness wait30s later. driver.py marks exits124/137 as timeout and never reports them as kills. These are harness-only changes; no product/test/fixture changed. No command was executed by either harness. All40 proposed string targets still occur exactly once, checked as bytes in uniqueness.json without running syntax or tests. Full C4 timing and kills remain unverified.
|
||||
|
||||
The next action is Duckworth's integration read, followed by Sage's CLEAR after281 and264a. No Node, test, syntax command, browser, probe, queue write, helper push or live action ran during this re-integration. Publishing the new branch needs a gap because the repo helper runs Node.
|
||||
@@ -0,0 +1,385 @@
|
||||
{
|
||||
"old_base": "0fa7bf421",
|
||||
"old_tip": "8de88458d",
|
||||
"new_base": "385a7194c",
|
||||
"rebased_tip": "141b79c293d78e78b9ce05bcf0fcaa18ba4d6963",
|
||||
"manifest_digest": "72a70e99ba0416ceb1f63ed737132ebbeb212332d1441c362b3dfa6c8b00209c",
|
||||
"manifest_paths_changed_upstream": [
|
||||
"docs/plans/DEFERRED.md",
|
||||
"packages/webui/README.md"
|
||||
],
|
||||
"candidate_blobs_changed": [
|
||||
{
|
||||
"path": "docs/plans/DEFERRED.md",
|
||||
"before": "3ea465cf7ed664ceb1ea4076b829f706f8480f80c4a8aaa6a7487e4eceaf318f",
|
||||
"after": "8a050b494f6678030aabb7a7c92116c58ad6306ab0a27f31b368cff53c9b5d7c"
|
||||
},
|
||||
{
|
||||
"path": "packages/webui/README.md",
|
||||
"before": "9de6c8356e1f1e0ecb8d0be8ec523cb817b04bb633f0cd8aed7db32565ffd009",
|
||||
"after": "ce9054060867120798c6b26737ac7d910d8cfbc7aa4ad614f4295619c7605e46"
|
||||
}
|
||||
],
|
||||
"unchanged_runnable_manifest_paths": [
|
||||
"packages/cli/tests/case-sudo-fixture.mjs",
|
||||
"packages/cli/tests/case1-accept.test.mjs",
|
||||
"packages/cli/tests/case2-unit.test.mjs",
|
||||
"scripts/case1-accept.sh",
|
||||
"scripts/case2-unit.sh"
|
||||
],
|
||||
"literal_import_walk": [
|
||||
"packages/bus/src/broker.mjs",
|
||||
"packages/bus/src/landing.mjs",
|
||||
"packages/bus/src/store.mjs",
|
||||
"packages/business/src/access.mjs",
|
||||
"packages/business/src/business.mjs",
|
||||
"packages/business/src/credentials.mjs",
|
||||
"packages/business/src/errors.mjs",
|
||||
"packages/business/src/index.mjs",
|
||||
"packages/business/src/launch.mjs",
|
||||
"packages/business/src/project.mjs",
|
||||
"packages/business/src/resolve.mjs",
|
||||
"packages/business/src/role.mjs",
|
||||
"packages/business/src/util.mjs",
|
||||
"packages/business/src/vars.mjs",
|
||||
"packages/business/src/vocabulary.mjs",
|
||||
"packages/business/tests/helpers.mjs",
|
||||
"packages/cli/src/errors.mjs",
|
||||
"packages/cli/src/transport.mjs",
|
||||
"packages/cli/tests/case-sudo-fixture.mjs",
|
||||
"packages/cli/tests/case1-accept.test.mjs",
|
||||
"packages/cli/tests/case2-unit.test.mjs",
|
||||
"packages/cli/tests/helpers.mjs",
|
||||
"packages/harness/tests/helpers.mjs",
|
||||
"packages/library/src/mapping.mjs",
|
||||
"packages/library/src/problems.mjs",
|
||||
"packages/plugins/src/kinds.mjs",
|
||||
"packages/plugins/src/loader.mjs",
|
||||
"packages/plugins/tests/helpers.mjs",
|
||||
"packages/processing-control/src/state.mjs",
|
||||
"packages/seat/src/sandbox.mjs",
|
||||
"packages/tasks/src/requirements.mjs"
|
||||
],
|
||||
"import_edges": [
|
||||
{
|
||||
"source": "packages/cli/tests/case2-unit.test.mjs",
|
||||
"target": "packages/business/tests/helpers.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/cli/tests/case2-unit.test.mjs",
|
||||
"target": "packages/seat/src/sandbox.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/cli/tests/case2-unit.test.mjs",
|
||||
"target": "packages/cli/tests/helpers.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/cli/tests/case2-unit.test.mjs",
|
||||
"target": "packages/cli/tests/case-sudo-fixture.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/cli/tests/helpers.mjs",
|
||||
"target": "packages/bus/src/broker.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/cli/tests/helpers.mjs",
|
||||
"target": "packages/bus/src/store.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/cli/tests/helpers.mjs",
|
||||
"target": "packages/business/tests/helpers.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/cli/tests/helpers.mjs",
|
||||
"target": "packages/harness/tests/helpers.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/cli/tests/helpers.mjs",
|
||||
"target": "packages/plugins/tests/helpers.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/cli/tests/helpers.mjs",
|
||||
"target": "packages/cli/src/transport.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/cli/src/transport.mjs",
|
||||
"target": "packages/cli/src/errors.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/harness/tests/helpers.mjs",
|
||||
"target": "packages/business/src/index.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/harness/tests/helpers.mjs",
|
||||
"target": "packages/business/tests/helpers.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/harness/tests/helpers.mjs",
|
||||
"target": "packages/plugins/src/loader.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/harness/tests/helpers.mjs",
|
||||
"target": "packages/business/tests/helpers.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/harness/tests/helpers.mjs",
|
||||
"target": "packages/business/tests/helpers.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/plugins/src/loader.mjs",
|
||||
"target": "packages/plugins/src/kinds.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/index.mjs",
|
||||
"target": "packages/business/src/errors.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/index.mjs",
|
||||
"target": "packages/business/src/vocabulary.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/index.mjs",
|
||||
"target": "packages/business/src/role.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/index.mjs",
|
||||
"target": "packages/business/src/vars.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/index.mjs",
|
||||
"target": "packages/business/src/credentials.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/index.mjs",
|
||||
"target": "packages/business/src/business.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/index.mjs",
|
||||
"target": "packages/business/src/access.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/index.mjs",
|
||||
"target": "packages/business/src/project.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/index.mjs",
|
||||
"target": "packages/business/src/resolve.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/resolve.mjs",
|
||||
"target": "packages/business/src/errors.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/resolve.mjs",
|
||||
"target": "packages/business/src/vocabulary.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/resolve.mjs",
|
||||
"target": "packages/business/src/vars.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/resolve.mjs",
|
||||
"target": "packages/business/src/util.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/resolve.mjs",
|
||||
"target": "packages/business/src/project.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/project.mjs",
|
||||
"target": "packages/business/src/errors.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/project.mjs",
|
||||
"target": "packages/business/src/vars.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/project.mjs",
|
||||
"target": "packages/business/src/util.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/util.mjs",
|
||||
"target": "packages/business/src/errors.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/util.mjs",
|
||||
"target": "packages/business/src/vocabulary.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/vars.mjs",
|
||||
"target": "packages/business/src/errors.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/vars.mjs",
|
||||
"target": "packages/business/src/vocabulary.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/vars.mjs",
|
||||
"target": "packages/business/src/util.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/vars.mjs",
|
||||
"target": "packages/plugins/src/kinds.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/access.mjs",
|
||||
"target": "packages/business/src/errors.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/access.mjs",
|
||||
"target": "packages/business/src/business.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/access.mjs",
|
||||
"target": "packages/business/src/util.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/access.mjs",
|
||||
"target": "packages/business/src/vocabulary.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/business.mjs",
|
||||
"target": "packages/business/src/errors.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/business.mjs",
|
||||
"target": "packages/business/src/launch.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/business.mjs",
|
||||
"target": "packages/business/src/vars.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/business.mjs",
|
||||
"target": "packages/business/src/credentials.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/business.mjs",
|
||||
"target": "packages/business/src/role.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/business.mjs",
|
||||
"target": "packages/business/src/vocabulary.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/business.mjs",
|
||||
"target": "packages/plugins/src/kinds.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/business.mjs",
|
||||
"target": "packages/library/src/mapping.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/business.mjs",
|
||||
"target": "packages/business/src/vocabulary.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/business.mjs",
|
||||
"target": "packages/business/src/util.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/library/src/mapping.mjs",
|
||||
"target": "packages/library/src/problems.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/role.mjs",
|
||||
"target": "packages/business/src/errors.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/role.mjs",
|
||||
"target": "packages/business/src/vocabulary.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/role.mjs",
|
||||
"target": "packages/business/src/util.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/credentials.mjs",
|
||||
"target": "packages/business/src/errors.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/credentials.mjs",
|
||||
"target": "packages/business/src/vocabulary.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/credentials.mjs",
|
||||
"target": "packages/business/src/util.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/launch.mjs",
|
||||
"target": "packages/business/src/util.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/business/src/launch.mjs",
|
||||
"target": "packages/business/src/errors.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/bus/src/broker.mjs",
|
||||
"target": "packages/processing-control/src/state.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/bus/src/broker.mjs",
|
||||
"target": "packages/plugins/src/kinds.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/bus/src/broker.mjs",
|
||||
"target": "packages/tasks/src/requirements.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/bus/src/broker.mjs",
|
||||
"target": "packages/bus/src/landing.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/bus/src/broker.mjs",
|
||||
"target": "packages/business/src/vocabulary.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/seat/src/sandbox.mjs",
|
||||
"target": "packages/business/src/vocabulary.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/cli/tests/case1-accept.test.mjs",
|
||||
"target": "packages/cli/tests/helpers.mjs"
|
||||
},
|
||||
{
|
||||
"source": "packages/cli/tests/case1-accept.test.mjs",
|
||||
"target": "packages/cli/tests/case-sudo-fixture.mjs"
|
||||
}
|
||||
],
|
||||
"changed_import_dependencies": [
|
||||
"packages/bus/src/broker.mjs",
|
||||
"packages/bus/src/store.mjs",
|
||||
"packages/business/src/access.mjs",
|
||||
"packages/business/src/business.mjs",
|
||||
"packages/business/src/credentials.mjs",
|
||||
"packages/business/src/index.mjs",
|
||||
"packages/business/src/role.mjs",
|
||||
"packages/business/src/vocabulary.mjs",
|
||||
"packages/library/src/mapping.mjs"
|
||||
],
|
||||
"read_assets": [
|
||||
"scripts/case1-accept.sh",
|
||||
"scripts/case2-unit.sh",
|
||||
"scripts/case2-precheck.sh",
|
||||
"packages/cli/systemd/mosaic-bus.service.in",
|
||||
"packages/webui/systemd/mosaic-webui.service.in",
|
||||
"packages/bus/schema.sql",
|
||||
"packages/bus/src/migrations/3b-3c.sql",
|
||||
"packages/bus/src/migrations/3b.sql",
|
||||
"packages/bus/src/migrations/3c-3d.sql",
|
||||
"packages/bus/src/migrations/3d-3e.sql",
|
||||
"packages/bus/src/migrations/3e-3f.sql",
|
||||
"packages/bus/src/migrations/3f-3g.sql",
|
||||
"packages/bus/src/migrations/3g-3h.sql",
|
||||
"packages/bus/src/migrations/3h-3i.sql",
|
||||
"packages/bus/src/migrations/3i-3j.sql",
|
||||
"packages/bus/src/migrations/3j-3k.sql"
|
||||
],
|
||||
"changed_read_assets": [
|
||||
"packages/bus/schema.sql",
|
||||
"packages/bus/src/migrations/3j-3k.sql"
|
||||
],
|
||||
"readme_change_lines_equal": true,
|
||||
"upstream_log_and_deferred_exact_prefix": true,
|
||||
"dependency_limit": "Conservative static literal-import walk, including generated source strings; not runtime trace. Runtime file reads and stand-ins assessed in NOTES.md. Schema3l from264a not yet on base and must be checked before CLEAR."
|
||||
}
|
||||
@@ -0,0 +1,117 @@
|
||||
diff --git a/docs/plans/DEFERRED.md b/docs/plans/DEFERRED.md
|
||||
index 197a29ecb..4c0c736f1 100644
|
||||
--- a/docs/plans/DEFERRED.md
|
||||
+++ b/docs/plans/DEFERRED.md
|
||||
@@ -319,6 +319,10 @@ at every gate. Started 2026-09-12 during the control board MVP.
|
||||
waits 30 s before it calls a lone `sleep 30` a leak. The row 197
|
||||
lanes scan only at lane end, about 15 minutes after pkg-bus, so they
|
||||
can't see it (mos-1169). (2026-10-21)
|
||||
+ Closing note, row 280 (2026-10-22): both scratch sshd fixtures install a
|
||||
+ bounded 30/60-second sleep stub that exits when its test directory is gone;
|
||||
+ other sleep arguments exec /usr/bin/sleep unchanged. Evidence is recorded
|
||||
+ in agents/rocko/work/queue-280/BUILD.md.
|
||||
|
||||
- **Row 66 live checks: the unslop notice on a live managed session, both harnesses.**
|
||||
(mos-1186, Vikunja #454.) Row 66's gate asked for one landing session per
|
||||
@@ -380,6 +384,81 @@ at every gate. Started 2026-09-12 during the control board MVP.
|
||||
credential and a real `release.sh activate`, and records both results on
|
||||
the re-pin row. Morgana's wording (row 244 BUILD.md), Webby N2 on row 244
|
||||
r1 (#1757). (2026-10-21)
|
||||
+- **Creative instances: the human can't delete one.** (Sage's ruling
|
||||
+ sage-2164 on the row 194 b4 rebase, #1692.) Row 213 put the creative
|
||||
+ definitions in END_PROTECTED, and row 194's `deleteRefusal`
|
||||
+ (`instance-settings.mjs`) refuses END_PROTECTED for every actor, so
|
||||
+ the human can't delete a companion instance and fire refuses one too.
|
||||
+ The Agents page hides Delete on the listing's `endProtected`. The fix
|
||||
+ threads the actor through `deleteRefusal` and the launcher's delete
|
||||
+ pass, so the human may delete one and the tester may not
|
||||
+ (`creativeHumanOnly`). Until then, the human can delist
|
||||
+ (instances.set launch: false) but neither fire nor delete removes a
|
||||
+ creative entry (sage-2166). The row covers fire and delete together;
|
||||
+ Sage files it. (2026-10-21)
|
||||
+ Closed for delete by row 256 (#1761, REQ-COS-3): `deleteRefusal` takes
|
||||
+ the actor, so the human deletes a creative instance and any other actor
|
||||
+ is refused `organization-creative-human-only`, and the listing's
|
||||
+ endProtected is the same check for its reader. Fire still refuses every
|
||||
+ END_PROTECTED instance, by the row 256 brief's ruling, not by a code
|
||||
+ change. (2026-10-22)
|
||||
+- **A fire stuck between step A and step B has no human escape.** (Webby
|
||||
+ N4 on row 194 b5, webby-0094; Sage's ruling sage-2241, #1692.) The
|
||||
+ broker's chief fire records `fire.stopped` at step A, and `#firing`
|
||||
+ refuses every launch and take of the instance until a `fire.done`. The
|
||||
+ events are in the store, so a bus restart doesn't clear them. Row 194
|
||||
+ b6 runs the writer's checks against the file before step A
|
||||
+ (`instance.fireCheck`), so a keep the bus hasn't loaded no longer
|
||||
+ strands an instance. A step B that keeps refusing still does: a
|
||||
+ credential revoke that fails every time, or a file a human changed
|
||||
+ between the check and the write. Each repeat fire runs step A again
|
||||
+ and refuses at B. The fix is a human verb, never an agent one, that
|
||||
+ records the end of the firing (a `fire.done`, or a new
|
||||
+ `fire.abandoned` that `#firing` also counts) with a reason. Its test:
|
||||
+ a fire whose step B refuses leaves the instance `instance-firing`, the
|
||||
+ verb as the chief or the tester refuses, and the verb as the human
|
||||
+ clears it so the instance launches again. (2026-10-21)
|
||||
+- **A fire's done with more than 64 stops refuses, and nothing flags a
|
||||
+ run left alive.** (Webby N2 on row 194 b8 r2, webby-0100; Sage's ruling
|
||||
+ sage-2290, #1692.) `lifecycleDone` caps `stops` at 64 and refuses
|
||||
+ `invalid-request` above it (`broker.mjs`). The launcher's fireStop has
|
||||
+ already signalled every run through stopRun by then, so the killed runs
|
||||
+ are dead. But the refused done writes no lifecycle.end.killed or
|
||||
+ lifecycle.end.alive event and no lifecycle.done, and the end request
|
||||
+ stays taken. A run the stop left alive, or couldn't confirm (unknown),
|
||||
+ gets no Console flag. The fire itself is unaffected, because
|
||||
+ `fire.stopped` and `fire.done` are written at the verb. No MVP instance
|
||||
+ comes near 64 runs. The follow-up row either raises the cap or splits
|
||||
+ the done. Its test: a fire's done over the cap refuses, and the runs it
|
||||
+ left alive still get the alive flag. (2026-10-22)
|
||||
+- **A fired or deleted instance keeps its grants.** (Dewey on the row 236
|
||||
+ rebase look, dewey-0815; Mos mos-1271; Sage sage-2558.) Row 194's
|
||||
+ `instance.fire` and row 256's delete revoke only the roles entry's
|
||||
+ credential services through `revoke()` in `runtime.mjs`. The agent's
|
||||
+ host grants (row 235) and its Gitea user and token (row 236) stay live
|
||||
+ until a human runs `mosaic hosts revoke` or `mosaic grants revoke`. The
|
||||
+ Console has no revoke route and doesn't say a grant is left. Row 281
|
||||
+ (#1786) closes it: a fire or a delete revokes every host and Gitea grant
|
||||
+ the instance holds, fail closed, with a test for each kind. It lands
|
||||
+ before the .53 Case 1 install hires an instance with a grant.
|
||||
+ (2026-10-22)
|
||||
+
|
||||
+- **The runs suite doesn't gate a change to `scripts/mosaic-task.mjs`.**
|
||||
+ (Dewey N7 on row 191, repeated on the Vikunja 502 review.)
|
||||
+ `packages/runs/tests/task-cli.test.mjs` spawns `scripts/mosaic-task.mjs`,
|
||||
+ but row 191's gate didn't run the runs suite. test-task.sh covers the same
|
||||
+ list and show paths, so nothing is known broken. Binds the next row that
|
||||
+ changes `scripts/mosaic-task.mjs`: its gate runs the runs suite whole.
|
||||
+ (2026-10-22)
|
||||
+
|
||||
+- **Row 277's M8 is killed by a rethrown error, not an assertion.**
|
||||
+ (Duckworth N1 on the row 277 manifest round, duckworth-0127.) M8 makes
|
||||
+ the thread.claims catch in `packages/cli/src/cli.mjs` rethrow. The stubbed
|
||||
+ `processing-halted` error then escapes `main` and fails
|
||||
+ `packages/cli/tests/tester.test.mjs:149`. That counts as a kill, but no
|
||||
+ test pins that `main` resolves on that path. Binds the next row that
|
||||
+ changes `packages/cli/tests/tester.test.mjs`: add the resolve pin so M8
|
||||
+ dies on an assertion. (2026-10-22)
|
||||
|
||||
## Queue
|
||||
|
||||
diff --git a/packages/webui/README.md b/packages/webui/README.md
|
||||
index 74d438c71..59cb4ee3a 100644
|
||||
--- a/packages/webui/README.md
|
||||
+++ b/packages/webui/README.md
|
||||
@@ -382,6 +382,15 @@ there are others. The page says what each state means. It writes nothing;
|
||||
the server passes the rows through unchanged. How the bus derives the state
|
||||
and its limits: `packages/bus/README.md`, "Agent state".
|
||||
|
||||
+The same view has a separate **Thread claims** section (row 278, #1783).
|
||||
+It reads `thread.claims` and shows thread id, holder run, harness and claim time,
|
||||
+in the bus's order. Thread names, messages, instance and address are not shown.
|
||||
+An empty read has an empty-state line. A refused or failed read clears only
|
||||
+this section's kept claims and shows its reason; the held roles and their
|
||||
+count stay intact. Sign-out clears the claims with the other bus reads.
|
||||
+The read needs no `--send`. The bus permits human and reader sessions;
|
||||
+the tester listener refuses it with HTTP 403 `tester-refused` before any bus call.
|
||||
+
|
||||
## Board: held roles and signing out (row 95, #1589)
|
||||
|
||||
The Board (`#/`) opens with **Held roles**: each role a run holds on the
|
||||
@@ -0,0 +1,82 @@
|
||||
[
|
||||
{
|
||||
"old": "39c30f1c200a1f5f27767dae4b730cade7703777",
|
||||
"new": "a9c094d0657a52c22ba51b35e690868358cf2bd0",
|
||||
"old_patch_id": "895656745186c2dc4cb1ee1261c323af90bf9fb9",
|
||||
"new_patch_id": "2b17f1d6773aa17909fc959081eec3f3821c3dee",
|
||||
"old_without_build_log": "86a00d372cedf03f5a8c573f48065de11bbbff29",
|
||||
"new_without_build_log": "86a00d372cedf03f5a8c573f48065de11bbbff29"
|
||||
},
|
||||
{
|
||||
"old": "d004b44982db5196777710e20163f877b07bf54d",
|
||||
"new": "2e81f78722ccd43d7524bb6a7d27d7ac26d0cea8",
|
||||
"old_patch_id": "d597cc7402b568d845a87c1f142bde74ce6ae9da",
|
||||
"new_patch_id": "d597cc7402b568d845a87c1f142bde74ce6ae9da",
|
||||
"old_without_build_log": "d597cc7402b568d845a87c1f142bde74ce6ae9da",
|
||||
"new_without_build_log": "d597cc7402b568d845a87c1f142bde74ce6ae9da"
|
||||
},
|
||||
{
|
||||
"old": "9e4bbee25d3a97e9dfec743d92c20f50154222da",
|
||||
"new": "3c8edc358c1f30ea7b5cc9a79d30282e59092715",
|
||||
"old_patch_id": "899327761a9bde7e7b4fefd790c1a523488e8029",
|
||||
"new_patch_id": "899327761a9bde7e7b4fefd790c1a523488e8029",
|
||||
"old_without_build_log": "899327761a9bde7e7b4fefd790c1a523488e8029",
|
||||
"new_without_build_log": "899327761a9bde7e7b4fefd790c1a523488e8029"
|
||||
},
|
||||
{
|
||||
"old": "69474277277fe87e7c398c508f6450aa0d691de7",
|
||||
"new": "3114087efe655f1d38c5e30f8327f65980854043",
|
||||
"old_patch_id": "38dcf7f0ec2a39bad2696d971a684a729b154747",
|
||||
"new_patch_id": "38dcf7f0ec2a39bad2696d971a684a729b154747",
|
||||
"old_without_build_log": "38dcf7f0ec2a39bad2696d971a684a729b154747",
|
||||
"new_without_build_log": "38dcf7f0ec2a39bad2696d971a684a729b154747"
|
||||
},
|
||||
{
|
||||
"old": "d85cf93d64a4ebf37865cbb74719d842105a1864",
|
||||
"new": "911e470b76d78e6a1ddd73c8e3e88a3ce821e43c",
|
||||
"old_patch_id": "1cf1916dab2a8552fadd07ce81246fce5f105b3d",
|
||||
"new_patch_id": "1cf1916dab2a8552fadd07ce81246fce5f105b3d",
|
||||
"old_without_build_log": "1cf1916dab2a8552fadd07ce81246fce5f105b3d",
|
||||
"new_without_build_log": "1cf1916dab2a8552fadd07ce81246fce5f105b3d"
|
||||
},
|
||||
{
|
||||
"old": "463a97f49f6bcaa65a10a54c2ad40e428e7fd135",
|
||||
"new": "4a8b5c3ff98bfd9c31d6bfeb5356570df240e98c",
|
||||
"old_patch_id": "08a16c862148ddae13044130cac740064d0e86fe",
|
||||
"new_patch_id": "c93ea22b2651163be712ebb7ce96c8230ee41da8",
|
||||
"old_without_build_log": "197948a3ddc789f46161ad573d52956990dbfcfb",
|
||||
"new_without_build_log": "197948a3ddc789f46161ad573d52956990dbfcfb"
|
||||
},
|
||||
{
|
||||
"old": "de93d8e038f591ea7be2f850c5fb0dea272c3d63",
|
||||
"new": "e18b90e95dd928743c53d63449a82ffaffe360e8",
|
||||
"old_patch_id": "aee9e5492bf07ee71687fd899c4e632bb36bc1e3",
|
||||
"new_patch_id": "aee9e5492bf07ee71687fd899c4e632bb36bc1e3",
|
||||
"old_without_build_log": "aee9e5492bf07ee71687fd899c4e632bb36bc1e3",
|
||||
"new_without_build_log": "aee9e5492bf07ee71687fd899c4e632bb36bc1e3"
|
||||
},
|
||||
{
|
||||
"old": "36bd3c3a8bda8c31da8219cc726ce005ec2dbd2b",
|
||||
"new": "67776714515b562dd29a15d6a0a3bea9d642e6f2",
|
||||
"old_patch_id": "d2aecebf222474b0e06c5109b5f22caf768176ce",
|
||||
"new_patch_id": "d2aecebf222474b0e06c5109b5f22caf768176ce",
|
||||
"old_without_build_log": "d2aecebf222474b0e06c5109b5f22caf768176ce",
|
||||
"new_without_build_log": "d2aecebf222474b0e06c5109b5f22caf768176ce"
|
||||
},
|
||||
{
|
||||
"old": "67224933425e9687bf366cd7ba7c31c1daa4e9f3",
|
||||
"new": "c733371c5c297291b9d06c2dd2772e22670fe653",
|
||||
"old_patch_id": "efb06f08af899d8f03390ab24ab65f6558cbae58",
|
||||
"new_patch_id": "efb06f08af899d8f03390ab24ab65f6558cbae58",
|
||||
"old_without_build_log": "efb06f08af899d8f03390ab24ab65f6558cbae58",
|
||||
"new_without_build_log": "efb06f08af899d8f03390ab24ab65f6558cbae58"
|
||||
},
|
||||
{
|
||||
"old": "8de88458d2c8bef57c8af51a1e4d459cf8feb8d9",
|
||||
"new": "141b79c293d78e78b9ce05bcf0fcaa18ba4d6963",
|
||||
"old_patch_id": "e29f40a61cc88532701f0b063154a0cbe8d7ba7b",
|
||||
"new_patch_id": "e29f40a61cc88532701f0b063154a0cbe8d7ba7b",
|
||||
"old_without_build_log": "e29f40a61cc88532701f0b063154a0cbe8d7ba7b",
|
||||
"new_without_build_log": "e29f40a61cc88532701f0b063154a0cbe8d7ba7b"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,31 @@
|
||||
1: 39c30f1c2 ! 1: a9c094d06 gander: design tester socket migration for host scripts
|
||||
@@ Commit message
|
||||
|
||||
## BUILD-LOG.md ##
|
||||
@@ BUILD-LOG.md: Before: managed project/thread verbs had no Console conversation area. After: fi
|
||||
- 2026-10-22 02:01:30 UTC | Sage (Claude Opus 5.5, 1ef1e4f8) | row 202 #1700 FED R5 landing | ddfb29af7 on 9c9732983: 6 manifest paths from a74cd9f87 (digests match CANDIDATE.sha256, patch-id 9d89077b equal); Duckworth APPROVE r5 rev 3026; C1 gate by Quackerjack on merge 3b86180b9: cli 771/771 skip 0 (run 2, run 1 red on gate TMPDIR length), 10 test-*.sh rc 0, M1-M13 killed; done rev 3108; landing note refused for length before the done move, so the record is the commit body and #1700 c30265; 191 and 194 rebased onto it (one scripts/mosaic case line)
|
||||
+ ### 2026-10-22 | Gander | row278 gate run3
|
||||
|
||||
- 2026-10-22 03:35:55 UTC | Sage (Claude Opus 5.5, 1ef1e4f8) | row 273 #1778 activate --send/--no-sso landing | 0bbf0f6d1 landed on 378a76b85, a rebase of cac7d0f67 (0042f713d) with all 6 range-diff pairs = and equal patch-ids; 4-path manifest e1031023 unchanged; Filbert APPROVE rev 3111 (c30308) carried merge-scoped under mos-1160, carry comment c30319 names 0bbf0f6d1. Gate on 0bbf0f6d1 by Darkwing: stack-release.test.mjs 218/218 skip 0, stack-release-external.test.mjs 25/25 skip 0, test-release.sh rc 0 (selftest 14/0, no skips), T58 controls c0 11/11 pass and c1 11/11 fail, M1-M7 killed. Rerun because row 202 changed scripts/mosaic, which stack-release.test.mjs copies. Red 1 was 978143bf4 (T53 test 6 usage pin). This doc commit adds the TOOLS.md usage line and F39 rules (Filbert N1).
|
||||
+ Fresh gate on3e4c77ac6 under sage-2648: bus793/0, WebUI345/0/1 (esbuild version skip), all ten shell files425/0, touched files15/0, M1-M6 killed6/6. No timeout; sweep0 run-created leftovers. Runs1/2 void. Seven-path manifest8fa859a0 goes to Webby for final review. No landing or live change.
|
||||
+2026-10-21 21:24:47 UTC | Gander row253 #1758 design r1 | Investigation began21:12Z under sage-2162; recorded now. Before: case2 installer still renders tester TCP and case1 acceptance requires it. After: proposed design covers socket marker migration, actual configured dataRoot within unchanged hardening, target-uid metadata queries, kernel-peer acceptance observation and explicit same-uid residual. Initial inventory saved; no passing final static-check claim, product edit, test, host or live action. Duckworth design review precedes code.
|
||||
|
||||
## agents/gander/work/queue-253/BASE-PORT-INVENTORY.json (new) ##
|
||||
2: d004b4498 = 2: 2e81f7872 test: prepare row253 socket fixtures and fix gate collisions
|
||||
3: 9e4bbee25 = 3: 3c8edc358 docs: propose row253 C4 session supervisor and draft hop fake
|
||||
4: 694742772 = 4: 3114087ef docs(row253): freeze C4 repair for static review
|
||||
5: d85cf93d6 = 5: 911e470b7 docs(row253): store repair patch without context whitespace
|
||||
6: 463a97f49 ! 6: 4a8b5c3ff fix(row253): supervise socket queries across sudo sessions
|
||||
@@ Commit message
|
||||
## BUILD-LOG.md ##
|
||||
@@ BUILD-LOG.md: Before: managed project/thread verbs had no Console conversation area. After: fi
|
||||
|
||||
- 2026-10-22 03:35:55 UTC | Sage (Claude Opus 5.5, 1ef1e4f8) | row 273 #1778 activate --send/--no-sso landing | 0bbf0f6d1 landed on 378a76b85, a rebase of cac7d0f67 (0042f713d) with all 6 range-diff pairs = and equal patch-ids; 4-path manifest e1031023 unchanged; Filbert APPROVE rev 3111 (c30308) carried merge-scoped under mos-1160, carry comment c30319 names 0bbf0f6d1. Gate on 0bbf0f6d1 by Darkwing: stack-release.test.mjs 218/218 skip 0, stack-release-external.test.mjs 25/25 skip 0, test-release.sh rc 0 (selftest 14/0, no skips), T58 controls c0 11/11 pass and c1 11/11 fail, M1-M7 killed. Rerun because row 202 changed scripts/mosaic, which stack-release.test.mjs copies. Red 1 was 978143bf4 (T53 test 6 usage pin). This doc commit adds the TOOLS.md usage line and F39 rules (Filbert N1).
|
||||
+ Fresh gate on3e4c77ac6 under sage-2648: bus793/0, WebUI345/0/1 (esbuild version skip), all ten shell files425/0, touched files15/0, M1-M6 killed6/6. No timeout; sweep0 run-created leftovers. Runs1/2 void. Seven-path manifest8fa859a0 goes to Webby for final review. No landing or live change.
|
||||
2026-10-21 21:24:47 UTC | Gander row253 #1758 design r1 | Investigation began21:12Z under sage-2162; recorded now. Before: case2 installer still renders tester TCP and case1 acceptance requires it. After: proposed design covers socket marker migration, actual configured dataRoot within unchanged hardening, target-uid metadata queries, kernel-peer acceptance observation and explicit same-uid residual. Initial inventory saved; no passing final static-check claim, product edit, test, host or live action. Duckworth design review precedes code.
|
||||
+
|
||||
+### 2026-10-21 row253 implementation prepared, gate pending
|
||||
7: de93d8e03 = 7: e18b90e95 fix(row253): bound cleanup retries after initial inventory
|
||||
8: 36bd3c3a8 = 8: 677767145 docs(row253): record static approval and pre-confirmation residual
|
||||
9: 672249334 = 9: c733371c5 docs(row253): record integration onto refactor 378a76b85
|
||||
10: 8de88458d = 10: 141b79c29 docs(row253): integrate row191 base and refresh manifest
|
||||
@@ -0,0 +1,242 @@
|
||||
[
|
||||
{
|
||||
"id": "M1",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M2",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M3",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M4",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M5",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M6",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M7",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M8",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M9",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M10",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M11",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M12",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd"
|
||||
},
|
||||
{
|
||||
"id": "M13",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd"
|
||||
},
|
||||
{
|
||||
"id": "M14",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd"
|
||||
},
|
||||
{
|
||||
"id": "M15",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd"
|
||||
},
|
||||
{
|
||||
"id": "M16",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd"
|
||||
},
|
||||
{
|
||||
"id": "M17",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd"
|
||||
},
|
||||
{
|
||||
"id": "M18",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd"
|
||||
},
|
||||
{
|
||||
"id": "M19",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd"
|
||||
},
|
||||
{
|
||||
"id": "M20",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd"
|
||||
},
|
||||
{
|
||||
"id": "M21",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd"
|
||||
},
|
||||
{
|
||||
"id": "M22",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd"
|
||||
},
|
||||
{
|
||||
"id": "M23",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd"
|
||||
},
|
||||
{
|
||||
"id": "M24",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M25",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd"
|
||||
},
|
||||
{
|
||||
"id": "M26",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd"
|
||||
},
|
||||
{
|
||||
"id": "M27",
|
||||
"file": "scripts/case1-accept.sh",
|
||||
"occurrences": 1,
|
||||
"before": "c02bef6b3495e5a4548d7b4e89675ed52be26a0c9ccce4d9d5cfc5fe2ce437bd"
|
||||
},
|
||||
{
|
||||
"id": "M28",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M29",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M30",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M31",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M32",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M33",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M34",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M35",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M36",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M37",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M38",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M39",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
},
|
||||
{
|
||||
"id": "M40",
|
||||
"file": "scripts/case2-unit.sh",
|
||||
"occurrences": 1,
|
||||
"before": "d7670bdb049ae41ba3774fc83de633636859b6723be858cfb31ea106b0e8812b"
|
||||
}
|
||||
]
|
||||
@@ -0,0 +1,417 @@
|
||||
[
|
||||
"BUILD-LOG.md",
|
||||
"agents/gander/work/queue-278/BASE-DRIFT.json",
|
||||
"agents/gander/work/queue-278/BUILD.md",
|
||||
"agents/gander/work/queue-278/CANDIDATE-SHAS.json",
|
||||
"agents/gander/work/queue-278/CANDIDATE.patch",
|
||||
"agents/gander/work/queue-278/MANIFEST.md",
|
||||
"agents/gander/work/queue-278/MANIFEST.sha256",
|
||||
"agents/gander/work/queue-278/SHELL-LIMITS.json",
|
||||
"agents/gander/work/queue-278/SOURCE.json",
|
||||
"agents/gander/work/queue-278/UNIQUENESS.json",
|
||||
"agents/gander/work/queue-278/changes.json",
|
||||
"agents/gander/work/queue-278/checks.py",
|
||||
"agents/gander/work/queue-278/launch.py",
|
||||
"agents/gander/work/queue-278/manifest-check.txt",
|
||||
"agents/gander/work/queue-278/report.py",
|
||||
"agents/gander/work/queue-278/run1/SUMMARY.json",
|
||||
"agents/gander/work/queue-278/run1/claim.log",
|
||||
"agents/gander/work/queue-278/run1/focused-controller.log",
|
||||
"agents/gander/work/queue-278/run1/focused/focused-0.command.json",
|
||||
"agents/gander/work/queue-278/run1/focused/focused-0.log",
|
||||
"agents/gander/work/queue-278/run1/focused/results.json",
|
||||
"agents/gander/work/queue-278/run1/red-controller.log",
|
||||
"agents/gander/work/queue-278/run1/red/red-0.command.json",
|
||||
"agents/gander/work/queue-278/run1/red/red-0.log",
|
||||
"agents/gander/work/queue-278/run1/red/red-1.command.json",
|
||||
"agents/gander/work/queue-278/run1/red/red-1.log",
|
||||
"agents/gander/work/queue-278/run1/red/results.json",
|
||||
"agents/gander/work/queue-278/run1/start.txt",
|
||||
"agents/gander/work/queue-278/run1/sweep-initial.json",
|
||||
"agents/gander/work/queue-278/run1/sweep.json",
|
||||
"agents/gander/work/queue-278/run1/syntax-controller.log",
|
||||
"agents/gander/work/queue-278/run1/syntax/results.json",
|
||||
"agents/gander/work/queue-278/run1/syntax/syntax-0.command.json",
|
||||
"agents/gander/work/queue-278/run1/syntax/syntax-0.log",
|
||||
"agents/gander/work/queue-278/run1/syntax/syntax-1.command.json",
|
||||
"agents/gander/work/queue-278/run1/syntax/syntax-1.log",
|
||||
"agents/gander/work/queue-278/run1/syntax/syntax-2.command.json",
|
||||
"agents/gander/work/queue-278/run1/syntax/syntax-2.log",
|
||||
"agents/gander/work/queue-278/run1/syntax/syntax-3.command.json",
|
||||
"agents/gander/work/queue-278/run1/syntax/syntax-3.log",
|
||||
"agents/gander/work/queue-278/run1/syntax/syntax-4.command.json",
|
||||
"agents/gander/work/queue-278/run1/syntax/syntax-4.log",
|
||||
"agents/gander/work/queue-278/run1/tmpdir.txt",
|
||||
"agents/gander/work/queue-278/run2/KILL-TABLE.md",
|
||||
"agents/gander/work/queue-278/run2/SUMMARY.json",
|
||||
"agents/gander/work/queue-278/run2/changes-controller.log",
|
||||
"agents/gander/work/queue-278/run2/changes/M1-base.command.json",
|
||||
"agents/gander/work/queue-278/run2/changes/M1-base.log",
|
||||
"agents/gander/work/queue-278/run2/changes/M1.command.json",
|
||||
"agents/gander/work/queue-278/run2/changes/M1.log",
|
||||
"agents/gander/work/queue-278/run2/changes/M2.command.json",
|
||||
"agents/gander/work/queue-278/run2/changes/M2.log",
|
||||
"agents/gander/work/queue-278/run2/changes/M3-base.command.json",
|
||||
"agents/gander/work/queue-278/run2/changes/M3-base.log",
|
||||
"agents/gander/work/queue-278/run2/changes/M3.command.json",
|
||||
"agents/gander/work/queue-278/run2/changes/M3.log",
|
||||
"agents/gander/work/queue-278/run2/changes/M4-base.command.json",
|
||||
"agents/gander/work/queue-278/run2/changes/M4-base.log",
|
||||
"agents/gander/work/queue-278/run2/changes/M4.command.json",
|
||||
"agents/gander/work/queue-278/run2/changes/M4.log",
|
||||
"agents/gander/work/queue-278/run2/changes/M5-base.command.json",
|
||||
"agents/gander/work/queue-278/run2/changes/M5-base.log",
|
||||
"agents/gander/work/queue-278/run2/changes/M5.command.json",
|
||||
"agents/gander/work/queue-278/run2/changes/M5.log",
|
||||
"agents/gander/work/queue-278/run2/changes/M6.command.json",
|
||||
"agents/gander/work/queue-278/run2/changes/M6.log",
|
||||
"agents/gander/work/queue-278/run2/changes/results.json",
|
||||
"agents/gander/work/queue-278/run2/focused-controller.log",
|
||||
"agents/gander/work/queue-278/run2/focused/focused-0.command.json",
|
||||
"agents/gander/work/queue-278/run2/focused/focused-0.log",
|
||||
"agents/gander/work/queue-278/run2/focused/focused-1.command.json",
|
||||
"agents/gander/work/queue-278/run2/focused/focused-1.log",
|
||||
"agents/gander/work/queue-278/run2/focused/results.json",
|
||||
"agents/gander/work/queue-278/run2/red-controller.log",
|
||||
"agents/gander/work/queue-278/run2/red/red-0.command.json",
|
||||
"agents/gander/work/queue-278/run2/red/red-0.log",
|
||||
"agents/gander/work/queue-278/run2/red/red-1.command.json",
|
||||
"agents/gander/work/queue-278/run2/red/red-1.log",
|
||||
"agents/gander/work/queue-278/run2/red/results.json",
|
||||
"agents/gander/work/queue-278/run2/start.txt",
|
||||
"agents/gander/work/queue-278/run2/sweep.json",
|
||||
"agents/gander/work/queue-278/run2/syntax-controller.log",
|
||||
"agents/gander/work/queue-278/run2/syntax/results.json",
|
||||
"agents/gander/work/queue-278/run2/syntax/syntax-0.command.json",
|
||||
"agents/gander/work/queue-278/run2/syntax/syntax-0.log",
|
||||
"agents/gander/work/queue-278/run2/syntax/syntax-1.command.json",
|
||||
"agents/gander/work/queue-278/run2/syntax/syntax-1.log",
|
||||
"agents/gander/work/queue-278/run2/syntax/syntax-2.command.json",
|
||||
"agents/gander/work/queue-278/run2/syntax/syntax-2.log",
|
||||
"agents/gander/work/queue-278/run2/syntax/syntax-3.command.json",
|
||||
"agents/gander/work/queue-278/run2/syntax/syntax-3.log",
|
||||
"agents/gander/work/queue-278/run2/syntax/syntax-4.command.json",
|
||||
"agents/gander/work/queue-278/run2/syntax/syntax-4.log",
|
||||
"agents/gander/work/queue-278/run2/tmpdir.txt",
|
||||
"agents/gander/work/queue-278/run2/whole-controller.log",
|
||||
"agents/gander/work/queue-278/run2/whole/bus.command.json",
|
||||
"agents/gander/work/queue-278/run2/whole/bus.log",
|
||||
"agents/gander/work/queue-278/run2/whole/results.json",
|
||||
"agents/gander/work/queue-278/run2/whole/webui.command.json",
|
||||
"agents/gander/work/queue-278/run2/whole/webui.log",
|
||||
"agents/gander/work/queue-278/run3/KILL-TABLE.md",
|
||||
"agents/gander/work/queue-278/run3/SUMMARY.json",
|
||||
"agents/gander/work/queue-278/run3/TMPDIR",
|
||||
"agents/gander/work/queue-278/run3/changes-controller.log",
|
||||
"agents/gander/work/queue-278/run3/changes/M1-base.command.json",
|
||||
"agents/gander/work/queue-278/run3/changes/M1-base.log",
|
||||
"agents/gander/work/queue-278/run3/changes/M1.command.json",
|
||||
"agents/gander/work/queue-278/run3/changes/M1.log",
|
||||
"agents/gander/work/queue-278/run3/changes/M2.command.json",
|
||||
"agents/gander/work/queue-278/run3/changes/M2.log",
|
||||
"agents/gander/work/queue-278/run3/changes/M3-base.command.json",
|
||||
"agents/gander/work/queue-278/run3/changes/M3-base.log",
|
||||
"agents/gander/work/queue-278/run3/changes/M3.command.json",
|
||||
"agents/gander/work/queue-278/run3/changes/M3.log",
|
||||
"agents/gander/work/queue-278/run3/changes/M4-base.command.json",
|
||||
"agents/gander/work/queue-278/run3/changes/M4-base.log",
|
||||
"agents/gander/work/queue-278/run3/changes/M4.command.json",
|
||||
"agents/gander/work/queue-278/run3/changes/M4.log",
|
||||
"agents/gander/work/queue-278/run3/changes/M5-base.command.json",
|
||||
"agents/gander/work/queue-278/run3/changes/M5-base.log",
|
||||
"agents/gander/work/queue-278/run3/changes/M5.command.json",
|
||||
"agents/gander/work/queue-278/run3/changes/M5.log",
|
||||
"agents/gander/work/queue-278/run3/changes/M6.command.json",
|
||||
"agents/gander/work/queue-278/run3/changes/M6.log",
|
||||
"agents/gander/work/queue-278/run3/changes/results.json",
|
||||
"agents/gander/work/queue-278/run3/end.txt",
|
||||
"agents/gander/work/queue-278/run3/focused-controller.log",
|
||||
"agents/gander/work/queue-278/run3/focused/focused-0.command.json",
|
||||
"agents/gander/work/queue-278/run3/focused/focused-0.log",
|
||||
"agents/gander/work/queue-278/run3/focused/focused-1.command.json",
|
||||
"agents/gander/work/queue-278/run3/focused/focused-1.log",
|
||||
"agents/gander/work/queue-278/run3/focused/focused-2.command.json",
|
||||
"agents/gander/work/queue-278/run3/focused/focused-2.log",
|
||||
"agents/gander/work/queue-278/run3/focused/results.json",
|
||||
"agents/gander/work/queue-278/run3/preexisting-processes.txt",
|
||||
"agents/gander/work/queue-278/run3/red-controller.log",
|
||||
"agents/gander/work/queue-278/run3/red/red-0.command.json",
|
||||
"agents/gander/work/queue-278/run3/red/red-0.log",
|
||||
"agents/gander/work/queue-278/run3/red/red-1.command.json",
|
||||
"agents/gander/work/queue-278/run3/red/red-1.log",
|
||||
"agents/gander/work/queue-278/run3/red/results.json",
|
||||
"agents/gander/work/queue-278/run3/start.txt",
|
||||
"agents/gander/work/queue-278/run3/sweep-initial.json",
|
||||
"agents/gander/work/queue-278/run3/sweep.json",
|
||||
"agents/gander/work/queue-278/run3/syntax-controller.log",
|
||||
"agents/gander/work/queue-278/run3/syntax/results.json",
|
||||
"agents/gander/work/queue-278/run3/syntax/syntax-0.command.json",
|
||||
"agents/gander/work/queue-278/run3/syntax/syntax-0.log",
|
||||
"agents/gander/work/queue-278/run3/syntax/syntax-1.command.json",
|
||||
"agents/gander/work/queue-278/run3/syntax/syntax-1.log",
|
||||
"agents/gander/work/queue-278/run3/syntax/syntax-2.command.json",
|
||||
"agents/gander/work/queue-278/run3/syntax/syntax-2.log",
|
||||
"agents/gander/work/queue-278/run3/syntax/syntax-3.command.json",
|
||||
"agents/gander/work/queue-278/run3/syntax/syntax-3.log",
|
||||
"agents/gander/work/queue-278/run3/syntax/syntax-4.command.json",
|
||||
"agents/gander/work/queue-278/run3/syntax/syntax-4.log",
|
||||
"agents/gander/work/queue-278/run3/syntax/syntax-6.command.json",
|
||||
"agents/gander/work/queue-278/run3/syntax/syntax-6.log",
|
||||
"agents/gander/work/queue-278/run3/whole-controller.log",
|
||||
"agents/gander/work/queue-278/run3/whole/bus.command.json",
|
||||
"agents/gander/work/queue-278/run3/whole/bus.log",
|
||||
"agents/gander/work/queue-278/run3/whole/results.json",
|
||||
"agents/gander/work/queue-278/run3/whole/test-auth.command.json",
|
||||
"agents/gander/work/queue-278/run3/whole/test-auth.log",
|
||||
"agents/gander/work/queue-278/run3/whole/test-conductor.command.json",
|
||||
"agents/gander/work/queue-278/run3/whole/test-conductor.log",
|
||||
"agents/gander/work/queue-278/run3/whole/test-config.command.json",
|
||||
"agents/gander/work/queue-278/run3/whole/test-config.log",
|
||||
"agents/gander/work/queue-278/run3/whole/test-discord.command.json",
|
||||
"agents/gander/work/queue-278/run3/whole/test-discord.log",
|
||||
"agents/gander/work/queue-278/run3/whole/test-extension-package.command.json",
|
||||
"agents/gander/work/queue-278/run3/whole/test-extension-package.log",
|
||||
"agents/gander/work/queue-278/run3/whole/test-foundation.command.json",
|
||||
"agents/gander/work/queue-278/run3/whole/test-foundation.log",
|
||||
"agents/gander/work/queue-278/run3/whole/test-land-work.command.json",
|
||||
"agents/gander/work/queue-278/run3/whole/test-land-work.log",
|
||||
"agents/gander/work/queue-278/run3/whole/test-queue.command.json",
|
||||
"agents/gander/work/queue-278/run3/whole/test-queue.log",
|
||||
"agents/gander/work/queue-278/run3/whole/test-release.command.json",
|
||||
"agents/gander/work/queue-278/run3/whole/test-release.log",
|
||||
"agents/gander/work/queue-278/run3/whole/test-task.command.json",
|
||||
"agents/gander/work/queue-278/run3/whole/test-task.log",
|
||||
"agents/gander/work/queue-278/run3/whole/webui.command.json",
|
||||
"agents/gander/work/queue-278/run3/whole/webui.log",
|
||||
"agents/gander/work/queue-278/sweep.py",
|
||||
"agents/gander/work/queue-278/window.py",
|
||||
"agents/gizmoduck/work/queue-268/BUILD.md",
|
||||
"agents/honker/work/queue-194/BUILD.md",
|
||||
"agents/honker/work/queue-194/DESIGN.md",
|
||||
"agents/honker/work/queue-194/PRD-1.8-DRAFT.md",
|
||||
"agents/honker/work/queue-256/BUILD.md",
|
||||
"agents/honker/work/queue-256/DESIGN.md",
|
||||
"agents/megavolt/work/queue-236/BUILD.md",
|
||||
"agents/morgana/work/fed-r3/BUILD.md",
|
||||
"agents/morgana/work/queue-205/BUILD.md",
|
||||
"agents/morgana/work/queue-205/DESIGN.md",
|
||||
"agents/morgana/work/queue-277/BUILD.md",
|
||||
"agents/rocko/work/queue-191/stoprun-build/BUILD.md",
|
||||
"agents/rocko/work/queue-279/BUILD.md",
|
||||
"agents/rocko/work/queue-279/base.txt",
|
||||
"agents/rocko/work/queue-279/build.patch",
|
||||
"agents/rocko/work/queue-279/candidate-manifest.sha256",
|
||||
"agents/rocko/work/queue-279/candidate.txt",
|
||||
"agents/rocko/work/queue-279/changed-paths.txt",
|
||||
"agents/rocko/work/queue-279/commit.txt",
|
||||
"agents/rocko/work/queue-279/logs/M1.log",
|
||||
"agents/rocko/work/queue-279/logs/processing-control-whole.log",
|
||||
"agents/rocko/work/queue-279/logs/regression-red.log",
|
||||
"agents/rocko/work/queue-279/logs/stop-run-whole.log",
|
||||
"agents/rocko/work/queue-279/mutant-plan.json",
|
||||
"agents/rocko/work/queue-279/packet-manifest.sha256",
|
||||
"agents/rocko/work/queue-279/reader-search.txt",
|
||||
"agents/rocko/work/queue-279/results.json",
|
||||
"agents/rocko/work/queue-279/run-step.py",
|
||||
"agents/rocko/work/queue-279/scan-result.json",
|
||||
"agents/rocko/work/queue-279/skips.txt",
|
||||
"agents/rocko/work/queue-279/source-scope-check.json",
|
||||
"agents/rocko/work/queue-279/sweep.json",
|
||||
"agents/rocko/work/queue-279/tmpdir.txt",
|
||||
"agents/rocko/work/queue-280/BUILD.md",
|
||||
"agents/rocko/work/queue-280/assertion-preservation.json",
|
||||
"agents/rocko/work/queue-280/base.txt",
|
||||
"agents/rocko/work/queue-280/build.patch",
|
||||
"agents/rocko/work/queue-280/candidate-manifest.sha256",
|
||||
"agents/rocko/work/queue-280/candidate.txt",
|
||||
"agents/rocko/work/queue-280/changed-paths.txt",
|
||||
"agents/rocko/work/queue-280/commit.txt",
|
||||
"agents/rocko/work/queue-280/final-sweep.json",
|
||||
"agents/rocko/work/queue-280/mutant-restore.json",
|
||||
"agents/rocko/work/queue-280/mutants.json",
|
||||
"agents/rocko/work/queue-280/packet-manifest.sha256",
|
||||
"agents/rocko/work/queue-280/post-phase1-pgrep.txt",
|
||||
"agents/rocko/work/queue-280/reader-search.txt",
|
||||
"agents/rocko/work/queue-280/repeat-commit.txt",
|
||||
"agents/rocko/work/queue-280/repeat-results.json",
|
||||
"agents/rocko/work/queue-280/repeat-summary.json",
|
||||
"agents/rocko/work/queue-280/restored-hashes.json",
|
||||
"agents/rocko/work/queue-280/results.json",
|
||||
"agents/rocko/work/queue-280/scan-result.json",
|
||||
"agents/rocko/work/queue-280/skips.txt",
|
||||
"agents/rocko/work/queue-280/sweep-phase1.json",
|
||||
"agents/rocko/work/vikunja-502/BUILD.md",
|
||||
"agents/rocko/work/vikunja-502/RESULTS.md",
|
||||
"agents/rocko/work/vikunja-502/all-mutants.json",
|
||||
"agents/rocko/work/vikunja-502/base-drift-ce6a.json",
|
||||
"agents/rocko/work/vikunja-502/base.txt",
|
||||
"agents/rocko/work/vikunja-502/build.patch",
|
||||
"agents/rocko/work/vikunja-502/candidate-manifest.sha256",
|
||||
"agents/rocko/work/vikunja-502/candidate.txt",
|
||||
"agents/rocko/work/vikunja-502/changed-paths.txt",
|
||||
"agents/rocko/work/vikunja-502/commit.txt",
|
||||
"agents/rocko/work/vikunja-502/cwd-sweep.json",
|
||||
"agents/rocko/work/vikunja-502/focused-results.json",
|
||||
"agents/rocko/work/vikunja-502/gate-plan.json",
|
||||
"agents/rocko/work/vikunja-502/logs/bus-tasks-whole.log",
|
||||
"agents/rocko/work/vikunja-502/logs/processing-http-whole.log",
|
||||
"agents/rocko/work/vikunja-502/logs/python-regressions.log",
|
||||
"agents/rocko/work/vikunja-502/logs/replays.log",
|
||||
"agents/rocko/work/vikunja-502/logs/runner-green.log",
|
||||
"agents/rocko/work/vikunja-502/logs/runner-red.log",
|
||||
"agents/rocko/work/vikunja-502/logs/stop-run-whole.log",
|
||||
"agents/rocko/work/vikunja-502/mutant-logs/KS43.tap",
|
||||
"agents/rocko/work/vikunja-502/mutant-logs/KS44.tap",
|
||||
"agents/rocko/work/vikunja-502/mutant-logs/KS54.tap",
|
||||
"agents/rocko/work/vikunja-502/mutant-logs/SR08.tap",
|
||||
"agents/rocko/work/vikunja-502/mutant-logs/V502-status.tap",
|
||||
"agents/rocko/work/vikunja-502/mutant-results.json",
|
||||
"agents/rocko/work/vikunja-502/mutant-resume-summary.json",
|
||||
"agents/rocko/work/vikunja-502/packet-manifest.sha256",
|
||||
"agents/rocko/work/vikunja-502/pre-rebase-commit.txt",
|
||||
"agents/rocko/work/vikunja-502/rebase-980c/BUILD.md",
|
||||
"agents/rocko/work/vikunja-502/rebase-980c/base.txt",
|
||||
"agents/rocko/work/vikunja-502/rebase-980c/candidate-manifest.sha256",
|
||||
"agents/rocko/work/vikunja-502/rebase-980c/candidate.txt",
|
||||
"agents/rocko/work/vikunja-502/rebase-980c/cwd-sweep.json",
|
||||
"agents/rocko/work/vikunja-502/rebase-980c/logs/bus-tasks-whole.log",
|
||||
"agents/rocko/work/vikunja-502/rebase-980c/logs/processing-http-whole.log",
|
||||
"agents/rocko/work/vikunja-502/rebase-980c/logs/python-regressions.log",
|
||||
"agents/rocko/work/vikunja-502/rebase-980c/logs/stop-run-whole.log",
|
||||
"agents/rocko/work/vikunja-502/rebase-980c/packet-manifest.sha256",
|
||||
"agents/rocko/work/vikunja-502/rebase-980c/range-diff.txt",
|
||||
"agents/rocko/work/vikunja-502/rebase-980c/restored-hashes.json",
|
||||
"agents/rocko/work/vikunja-502/rebase-980c/results.json",
|
||||
"agents/rocko/work/vikunja-502/rebase-980c/scan-result.json",
|
||||
"agents/rocko/work/vikunja-502/rebase-980c/tmpdir.txt",
|
||||
"agents/rocko/work/vikunja-502/rebase-proof.json",
|
||||
"agents/rocko/work/vikunja-502/rebase-range-diff.txt",
|
||||
"agents/rocko/work/vikunja-502/restored-candidate.json",
|
||||
"agents/rocko/work/vikunja-502/run-mutants.baseline.py",
|
||||
"agents/rocko/work/vikunja-502/run-mutants.py",
|
||||
"agents/rocko/work/vikunja-502/runner-change.diff",
|
||||
"agents/rocko/work/vikunja-502/runner.sha256",
|
||||
"agents/rocko/work/vikunja-502/scan-summary.json",
|
||||
"agents/rocko/work/vikunja-502/skips.json",
|
||||
"agents/rocko/work/vikunja-502/tests/test_timeout_cause.py",
|
||||
"agents/rocko/work/vikunja-502/tmpdir.txt",
|
||||
"agents/sage/work/vikunja-setup/comment-r191-landed.mjs",
|
||||
"agents/sage/work/vikunja-setup/file-thread-claims.mjs",
|
||||
"agents/sage/work/vikunja-setup/post-w12-86f95bb27.mjs",
|
||||
"agents/sage/work/window-plan/repin-86f95bb27.md",
|
||||
"docs/SESSIONS.md",
|
||||
"docs/case2/SETUP-SHEET.md",
|
||||
"docs/case2/SURVEY-RUN.md",
|
||||
"docs/plans/2026-10-22_fire-revokes-grants.md",
|
||||
"docs/plans/2026-10-22_owner-thread-claims.md",
|
||||
"docs/plans/2026-10-22_sshd-port-race.md",
|
||||
"docs/plans/2026-10-22_sso-phase2-window.md",
|
||||
"docs/plans/2026-10-22_stoprun-deadline.md",
|
||||
"docs/plans/DEFERRED.md",
|
||||
"docs/plans/QUEUE.md",
|
||||
"docs/plans/queue.json",
|
||||
"packages/bus/README.md",
|
||||
"packages/bus/schema.sql",
|
||||
"packages/bus/src/broker.mjs",
|
||||
"packages/bus/src/client.mjs",
|
||||
"packages/bus/src/credentials.mjs",
|
||||
"packages/bus/src/gitea-grant.mjs",
|
||||
"packages/bus/src/human-cli.mjs",
|
||||
"packages/bus/src/migrations/3j-3k.sql",
|
||||
"packages/bus/src/process.mjs",
|
||||
"packages/bus/src/runtime.mjs",
|
||||
"packages/bus/src/server.mjs",
|
||||
"packages/bus/src/store.mjs",
|
||||
"packages/bus/src/user-cli.mjs",
|
||||
"packages/bus/tests/account-migration.test.mjs",
|
||||
"packages/bus/tests/channel-proof.test.mjs",
|
||||
"packages/bus/tests/chief-of-staff.test.mjs",
|
||||
"packages/bus/tests/comment-migration.test.mjs",
|
||||
"packages/bus/tests/creative.test.mjs",
|
||||
"packages/bus/tests/fake-gitea-api.mjs",
|
||||
"packages/bus/tests/fixtures/schema-3j.sql",
|
||||
"packages/bus/tests/gitea-grant-docker.test.mjs",
|
||||
"packages/bus/tests/gitea-grant.test.mjs",
|
||||
"packages/bus/tests/gitea-migration.test.mjs",
|
||||
"packages/bus/tests/grant-executor.test.mjs",
|
||||
"packages/bus/tests/grant-host.test.mjs",
|
||||
"packages/bus/tests/grant-migration.test.mjs",
|
||||
"packages/bus/tests/host-run.test.mjs",
|
||||
"packages/bus/tests/instances-verb.test.mjs",
|
||||
"packages/bus/tests/lifecycle-revoke.test.mjs",
|
||||
"packages/bus/tests/lifecycle-verbs.test.mjs",
|
||||
"packages/bus/tests/message-filter.test.mjs",
|
||||
"packages/bus/tests/name-migration.test.mjs",
|
||||
"packages/bus/tests/project-runtime.test.mjs",
|
||||
"packages/bus/tests/reload.test.mjs",
|
||||
"packages/bus/tests/schema.test.mjs",
|
||||
"packages/bus/tests/scratch-sshd.mjs",
|
||||
"packages/bus/tests/spec-migration.test.mjs",
|
||||
"packages/bus/tests/tasks.test.mjs",
|
||||
"packages/bus/tests/tester-writes.test.mjs",
|
||||
"packages/bus/tests/thread-claims.test.mjs",
|
||||
"packages/bus/tests/thread-migration.test.mjs",
|
||||
"packages/bus/tests/usage-migration.test.mjs",
|
||||
"packages/bus/tests/user-principal.test.mjs",
|
||||
"packages/business/README.md",
|
||||
"packages/business/src/access.mjs",
|
||||
"packages/business/src/business.mjs",
|
||||
"packages/business/src/credentials.mjs",
|
||||
"packages/business/src/index.mjs",
|
||||
"packages/business/src/instance-settings.mjs",
|
||||
"packages/business/src/launch-settings.mjs",
|
||||
"packages/business/src/organization.mjs",
|
||||
"packages/business/src/role.mjs",
|
||||
"packages/business/src/vocabulary.mjs",
|
||||
"packages/business/tests/business.test.mjs",
|
||||
"packages/business/tests/chief-of-staff.test.mjs",
|
||||
"packages/business/tests/cli.test.mjs",
|
||||
"packages/business/tests/hard-waits.test.mjs",
|
||||
"packages/business/tests/instance-settings.test.mjs",
|
||||
"packages/business/tests/launch-settings.test.mjs",
|
||||
"packages/business/tests/lifecycle-settings.test.mjs",
|
||||
"packages/business/tests/role.test.mjs",
|
||||
"packages/cli/README.md",
|
||||
"packages/cli/src/cli.mjs",
|
||||
"packages/cli/src/format.mjs",
|
||||
"packages/cli/src/grants.mjs",
|
||||
"packages/cli/src/instances.mjs",
|
||||
"packages/cli/src/launcher.mjs",
|
||||
"packages/cli/tests/format.test.mjs",
|
||||
"packages/cli/tests/grants.test.mjs",
|
||||
"packages/cli/tests/instances.test.mjs",
|
||||
"packages/cli/tests/lifecycle.test.mjs",
|
||||
"packages/cli/tests/stack-release.test.mjs",
|
||||
"packages/cli/tests/tester.test.mjs",
|
||||
"packages/harness/src/runner.mjs",
|
||||
"packages/harness/src/tools.mjs",
|
||||
"packages/harness/tests/bundle.test.mjs",
|
||||
"packages/harness/tests/runner.test.mjs",
|
||||
"packages/harness/tests/tools.test.mjs",
|
||||
"packages/library/README.md",
|
||||
"packages/library/src/mapping.mjs",
|
||||
"packages/library/src/scope.mjs",
|
||||
"packages/library/tests/mapping.test.mjs",
|
||||
"packages/library/tests/scope.test.mjs",
|
||||
"packages/processing-control/src/runtimes.mjs",
|
||||
"packages/processing-control/tests/stop-run.test.mjs",
|
||||
"packages/webui/README.md",
|
||||
"packages/webui/src/bus.mjs",
|
||||
"packages/webui/src/cli.mjs",
|
||||
"packages/webui/src/public/agents.js",
|
||||
"packages/webui/src/public/bus.js",
|
||||
"packages/webui/src/public/index.html",
|
||||
"packages/webui/src/serve.mjs",
|
||||
"packages/webui/tests/agents-browser.test.mjs",
|
||||
"packages/webui/tests/agents.test.mjs",
|
||||
"packages/webui/tests/browser.test.mjs",
|
||||
"packages/webui/tests/instances.test.mjs",
|
||||
"packages/webui/tests/processing.test.mjs",
|
||||
"packages/webui/tests/shell.test.mjs",
|
||||
"packages/webui/tests/sso.test.mjs",
|
||||
"packages/webui/tests/thread-claims-browser.test.mjs",
|
||||
"packages/webui/tests/thread-claims.test.mjs",
|
||||
"roles/chief-of-staff.json",
|
||||
"roles/chief-of-staff.md",
|
||||
"scripts/mosaic"
|
||||
]
|
||||
@@ -37,8 +37,8 @@ def main():
|
||||
assert hashlib.sha256((driver.REPO/file).read_bytes()).hexdigest()==sha,file
|
||||
args.out.mkdir(parents=True,exist_ok=True)
|
||||
results = dict(grant=args.grant,stage=args.stage,steps=[])
|
||||
def step(name,command,expected_red=False):
|
||||
result = driver.run(command,args.out/(name+'.log'),seconds=1200)
|
||||
def step(name,command,expected_red=False,seconds=1200):
|
||||
result = driver.run(command,args.out/(name+'.log'),seconds=seconds)
|
||||
result.update(name=name,expected_red=expected_red,counts=totals(Path(result['log'])))
|
||||
results['steps'].append(result)
|
||||
(args.out/'results.json').write_text(json.dumps(results,indent=2)+'\n')
|
||||
@@ -73,8 +73,11 @@ def main():
|
||||
step('webui',['node','--test','--test-reporter=tap','packages/webui/tests/'])
|
||||
scripts = sorted((driver.REPO/'scripts').glob('test-*.sh'))
|
||||
assert len(scripts)==10
|
||||
limits = json.loads((HERE/'SHELL-LIMITS.json').read_text())['scripts']
|
||||
for i,path in enumerate(scripts):
|
||||
step('shell-'+str(i+1),['bash',str(path.relative_to(driver.REPO))])
|
||||
script = str(path.relative_to(driver.REPO))
|
||||
limit = limits[script]['limit_seconds']
|
||||
step('shell-'+str(i+1),['timeout','-k','10',str(limit),'bash',script],seconds=limit+30)
|
||||
print(json.dumps(results,indent=2))
|
||||
|
||||
if __name__=='__main__':
|
||||
|
||||
Reference in new issue
Block a user