row 285: preserve credential bindings for approved creative changes and verify r4 (#1790, mos-1585, mos-1586)

This commit is contained in:
jason.woltje committed 2026-10-24 08:12:02 -05:00
1 parent c57a9425e9
commit 1f3d0350f3
726 files changed
+52287 -8

No files matched your search

+4
View File
@@ -5513,3 +5513,7 @@ claim. Receipts and limitations in agents/lena/work/queue-296/BUILD.md and run-r
2026-10-24T10:59:43Z | Magica | Row285 / #1790 B1 before/after | Before: Amendment1 candidatebabae6adc with missing refs in base library/creative fixtures. After: 26 data-only credential insertions across13 direct-reader files; original callback lines preserved, one expressly allowed credentials?.vikunja setup guard. Every other byte reconstructs prior candidate exactly; no base assertion edits. Base and candidate put role set is pm,cto,coder,reviewer; chief lacks vikunja. Literal e0c6142f3 word diffs and known preexisting r2 hunks recorded. No tests, green claim or queue move; next whole gate +M10 waits for Sage CLEAR. 2026-10-24T10:59:43Z | Magica | Row285 / #1790 B1 before/after | Before: Amendment1 candidatebabae6adc with missing refs in base library/creative fixtures. After: 26 data-only credential insertions across13 direct-reader files; original callback lines preserved, one expressly allowed credentials?.vikunja setup guard. Every other byte reconstructs prior candidate exactly; no base assertion edits. Base and candidate put role set is pm,cto,coder,reviewer; chief lacks vikunja. Literal e0c6142f3 word diffs and known preexisting r2 hunks recorded. No tests, green claim or queue move; next whole gate +M10 waits for Sage CLEAR.
2026-10-24T11:24:17Z | Magica | Row285 / #1790 r4 before/after | Before: r3 eee8ad776 on b19ffa04f, gate unverified after amendments. After: new r4 from landed296+217 base d0a6a87cd, twelve commits replayed; only append logs conflicted, complete base prefixes preserved. Product/test patch lines identical across assigned bases; tests byte-equal r3; replyLimits and broker citation work retained. Regenerated range-diff and e0c6142f3 base word/line diffs. No npm/tests or queue moves; own-branch push explicitly authorized by sage-4078. 2026-10-24T11:24:17Z | Magica | Row285 / #1790 r4 before/after | Before: r3 eee8ad776 on b19ffa04f, gate unverified after amendments. After: new r4 from landed296+217 base d0a6a87cd, twelve commits replayed; only append logs conflicted, complete base prefixes preserved. Product/test patch lines identical across assigned bases; tests byte-equal r3; replyLimits and broker citation work retained. Regenerated range-diff and e0c6142f3 base word/line diffs. No npm/tests or queue moves; own-branch push explicitly authorized by sage-4078.
2026-10-24T12:09:17Z | Magica | Row285 / #1790 r4 C1 diagnostic result | Before: valid landed-base candidate0f6cdc861; first old citation-runtime red. After: mos-1584/sage-4086 full unchanged collection, six suites2950 tests2937pass/12fail/1skip/0cancel; WebUI418 and plugins119 green, all12 script suites exit0, dedicated federation1/1. CLI release300s runner cap interrupted; retained and resolved via unchanged1800s retry224/224 in599.6s. Failures: citation-runtime1, instance-settings2, lifecycle-settings1, launcher1, harnesscreative7. Static root causes/fix classes and r3 parity in agents/magica/work/queue-285/BUILD.md. No source/test edits or fix round/mutants; no final manifest or in-review; owner ruling required.
2026-10-24T13:02:03Z | Magica | Row285 / #1790 r4 VERIFIED | Before: C1 collection12 failures. After: approved three data corrections, actual-bound-ref guard, duplicate-before-eligibility hire, data-derived creative equal-service retention/listing with validator first; no old assertion edits. Own fresh128/2 installs, editor-required shortTMP serialized final gate: bus975/975 business282/282 cli988pass/1expectedskip webui418/418 harness172/172 plugins119/119, all12 scripts exit0.13 mutations14 independent checks killed; each SHA256/Git blob restored; restored controls136/136. Case1 doc/test/helper base-identical; N1 deferred. Own r4 candidate for Poe/Webby review, no landing/live action.
+414
View File
@@ -2429,3 +2429,417 @@ index 315f69698..a7ac869e5 100644
~ ~
~ ~
## r4 collection under C1 (2026-10-24T12:01:10Z, sage-4080/4085/4086, mos-1584)
Input remains 0f6cdc861, base d0a6a87cd. Fresh own npm ci128/2 installed
without symlinks, short TMPDIR, MOSAIC_REQUIRE_EDITOR_BUILD=1. Initial
r4 stop is preserved in gate-r4/. C1 unchanged collection is gate-r4-collect/.
The driver first continued only named chief-reference errors, then stopped
on instance-settings ERR_ASSERTION per sage-4085. Sage-4086 explicitly
authorized collecting every remaining red, all six suites and all12 scripts.
No source/role/test edit, fix round or row285 mutant has run.
At this receipt all suites/scripts have run, except the first stack-release
file hit the evidence driver's 300s cap. Its raw exit124/interrupted TAP
is retained. It was still reporting passing subtests. A whole-file unchanged
retry at1800s is in progress; final counts will be appended separately.
All12 scripts/test-*.sh returned0, each timeout-k10/600. Dedicated federation
acceptance passed1/1 zero skips and cleanup confirmed no child groups/ports/
sockets/units. Ordinary CLI's intentional federation wrapper skip is distinct.
Editor provenance/rebuild passed6/6 zero skips with the required environment.
### New-base static reader inventory (sage-4082)
All8 added test files and4 helper/fixture modules in e0c6142f3..d0a6a87cd
were read/traced. Only citation-runtime validates a real library business:
- bus/tests/citation-runtime.test.mjs:15 sets projects.books; write16,
validate17. A same-line chief credential insertion using coder's existing
dummy gitea ref covers it, preserving every original token.
- bus/tests/citation-guard.test.mjs:165 writes businessDoc for organizationWriter,
but that disk doc has only code projects.stack. Its citationWorld library is
a separate synthetic broker business, not copied to disk. No insertion;
adding chief gitea would violate the no-library extra-ref rule.
- business/tests/reply-limits.test.mjs:11 businessDoc only changes human/settings,
never projects. No library, no insertion.
- cli/tests/federation-acceptance.test.mjs:96 businessDoc, mutations97-104
change roles/plugins/launch/human only. No library, no insertion. Its fixture
host loads that no-library doc at federation-host.mjs:22.
- bus/citation-availability and harness/citation-runner use citationWorld;
citation-helpers:18-22 is synthetic Broker input and never validates it.
- library/guard operates on mappings/readers and partial settings docs, not
business validation. CLI reply-limits uses settings JSON and fake transport.
- federation-human and citation-adapter are transport fixtures only.
### Exact instance-settings traces (sage-4086)
A. Old test instance-settings.test.mjs:131 expects BusinessError when chief
changes to merge-gate. Actual throw is OrganizationError with code
organization-credentials-out-of-scope at instance-settings.mjs:253.
set():250 accepts target merge-gate; :252 reads the old chief DEFINITION's
credentials.length (now1 from row285's chief role file), not the instance's
effective no-library empty credential map. It throws before commit can reach
the unchanged launch validation that formerly produced BusinessError.
This is caused by row285's role declaration, not rows296/217.
Smallest textual fix is an exact expected-code change at131 (old assertion;
not authorized). Preserving that assertion instead requires product-source
logic accounting for the chief's effective conditional binding. Fixture-only
data cannot correct this no-library chief case while retaining B case3.
B. Old test instance-settings.test.mjs:290 expects companion services[gitea],
accepted:true (the mos-1332 approved r2 expectation). Actual accepted:false
is computed by definitions(), instance-settings.mjs:165:
accepted = !closed(name) && services.length === 0. closed(companion) is false,
but its role file now declares gitea, so services.length1 makes accepted false.
This check never examines an instance credential reference; bean has not even
been added yet. It is not the chief's B condition, missing fixture data, or
296/217 code. It is row285's creative definition credential change exposing
an unchanged listing rule. Smallest observed-behavior repair preserving the
positive assertion needs product source to mark the supported human creative
add accepted; changing the expected bit would touch/loosen that assertion
and would not repair the remaining positive test's behavior.
Masked consequences, STATIC ONLY (not additional observed reds): after the
listing assertion passes, that test's companion->ideas change at306 will hit
definitionFor():100 because ideas declares gitea, and the old-definition guard
at252 also blocks credentialed creative changes. The later transition to
security-reviewer at311 would hit the old credential guard rather than the
previous persona validation BusinessError. A one-bit listing fix alone is
therefore insufficient for the test's established add/change behavior. Any
credential-transfer exception is product policy scope for Mos, not fixture data.
Both observed instance-settings reds would also fail on r3 eee8ad776.
Reasoning proof without running r3: source and relevant roles have identical
Git blobs on r3 and r4:
instance-settings.mjs 3300a92f87e9b740d36c9271b689f3bc67fb74d7
roles/companion.json af16a83e3538bcefbd92a6f4a5049b97efde7c8c
roles/chief-of-staff.json 539e1d134ea233103142561d87877fec5af9e2ab
The test bytes are identical too. Full r3 gate never ran; no r3 pass is claimed.
### Other observed red causes and smallest fix class
- bus/citation-runtime:1 failure, chief-library-gitea-required. Fixture data
only: the line15 same-line chief ref described above. Newly landed test.
- business/lifecycle-settings:179 test, failing assertion191 expects
organization-instance-exists when hiring chief/chief-of-staff. Actual
OrganizationError organization-credentials-out-of-scope at source100:
hire():350 calls definitionFor() before duplicate-name checks354-357.
Chief's new declared gitea triggers the earlier fence. Would fail r3 too.
Smallest textual repair changes that exact expected code (old assertion);
retaining its old precedence instead changes product source. No fixture-only fix.
- cli/launcher:766 persona test, failing setup780, CliError wrapping
broker credential-file. Row285's own bean store reference at769 requires
the private storeRoot; credentials.mjs:212 calls privateDir(storeRoot)
without missing:true. This fixture makes no such root. Smallest fix is
fixture credential data: replace that own r2 store ref with the existing
dummy coder gitea file ref, leaving all base assertions unchanged. Would
fail r3 too; store-directory verification must remain fail-closed.
- harness/creative:all7 tests fail BusinessError exit2 at business.mjs:51:
roles.bean.credentials must reference exactly ... (gitea; got none).
bean() at creative.test.mjs:24-26 uses a variable definition and resolvedFor
validates the doc (helpers.mjs:46). Smallest fix is one credential-data
insertion in that shared callback reusing d.roles.coder.credentials.gitea,
no assertions or product changes. Would fail r3 too. The earlier literal
creative-fixture grep missed this variable-definition reader despite the
file being present in the conservative dependency inventory. Correction
recorded here; collection exposes it directly.
All7 harness test names:
not ok 1 - M2: the gate refuses write, edit and bash to every creative role on pi and claude-code
not ok 2 - M6: no creative session gets raise_decision; the assistant and the chief of staff keep it
not ok 3 - web: research and companion get the broker's typed web tools, and a harness-builtin source refuses web-source-not-allowed
not ok 4 - persona: the block sits between the contract and \#\# This session, fenced, with the name and digest
not ok 5 - persona: each unsafe or unpinned file refuses before the bundle directory is made
not ok 6 - adapters pass the prompt file's absolute path; the persona and the prompt text never sit in argv
not ok 7 - the pi adapter refuses a missing, unreadable or directory prompt file before pi starts
## C1 final collection result (2026-10-24T12:09:17Z, sage-4086)
All collection commands have ended. The one fix round has NOT started.
No product/role/test edits or row285 mutants ran. Candidate remains
0f6cdc8610a7d4d708efb0c0324437252bbfe696 on magica/row285-r4.
Final git diff --quiet 0f6cdc861 -- packages roles exited0.
Per-suite counts, one completed run per file (not summing retries):
bus: files=111 tests=975 pass=974 fail=1 skip=0 cancelled=0
business: files=32 tests=277 pass=274 fail=3 skip=0 cancelled=0
cli: files=68 tests=989 pass=987 fail=1 skip=1 cancelled=0
webui: files=66 tests=418 pass=418 fail=0 skip=0 cancelled=0
harness: files=14 tests=172 pass=165 fail=7 skip=0 cancelled=0
plugins: files=9 tests=119 pass=119 fail=0 skip=0 cancelled=0
Total:2950 tests,2937 pass,12 fail,1 skip,0 cancelled. Twelve failures in
five files. The single CLI skip is the intentionally script-only federation
acceptance wrapper; its dedicated script passed1/1 with zero skips and verified
cleanup. All12 scripts/test-*.sh exit0 (full commands/results script-runs.txt).
The release retry passed224/224, duration599632.904562ms, unchanged input.
The initial300s bound was too short for this file; its exit124/interrupted TAP
remains as harness evidence, resolved by the1800s whole-file retry. Final CLI
counts replace that incomplete log with the completed retry. No assertion was
changed and no product failure was hidden.
Complete failing test names, also FINAL-REDS.txt:
agents/magica/work/queue-285/gate-r4-collect/bus/citation-runtime.test.mjs.log
not ok 1 - C2-06 runtime reads changed and unreadable reply limits without restarting
agents/magica/work/queue-285/gate-r4-collect/business/instance-settings.test.mjs.log
not ok 5 - row 165 refuses each validation failure and leaves the file's bytes alone
not ok 14 - row 213 a creative instance is the human's: add, vars and definition changes, persona digest only
agents/magica/work/queue-285/gate-r4-collect/business/lifecycle-settings.test.mjs.log
not ok 7 - D2.2 hire refuses noHire, a kept name and a listed name, and re-lists a fired one only as it was
agents/magica/work/queue-285/gate-r4-collect/cli/launcher.test.mjs.log
not ok 20 - row 213 a creative instance's persona is read from <configDir>/personas: off its digest the launch fails with the mismatch as its reason
agents/magica/work/queue-285/gate-r4-collect/harness/creative.test.mjs.log
not ok 1 - M2: the gate refuses write, edit and bash to every creative role on pi and claude-code
not ok 2 - M6: no creative session gets raise_decision; the assistant and the chief of staff keep it
not ok 3 - web: research and companion get the broker's typed web tools, and a harness-builtin source refuses web-source-not-allowed
not ok 4 - persona: the block sits between the contract and \#\# This session, fenced, with the name and digest
not ok 5 - persona: each unsafe or unpinned file refuses before the bundle directory is made
not ok 6 - adapters pass the prompt file's absolute path; the persona and the prompt text never sit in argv
not ok 7 - the pi adapter refuses a missing, unreadable or directory prompt file before pi starts
Smallest fix classification for the owner decision, NOT APPLIED:
1. citation-runtime chief-library-gitea-required: fixture credential data only,
same-line existing dummy-ref insertion at15 in a newly landed test.
2. instance-settings:131 chief change: exact expected-code update (assertion)
is the smallest textual repair; retaining BusinessError instead requires
product-source treatment of the chief's effective conditional binding.
3. instance-settings:290 companion listing: product-source repair of listing
acceptance, plus the statically masked creative definition-change guards
described above. Do not simply flip/loosen its positive assertion.
4. lifecycle-settings:191 chief hire: exact expected-code update (assertion)
is the smallest textual repair; retaining duplicate-name precedence needs
a product-source ordering/effective-binding change.
5. CLI launcher persona store-root: row285-owned fixture data only, replace
store:true reference at769 with existing dummy coder gitea file ref.
6. Harness creative shared bean callback: fixture credential data only, one
added reference after26; every one of its7 existing tests/guards unchanged.
Only item1 is within C1's newly-landed-chief-data fix scope. Other classes need
Mos's ruling. No fix, acceptance-green claim, manifest finalization, commit,
push or in-review queue move has been performed for this failed collection.
Sage gets all results and static traces together, then this seat holds.
## Fix round authorized (2026-10-24T12:26:48Z, sage-4088/4090/4091)
Stay on magica/row285-r4; final commit follows applicable green suites/mutants.
Rulings quoted from Sage's authorized relay (not an unseen original Mos message):
mos-1585, relayed sage-4088:
"The instance-settings.mjs:252 guard refuses only when the instance actually holds credentials."
"hire() runs its duplicate checks before definitionFor()."
"A definition change on an instance that holds no credentials works as it did at base."
"On an instance that holds credentials, a definition change is allowed only when the new definition declares exactly the same service set"; "The change adds, moves and mints nothing."
The initial general P reading conflicted with base assertions, recorded in
magica-0014 before implementation. mos-1586 (sage-4091) resolves it:
"Rules 2 and 3 apply only to creative definitions. The validator runs first, then the credential guard, and both refuse with the base codes."
"The assertions at :211, :311, :68, :189 and :290 stay byte-identical, along with every other old assertion."
"Don't bring back a hardcoded creative list"; derive it from definition data,
"for example library.write in withinRole".
"Rule 3's 'services the human's add already mints' means the createdCredentials list exactly as it stands at your tip (gitea store). A definition that declares any other service gets the base accepted value."
"Mutants cover the creative equal-set check, the creative listing rule and the refusal order (validator before guard)."
Applied product design, within those limits:
- creativeDefinition reads withinRole library.write. No new role-name list,
CREATIVE_KINDS remains removed; chief has no marker and stays non-creative.
- holdsCredentials reads actual instance references, not role declarations.
- Uncredentialed changes and every non-creative fence stay as at base.
- Only an actually credentialed creative-origin change defers its guard until
the complete candidate (including vars/launch) passes business validation.
Its target must also be creative and declared service sets must be identical.
Host is included in declared service equality even though it has no file ref.
No creation path is called; references/identity/tracker stay unchanged.
- Listing preserves non-creative accepted values. Creative definitions join
only when every service is the existing CREATIVE_SERVICE (gitea store).
Host, Vikunja and any other service retain the base accepted result.
- Hire checks duplicate names before definitionFor; all changes before that
call are only an unpublished clone, with no write/mint effect.
New real transition tests authored before source and run RED:
instance-credential-transitions.test.mjs:5 tests,2 pass/3 expected fail.
The failures were equal-set positive, validator order and listing acceptance.
After implementation, the new file + unchanged instance-settings and lifecycle
files passed33/33,0fail/skip/cancel (product-green.log). No old assertion edited.
Approved data fixes and observed refusal classes:
- citation-runtime: chief-library-gitea-required, line15 same-line chief ref.
- launcher persona fixture: broker credential-file, replace row285-owned store
ref with its existing dummy coder gitea file ref; privateDir checks unchanged.
- harness creative shared bean: BusinessError exact-map gitea;got-none, add one
dummy credential line in callback. Every existing assertion stays unchanged.
Exact base word diffs (also fix-r4/data-fix-base-word-diffs.txt):
Command: git diff --word-diff=porcelain d0a6a87cd -- packages/bus/tests/citation-runtime.test.mjs
diff --git a/packages/bus/tests/citation-runtime.test.mjs b/packages/bus/tests/citation-runtime.test.mjs
index fdcfdadfc..b1a2de155 100644
--- a/packages/bus/tests/citation-runtime.test.mjs
+++ b/packages/bus/tests/citation-runtime.test.mjs
@@ -12,7 +12,7 @@ import { mappingEntry } from '../../library/tests/helpers.mjs';
test('C2-06 runtime reads changed and unreadable reply limits without restarting', async t => {
~
const root = mkdtempSync(join(tmpdir(), 'citation-runtime-')); t.after(() => rmSync(root, { recursive: true, force: true }));
~
const doc = businessDoc(root), rolesDir = rolesCopy(root), dir = join(root, 'config'), dataRoot = join(root, 'data');
~
doc.projects.books = mappingEntry();
+doc.roles.chief.credentials = { gitea: { ...doc.roles.coder.credentials.gitea } };
doc.replyLimits = { requireCitation: false, citationsPerReply: 3 };
~
const file = writeJson(join(dir, 'businesses/acme.json'), doc);
~
const checked = validateBusinessDocument(doc, file, { rolesDir }); mkdirSync(dataRoot, { mode: 0o700 });
~
// Runtime takes the host's broker projection, not the business validator's unresolved role entries.
~
Command: git diff --word-diff=porcelain d0a6a87cd -- packages/cli/tests/launcher.test.mjs
diff --git a/packages/cli/tests/launcher.test.mjs b/packages/cli/tests/launcher.test.mjs
index baabd843e..766bbb35a 100644
--- a/packages/cli/tests/launcher.test.mjs
+++ b/packages/cli/tests/launcher.test.mjs
@@ -1,4 +1,4 @@
import {
+FAR_DATE,
launchDoc } from "../../business/tests/helpers.mjs";
~
// The S6 launcher inside a real bus host: real broker child, real runners
~
// in the bwrap sandbox, the fake adapter from packages/harness standing in for the
~
// harness. The chief of staff launches a coder through its `launch` tool (row 119: the
~
@@ -32,7 +32,7 @@ const skip = sandboxProblem() ?? false;
~
test('C2-04: launcher workspace clones code but never the library', { skip, timeout: 30000 }, async t => {
~
const { mappingEntry } = await import('../../library/tests/helpers.mjs');
~
const f = await setup(t, doc => {
+doc.roles.chief.credentials = { gitea: { ...doc.roles.coder.credentials.gitea } };
doc.projects = { books: mappingEntry(), ...doc.projects }; return doc; });
~
await f.launcher.launchPm();
~
const workspace = workspaceDir(f.f.dataRoot, 'acme', 'chief');
~
assert.equal(existsSync(join(workspace, 'stack', '.git')), true);
~
@@ -766,7 +766,7 @@ test("row 64 a role skill that isn't enabled refuses skill-not-enabled, and one
test("row 213 a creative instance's persona is read from <configDir>/personas: off its digest the launch fails with the mismatch as its reason", { timeout: 30000 }, async (t) => {
~
const text = "Warm. PERSONA-MARKER-d2\n";
~
const given = prepare(t, (doc) => {
~
doc.roles.bean = { definition: "companion",
+credentials: { gitea: { ...doc.roles.coder.credentials.gitea } },
vars: { harness: "pi", model: "claude-sonnet-5-5", thinking: "high", "persona.name": "Bean", "persona.sha256": createHash("sha256").update(text).digest("hex") } };
~
doc.launch.instances.push("bean");
~
return doc;
~
});
~
Command: git diff --word-diff=porcelain d0a6a87cd -- packages/harness/tests/creative.test.mjs
diff --git a/packages/harness/tests/creative.test.mjs b/packages/harness/tests/creative.test.mjs
index 80f4516ee..c3191f99e 100644
--- a/packages/harness/tests/creative.test.mjs
+++ b/packages/harness/tests/creative.test.mjs
@@ -24,6 +24,7 @@ function bean(t, definition, { harness = "pi", persona = false, vars = {} } = {}
return resolvedFor(t, "bean", (d) => {
~
d.roles.bean = { definition, vars: { harness, model: "claude-sonnet-5-5", thinking: "high",
~
...(persona ? { "persona.name": "Bean", "persona.sha256": sha(TEXT) } : {}), ...vars } };
~
+d.roles.bean.credentials = { gitea: { ...d.roles.coder.credentials.gitea } };
~
});
~
}
~
~
Mutant kill plan before runs:
M1-M6,M9: Scrooge's unchanged targets/kill rules.
M10: drop chief library condition, independent kills by new no-library positive
and unchanged Case1 committed-document test.
M11: restore declaration-based holdsCredentials; old instance-settings131 kills.
M12: insert definitionFor before duplicate checks; old lifecycle191 kills.
M13: drop creative declared-service equality; new creative-host mismatch kills.
M14: accept creative services beyond gitea; new listing host/Vikunja negatives kill.
M15: drop early validation (commit still validates AFTER guard); new order test
and unchanged instance-settings311 kill the wrong earlier credential refusal.
Every file restored to pre-mutant SHA256 AND Git blob, each receipt retained.
13 distinct mutations,14 kill checks because M10 is independently run twice.
Full gate and all mutation results still pending at this receipt.
## Final verified r4 acceptance (2026-10-24T13:02:03Z)
mos-1585/1586 fix round is complete on magica/row285-r4. No force-push,
no canonical npm/rm or dependency links, no live business/grant/deployment change.
Fresh own root/webui npm ci128/2; MOSAIC_REQUIRE_EDITOR_BUILD=1; short
TMPDIR from mktemp under /mnt/storage/scratch/tmp; serialized whole files
with timeout-k10/1800, every script timeout-k10/600.
Whole-suite evidence (gate-r4-final/runs.txt and one full TAP per file):
bus: files=111 tests=975 pass=975 fail=0 skip=0 cancelled=0
business: files=33 tests=282 pass=282 fail=0 skip=0 cancelled=0
cli: files=68 tests=989 pass=988 fail=0 skip=1 cancelled=0
webui: files=66 tests=418 pass=418 fail=0 skip=0 cancelled=0
harness: files=14 tests=172 pass=172 fail=0 skip=0 cancelled=0
plugins: files=9 tests=119 pass=119 fail=0 skip=0 cancelled=0
Total2955 tests:2954 pass,0 fail,1 expected skip,0 cancelled. CLI's sole skip
is the script-only federation wrapper. Its dedicated script passed1/1,0skip
and verified cleanup; all12 scripts/test-*.sh exit0, including test-config.
Editor provenance/rebuild6/6,0skip with the required build switch.
No unexpected first-run red occurred in this final gate. Earlier failed
collection and expected pre-fix TDD RED logs remain preserved separately.
Mutants M1-M6,M9,M10,M11-M15: all13 distinct mutations KILLED;14 checks
because M10 independently kills the new no-library positive and unchanged
Case1 test. Every intended Node run exits1, driver exits0, and each source
restores to both its pre-mutation SHA256 and Git blob. Individual patch, TAP
and receipt files are gate-r4-final/mutants; summary mutant-summary.log.
M13's declared-host case proves service equality independently of exact-map
validation. M14 kills unsupported creative service addability. M15 kills
removing validator-before-guard using the unchanged row213 positive test.
All final file hashes were checked again against every restoration receipt.
Restored whole-file controls:136/136,0fail/skip/cancel.
Old instance-settings/lifecycle test files equal0f6cdc861 byte-for-byte,
including assertions68/131/189/211/290/306/311 and lifecycle191. Case1 doc/test
and shared business helper equal e0c6142f3 byte-for-byte. No old assertion
was changed or loosened. All final data diffs and product source are in the
review packet; N1 remains explicitly deferred, outside this row.
Final manifest: MANIFEST.sha256 hashes all changed candidate files against
d0a6a87cd except itself and the two append-only tracking logs BUILD-LOG.md
and docs/SESSIONS.md. Those logs are still versioned in the pushed commit;
excluding them permits the required subsequent session registration without
changing implementation evidence. The manifest includes this finalized BUILD,
review packet, all source/tests/contracts and retained plain-text evidence.
Its digest is reported with the pushed candidate, outside this hashed file,
to avoid a self-reference. Queue candidate is the full pushed commit, which
freezes even the excluded tracking logs.
Ready for Poe's first Codex review and Webby's landing review; both must
check new P logic, exact data/word diffs, assertion preservation and all
mutant/restoration evidence. No push to refactor/main, merge, release or
deployment is authorized by this result.
Final review diff artifacts: final-base-word-diffs.txt contains the literal
base word diff for every changed test module, including the new tests.
final-product-diff.txt is the full packages/roles diff against d0a6a87cd.
The three final data corrections remain separately recorded against that base
in fix-r4/data-fix-base-word-diffs.txt and quoted above. No assertion was edited.
@@ -0,0 +1,891 @@
0f7caa5b7dc81530cec8ef607f099725085d7819beeed15c9a309a857c1630aa agents/magica/work/queue-285/BUILD.md
04069ad089500536883425c2f75d1c37f83d9010c9ff15ac4c8250a2a67cb0bf agents/magica/work/queue-285/REVIEW.md
8fe015d211223c6115b6e2eeb72890c0c22ea35b4fd49ab1afbf7a8a92b21f7c agents/magica/work/queue-285/b1-base-diff.txt
7ea368e7b92e343e9f59a42e22be0fe63f78b8c4505ae4541038af2ae0bdc211 agents/magica/work/queue-285/b1-base-word-diff.txt
774e7126acb4f5c61f413089cb64ca00dd5b1d4dfa5d0945bff2043b04606c68 agents/magica/work/queue-285/b1-incremental-word-diff.txt
53effd50164c4c3c912488b2c6bc7cdcc579bea532eeb177d02614b4ac1e7544 agents/magica/work/queue-285/final-base-word-diffs.txt
7a531c9e68a3c38ae28dc7ab32ef8c37a9369e21ec6d89a7d0b99bfc737a2cc8 agents/magica/work/queue-285/final-product-diff.txt
7372c74641a0ad990fb025aaf0f18f1882901f5844b948ded10a0e5b97b00653 agents/magica/work/queue-285/fix-r4/citation-green.log
9c9c5f6f3da7f1528e64a060b7fe149d407721e26571de3422210b5daed01bb0 agents/magica/work/queue-285/fix-r4/data-fix-base-word-diffs.txt
962da7800285d6028bad3720786170b280f90ff20f63f94cb0505c07af43c2f8 agents/magica/work/queue-285/fix-r4/harness-green.log
41d38e4bd8f34d6e94c3a28996f9be740f3f4e60faf9c80bf48c9b6fb507f832 agents/magica/work/queue-285/fix-r4/launcher-green.log
e495167a9cb2c22e62ece9c8bbd17e2c81f026346009d10626e0d0ad51e2cd43 agents/magica/work/queue-285/fix-r4/new-tests-red.log
a56a323d0ce0a485a4622013baa33f4cfec1c8f3364eebdbbae50546408b3b6e agents/magica/work/queue-285/fix-r4/product-green.log
fa27ed9aa59296c8f830fdf88683a0cefed54d805a255ef293865d0a55d37c6f agents/magica/work/queue-285/fix-r4/tmpdir.txt
acb10dbbdaecab898f69a455f5bafdedfa9de2ab429dfa91b46cb61444bc1e22 agents/magica/work/queue-285/gate-r4-collect/FINAL-COUNTS.txt
3cbd7a131f72c29fb7995f929fd927320174b0e8f44e9084620971c7136f94f8 agents/magica/work/queue-285/gate-r4-collect/FINAL-REDS.txt
ad3bbb579082673e9aa522c563e034cfe6b4d2e9ca1a8f3698da3c4239805b3c agents/magica/work/queue-285/gate-r4-collect/all-red-files.txt
ab145f36910c8ab0d5b87e6e5f722c1c4e5e3a54ea15321318aaf56dcd4ff919 agents/magica/work/queue-285/gate-r4-collect/allowed-reds.txt
8fa384ee8e7340deb2c54653124347cc548f480a8e459de2cc8dc7733e0a9d88 agents/magica/work/queue-285/gate-r4-collect/bus/access-revoke.test.mjs.log
2e8ccae583cc8aa51eb9e2735059112d3bbc0ffb4567e51f5dc0e56ec7f0f2c5 agents/magica/work/queue-285/gate-r4-collect/bus/account-migration.test.mjs.log
d1eebb9c0c5b9b764df9536fef12e8ae6dc7d540d542a1042a744571893fce2f agents/magica/work/queue-285/gate-r4-collect/bus/address.test.mjs.log
e5276c9b114413b047b096171cbecc2a916c3bfb66e0b710473afd7aff37983f agents/magica/work/queue-285/gate-r4-collect/bus/agents.test.mjs.log
633e516455c7aae5bef51d13d7898d5613500aae1c7982dcaf0e2e55b89baa6c agents/magica/work/queue-285/gate-r4-collect/bus/approval-binding.test.mjs.log
31bbf97c09676378e2cd2831d512159f0ec7d4c749a9c7108f6cecee8b82c933 agents/magica/work/queue-285/gate-r4-collect/bus/broker.test.mjs.log
9880c8b5c154fa75743f080411a665465bcf628004b8366ba36af17d66c4386b agents/magica/work/queue-285/gate-r4-collect/bus/business.test.mjs.log
53f125c048700f0de7397d395a18ae7e08b74ee4e70a6b480942d8d23bfc27e0 agents/magica/work/queue-285/gate-r4-collect/bus/channel-proof.test.mjs.log
1fac1f31aede9faa2e79f255b0b6c89b5eaef01f6f23d06294d4130a0467dbe5 agents/magica/work/queue-285/gate-r4-collect/bus/chief-of-staff.test.mjs.log
6202c575549449212cb99100dba1727975c7ff11c9db9d79813918a25f6de513 agents/magica/work/queue-285/gate-r4-collect/bus/citation-availability.test.mjs.log
70e107320e0166cf53ab9efcac876ed57b6d40eeb2d43854caa2ce3c7b83d762 agents/magica/work/queue-285/gate-r4-collect/bus/citation-guard.test.mjs.log
9626e01de16bba9e4c7d9f124d5a10456bdf24916923021eb36d4a13fa0c24f2 agents/magica/work/queue-285/gate-r4-collect/bus/citation-runtime.test.mjs.log
ce3bfe1e4bc9ee680f3018bae196d1d3200b48ddb3d3201d5f7f96513829a259 agents/magica/work/queue-285/gate-r4-collect/bus/comment-cursors.test.mjs.log
36e6add82d7da0de154d21fa1ab6951b1a48cd42d7465708ce498553e3ec5329 agents/magica/work/queue-285/gate-r4-collect/bus/comment-migration.test.mjs.log
909ceca801a9f04ca99f156773920feb18d38b632901433d35b3e08038c47860 agents/magica/work/queue-285/gate-r4-collect/bus/console-decide.test.mjs.log
08c5d6bdf51a9c7854f96708141f01d0bd3f0d3571a16de131c9fe7f42256803 agents/magica/work/queue-285/gate-r4-collect/bus/creative.test.mjs.log
f9c2621f3ec31a6fcebffc0b206f4b6137572db0a9c6c0787600a5c3b9a5a56d agents/magica/work/queue-285/gate-r4-collect/bus/credential-claim.test.mjs.log
b4cd0bffe87b1f304fe25dbca4d0e1b9da073636d001ccf0a6eafba3b347361d agents/magica/work/queue-285/gate-r4-collect/bus/credential-status.test.mjs.log
1a4d1842b6a7a1a8e43ac56c51e8585e6c6148bf4b20d988acdb68c828366cb6 agents/magica/work/queue-285/gate-r4-collect/bus/credential-store.test.mjs.log
3c91d51794bfbbc158b5474924f4e0bf144632b07278e9a7e7e581c535c51613 agents/magica/work/queue-285/gate-r4-collect/bus/credential-verbs.test.mjs.log
5c8b0cf96dedf10a531e4f7b561be7699f76cb539181d9f267f2bc4afa162c2d agents/magica/work/queue-285/gate-r4-collect/bus/credentials.test.mjs.log
75cc4bb76f3f24db23641e52c0bf536ec5f3bf45d7785781d71e10742181fd67 agents/magica/work/queue-285/gate-r4-collect/bus/csuite-messaging.test.mjs.log
f0ed6f2ff995880be3f023ef56bdc56c765888a029143bf2addaac494181401a agents/magica/work/queue-285/gate-r4-collect/bus/daily-quota-runtime.test.mjs.log
c49f610ff33cddd95542d2b98190febd42f390ab543a1b8ff4072eb28f6b1ece agents/magica/work/queue-285/gate-r4-collect/bus/decision-close.test.mjs.log
14e93bcf5605adaeb1b8c07a09132eb021d997cd89dbb2b432ef1d61cda35d5a agents/magica/work/queue-285/gate-r4-collect/bus/decision-route.test.mjs.log
3fc65890bb8609e42ffae4ddc6fca06911d5896274ec7c566a4efd80646f7e9d agents/magica/work/queue-285/gate-r4-collect/bus/decisions.test.mjs.log
53c8f0e07391cc2a7c0a5b1e98a50a39629557506d9765a05a7442afe2cac307 agents/magica/work/queue-285/gate-r4-collect/bus/end-launch.test.mjs.log
0e148ab4405bb2ef5621afac5ae841e191268e2af98ac8db0fcaa75022a9e609 agents/magica/work/queue-285/gate-r4-collect/bus/fire-revokes-grants.test.mjs.log
baefbf89713fb654a2c7e4996c050a9a8111fcc7a890eb231596f66f0aa45d25 agents/magica/work/queue-285/gate-r4-collect/bus/gitea-grant-docker.test.mjs.log
c71bb26074541ea47bd2bb470a0a2f2b331b64d93ff2a570852ae34023a6d93a agents/magica/work/queue-285/gate-r4-collect/bus/gitea-grant.test.mjs.log
f4ed7cf236ea25408654607c6b6d8b4dd4f13f43461784fb3f189ca1eba11db9 agents/magica/work/queue-285/gate-r4-collect/bus/gitea-migration.test.mjs.log
caa8c827e4d2b52a7748cac2c48715098173dcd9fe2f064d433d0518bdf26ce5 agents/magica/work/queue-285/gate-r4-collect/bus/grant-enroll.test.mjs.log
48f3e5a541c505090576ed81e50f7c4e0b766e4f5420c3350c405cd11117df1c agents/magica/work/queue-285/gate-r4-collect/bus/grant-executor.test.mjs.log
472555ac19aa87e720015a6668398cece90bb3a3eaaf5a4190b1baef7b0f61fa agents/magica/work/queue-285/gate-r4-collect/bus/grant-host.test.mjs.log
6d1cffb7ff723026d0dff55e0a293a5e209f598f675c04c5309cb91a4dd098a8 agents/magica/work/queue-285/gate-r4-collect/bus/grant-migration.test.mjs.log
7bc1531725b891305fffc521ab79db14a4977bcb05c05f0cebae8699899eeb07 agents/magica/work/queue-285/gate-r4-collect/bus/grant-scope-runtime.test.mjs.log
b6996ec19028c81fdcf584b0f76556a97fbfbb4c1681bef4cf08fa3fb3251c6f agents/magica/work/queue-285/gate-r4-collect/bus/grant-scope.test.mjs.log
2980c8c42ef61b2822173d3f721bc5206a128b1356afcfeb9066483afe95ef89 agents/magica/work/queue-285/gate-r4-collect/bus/hard-waits.test.mjs.log
125b72702751fc0433ad4eab85b0086402689b1a8c5306210b01485ab0e08791 agents/magica/work/queue-285/gate-r4-collect/bus/host-run.test.mjs.log
2a93ea86cc9417161c8528329274386fa263d5dc9d76e2381dda09c6b8c98787 agents/magica/work/queue-285/gate-r4-collect/bus/host-tools.test.mjs.log
fce3e1c743f6690d5a10b07eb5cc19159da0acdc60190587b8b53291a2bee8d3 agents/magica/work/queue-285/gate-r4-collect/bus/human.test.mjs.log
e97463f3705aa86d1b8d3bdab797ca9f0af4a249d193d1b4e7aa9c344d6a90a3 agents/magica/work/queue-285/gate-r4-collect/bus/instances-verb.test.mjs.log
103cb1c53148c538540600b223381a22c4a20dcaaf5cc9f8b253e20e3864b66f agents/magica/work/queue-285/gate-r4-collect/bus/interpreter.test.mjs.log
2f0d2627a1f781e8b5496093f255ebaea9a5fa70e9e049a71286f7a3c6ae989f agents/magica/work/queue-285/gate-r4-collect/bus/land.test.mjs.log
69b16fec4978aea5a9a2f5cc7706c38261cb1489e3d2a0a64aff4c2cd57d5faf agents/magica/work/queue-285/gate-r4-collect/bus/launch-notice.test.mjs.log
63fb77e6a24a6cf4e660d88e7a405f973f0f51d59753fe99092f834beb241a09 agents/magica/work/queue-285/gate-r4-collect/bus/launcher-released.test.mjs.log
1b2a4594098cbdc5e6cd9136dc3726333afef93586776b0aaa4ba76568038399 agents/magica/work/queue-285/gate-r4-collect/bus/library-sync.test.mjs.log
4ab3898668c4f72eca47fdffb7ce3540b8b65115fc9bbba23a4e2292dcda857a agents/magica/work/queue-285/gate-r4-collect/bus/library.test.mjs.log
e891028488f5b5bd1e168f5d3fb6d23524d9cd6d1e8f8b02fb8e2c09a66df190 agents/magica/work/queue-285/gate-r4-collect/bus/lifecycle-revoke.test.mjs.log
fe65f6b3e137e12b930945861fbd9f378e7458fbbbac8d41047b7d575a6b11a9 agents/magica/work/queue-285/gate-r4-collect/bus/lifecycle-verbs.test.mjs.log
250d26c11642b043334417627dd113cef88d202dd27d411ebf39d2ae938ca489 agents/magica/work/queue-285/gate-r4-collect/bus/limit-checks.test.mjs.log
e2fcf9b930620c6580e6d49543e4ba46db6851b2b5253d97161efbc654d4eba7 agents/magica/work/queue-285/gate-r4-collect/bus/limit-stop.test.mjs.log
6caaa97b3dbfb0446b36600f05f958ac1c2d69c1f65cb463c13e16ad50e8e3c1 agents/magica/work/queue-285/gate-r4-collect/bus/limits-runtime.test.mjs.log
612000edd51a3aac507eab1b6b824ff52f9f1136e86478c2f9757b990fc8c9a8 agents/magica/work/queue-285/gate-r4-collect/bus/limits.test.mjs.log
53be4dceb6d5ec741d1af2e3e2b3982a2c5ce7288ff5f5060e43e2e9ab9ebf88 agents/magica/work/queue-285/gate-r4-collect/bus/message-citation.test.mjs.log
c33d9ae1847af596ffa2174290ba816a6d917dd37e986b1e1e5e44d20479f207 agents/magica/work/queue-285/gate-r4-collect/bus/message-filter.test.mjs.log
71491e9dfab96f7774c5ab09f11e2f6416a09b3cf9b3279dafc61ea4733819b6 agents/magica/work/queue-285/gate-r4-collect/bus/messages.test.mjs.log
9d6315b85b0aa34ca52eda1d7eb0f0894c3f290e03a3fe3f3f086c1b9e31a772 agents/magica/work/queue-285/gate-r4-collect/bus/messaging.test.mjs.log
b2b6b920a936c15fa4f07509ce04bd6bc9021dc645eb452674ae076882bdfae1 agents/magica/work/queue-285/gate-r4-collect/bus/name-migration.test.mjs.log
5dd20bde0ef52b3ccaf43a2d40a7df4e164b80424dee8e95652d57b9ee12a615 agents/magica/work/queue-285/gate-r4-collect/bus/names.test.mjs.log
cb17f0c8e1a5cf3cc5a2632be0be7f650b2bb8bfd44a15863f554dc6875bef4c agents/magica/work/queue-285/gate-r4-collect/bus/peer-transport.test.mjs.log
d71b96d5470e01f8c581e8ab0a3b2f43f297f8c1470b6cc05c4e889b6c807fdc agents/magica/work/queue-285/gate-r4-collect/bus/peercred.test.mjs.log
2c139f7411f8907a34da17cc542f64857db2453c73e13ff4e21ae6ce8ac3fb74 agents/magica/work/queue-285/gate-r4-collect/bus/plugins-verb.test.mjs.log
62c11085da98c8337a9d7dd9bceb51f509cdd7b90f61932adfc8c3b610a0f9e5 agents/magica/work/queue-285/gate-r4-collect/bus/principal.test.mjs.log
cbda24869262c45d08619e5485076699e126e2cd4eca15d911ba10ecbc656b7a agents/magica/work/queue-285/gate-r4-collect/bus/process.test.mjs.log
663508f9a4c3a9657ccceba5bb61d17041f15059d51d045e0d68cc5371f2ca21 agents/magica/work/queue-285/gate-r4-collect/bus/processing-runtime.test.mjs.log
6cd0d914c8956080a26ec6bee0fea72296be413a14633354296e7e5c05b572de agents/magica/work/queue-285/gate-r4-collect/bus/processing-timeout.test.mjs.log
b92474344d72a8bbe3614fad9b45e1a978348aa3efaadfe0d889ee19b4247bec agents/magica/work/queue-285/gate-r4-collect/bus/processing-web.test.mjs.log
9a749c4003b6636452a04a57997141c0a32c9ea48f0572071a5c4e96b2042d23 agents/magica/work/queue-285/gate-r4-collect/bus/processing.test.mjs.log
8c914a20a33d7c6b59ea7d6fd982ef756b4b88c65402e4db82116e91ac470a65 agents/magica/work/queue-285/gate-r4-collect/bus/project-await.test.mjs.log
fec12c6a6063a3686041c0e2085a184baf3bde806e0cd2efe2f3512c5646133f agents/magica/work/queue-285/gate-r4-collect/bus/project-files.test.mjs.log
2db6ce2d868da66852062696c8a840fa5a676f7b0dd2e648ad9da34db45c97d0 agents/magica/work/queue-285/gate-r4-collect/bus/project-runtime.test.mjs.log
d9b606efd79461d7e41ea5cc3e6b9fe734c7cb179a52100ed41f367c8bb72b15 agents/magica/work/queue-285/gate-r4-collect/bus/publish.test.mjs.log
946f97e12856d40dd8f1b0fb0599865b42149604db3a5107538009ce527d54f6 agents/magica/work/queue-285/gate-r4-collect/bus/reload.test.mjs.log
f334fa9666b4d6ad8355c8df6cc6acfd69fe72a5071be0031e6482f394b5f72a agents/magica/work/queue-285/gate-r4-collect/bus/replies.test.mjs.log
7d00afc9365f0df7bfc4a6ef72fc13a62c69afa2e965cc50fc4cc9d6b0d7e5df agents/magica/work/queue-285/gate-r4-collect/bus/requirements.test.mjs.log
6ca9fff862a4b0b65a5962c46ea443d978aa7a3610c5b375c937bd6554bda874 agents/magica/work/queue-285/gate-r4-collect/bus/review.test.mjs.log
25c11582fa80847a4ecb0861157cd0ae14947ecbf741c2b8cfac6604c5537cfb agents/magica/work/queue-285/gate-r4-collect/bus/revoke-window.test.mjs.log
b5abd0a0dbe383382303ffa50284beb76c736fb2288a2db3de3386e9e79656f0 agents/magica/work/queue-285/gate-r4-collect/bus/rooms.test.mjs.log
b7a2f7855a3a77fdc9e6209d88bd3eeffafb79801adaa63d9f466c7060497095 agents/magica/work/queue-285/gate-r4-collect/bus/routes-verb.test.mjs.log
fd35c2917f7703162d61ccfe93a00d9c61d52b861b3a069c3967641085b42f23 agents/magica/work/queue-285/gate-r4-collect/bus/schema.test.mjs.log
bdddd8aca4911f1f7cffbf3635aaaf2ba8a405bca89a68b5377fb828f0c8b660 agents/magica/work/queue-285/gate-r4-collect/bus/session-clear.test.mjs.log
53116ee09f71522ec154bcdc2a89542a39039e08e9932f79cdbc96698d2f19f2 agents/magica/work/queue-285/gate-r4-collect/bus/session-compactions.test.mjs.log
e2fc0905991cd8e88009776c48e1873dbe1870b100fe6cdedb1b2547b0abf032 agents/magica/work/queue-285/gate-r4-collect/bus/sessions.test.mjs.log
453e9cfb7614a1079ba79eb6e594ffde43ad82228778214c5c3989b8c754c128 agents/magica/work/queue-285/gate-r4-collect/bus/single-use.test.mjs.log
2a08f81797f3b94a8f1355ed66b122e74bb0030779a075690ae0daad11a4f258 agents/magica/work/queue-285/gate-r4-collect/bus/spec-migration.test.mjs.log
9d41b431852372cc359c7eed1b8ac4897a440ebaa2917723351215478497a8b0 agents/magica/work/queue-285/gate-r4-collect/bus/spec-review.test.mjs.log
66967a35ff979979b48c90cf199009ac1b9006078f0096a886115f5bdf351101 agents/magica/work/queue-285/gate-r4-collect/bus/spec-socket.test.mjs.log
f0b464dc3e7cc35fcfcdf0d9425f1ddf5e9892c1b00db6ee90e9352ced95c7eb agents/magica/work/queue-285/gate-r4-collect/bus/spec.test.mjs.log
6df3497357e590cad2c8a8d0527a572acd048c44446d172a0ff85e928c58820b agents/magica/work/queue-285/gate-r4-collect/bus/staff-request.test.mjs.log
7ab5db4e6b8f780bb0000e2e96afc2ee9681a731ed41ec40d0f0a9f6039b2227 agents/magica/work/queue-285/gate-r4-collect/bus/state.test.mjs.log
e7314d325c922e5f5b017c407620dccecb972d77d60136727f10b74f896c4bef agents/magica/work/queue-285/gate-r4-collect/bus/store.test.mjs.log
cb89b8d82a433f2feec54aa77e30cc12c5ee6338dbe33ce21d72d6a92f675111 agents/magica/work/queue-285/gate-r4-collect/bus/task-page.test.mjs.log
743848c9fce9bc10acc37766f51b2c18294d74ce88e1b570e3e51c0b2ed1194b agents/magica/work/queue-285/gate-r4-collect/bus/task-read.test.mjs.log
4dfced1f1f8bfc7e208ca2420156b28d997b2606244f3c51ceba54a3f6dfaa8d agents/magica/work/queue-285/gate-r4-collect/bus/tasks.test.mjs.log
5074aae295a408fd9875045ebd6465a0016984ee1be7b1272072d0f94d01f5a7 agents/magica/work/queue-285/gate-r4-collect/bus/tester-threads.test.mjs.log
b0aae533ba475bb62fea5b5ee1f7df0267eb9fa6dee0a5fe5860bec9d0b2ef80 agents/magica/work/queue-285/gate-r4-collect/bus/tester-writes.test.mjs.log
122397ae2cda28108f36122e6a9940e5183eb0a59f1a130ce50705225fc3126c agents/magica/work/queue-285/gate-r4-collect/bus/tester.test.mjs.log
8b7d43f83d838bedbaf4b02e954db6735bdbd4fd484075320c253f2a361a0952 agents/magica/work/queue-285/gate-r4-collect/bus/thread-claims.test.mjs.log
1c8adc84ffb80546f492817cd0f320f140ddd8aeb992d3932c9a6cac7adcbea1 agents/magica/work/queue-285/gate-r4-collect/bus/thread-migration.test.mjs.log
65725df7873320df83604a8187e02e71759eed77bed824d998bfd78e4e4edb65 agents/magica/work/queue-285/gate-r4-collect/bus/thread-shares.test.mjs.log
d230f21aada0c1f4e8f3e9eb467b500dd86d3725311daef53a53b5885ef363fc agents/magica/work/queue-285/gate-r4-collect/bus/threads.test.mjs.log
1a1365b2973ee37294c2b9235ee18d7bed3149e3c1d651175c0c96020e87db40 agents/magica/work/queue-285/gate-r4-collect/bus/transport.test.mjs.log
b588d0fe2bef2ee67e83b3e8421d336f158373d43f718d168cf06a65311c256c agents/magica/work/queue-285/gate-r4-collect/bus/usage-broker.test.mjs.log
82df952270786ea3a6b04be1564fbb76d6bb456be4b1eef94850cb5544b0ea7f agents/magica/work/queue-285/gate-r4-collect/bus/usage-migration.test.mjs.log
8354f0ff91acb5c92e4817e64c4b198f618f8cbc6b50be997ec79bc2f9c1ff6b agents/magica/work/queue-285/gate-r4-collect/bus/usage-runtime.test.mjs.log
b2c469fa1ed6683a5ff762b7125da284e1956fa55c3b3855cfb66f1f57d74de9 agents/magica/work/queue-285/gate-r4-collect/bus/usage.test.mjs.log
2577b4fbf5504fb14739b337b872cba239baf07f8533ca57c2f1a85063cbe762 agents/magica/work/queue-285/gate-r4-collect/bus/user-principal.test.mjs.log
3e4e7d41763998cc4ca257d73dc6bc6e99f594c362653f12d7c7459232c42de1 agents/magica/work/queue-285/gate-r4-collect/bus/viewer.test.mjs.log
ec558c17bb3d0629718bbd77af1855f4e13308128abc7ee7b1b4f3ff7c5652f9 agents/magica/work/queue-285/gate-r4-collect/bus/web.test.mjs.log
9e89acc41ac56d95628f5ac98bc47d26b26ac942b6c376f75ee28e8a39cf0f77 agents/magica/work/queue-285/gate-r4-collect/bus/workflow-roles.test.mjs.log
4d8d499aa27b7d5c7e37a3a05d28e49683a05da0976cf13af1b066758f02ff87 agents/magica/work/queue-285/gate-r4-collect/business/access-levels.test.mjs.log
320e9beecb926e3a3078556eb4f78e421df377913354babd14ffed361bcb764f agents/magica/work/queue-285/gate-r4-collect/business/access.test.mjs.log
e9892cd8cd2c773d4b99b6fab9bf09821642f4ae31306daaae0f3e80699d3247 agents/magica/work/queue-285/gate-r4-collect/business/agent-identity.test.mjs.log
6ad15b6c153aa0ee3c672c32669d4a76861274105922875beea06c32d45a5ecf agents/magica/work/queue-285/gate-r4-collect/business/assistant.test.mjs.log
74bc1ece3efe91fb11b24f6c7e66c211454b01ad21a5d86168264dbbf1d46944 agents/magica/work/queue-285/gate-r4-collect/business/business.test.mjs.log
35e3ceba1bb5266df8147b341c94efacd797be9b02b7159eff78b2c6e3346c0e agents/magica/work/queue-285/gate-r4-collect/business/case1-business-file.test.mjs.log
c9bcb0cca5bbd2c1aa3d63168d9a274bcf90f7861b542a8c3792253afa453445 agents/magica/work/queue-285/gate-r4-collect/business/case1-project-key.test.mjs.log
10bb1c7e6ab123029cd335f2a53f14cff1a29259b83e9eb374e907927386da40 agents/magica/work/queue-285/gate-r4-collect/business/chief-library-credentials.test.mjs.log
4024582a9f567fab3fb93631661d9c737b2efb7b08b519898d600ff5fa4dba41 agents/magica/work/queue-285/gate-r4-collect/business/chief-of-staff.test.mjs.log
05814d03c8c22bd676063883a9c89d87784d113db4dc254d832593c8f6027442 agents/magica/work/queue-285/gate-r4-collect/business/cli.test.mjs.log
967f2f6bff890fabaaee8a7a26a272909ba34f8f33f82790126aa5d0340f96fd agents/magica/work/queue-285/gate-r4-collect/business/credentials.test.mjs.log
a56b0830f04da2b1196cfff8434c17ec0692674e04db309209c6165d1de6c204 agents/magica/work/queue-285/gate-r4-collect/business/csuite.test.mjs.log
47578c7da20c8a70b0fbd210d3adf42ac92f5c98ec4275cb560220e5dd0cc667 agents/magica/work/queue-285/gate-r4-collect/business/grant-scope.test.mjs.log
ec30af0def5877e1d8863a1edf5470e29cdd359eb84923bb6e360fc9cd4caedf agents/magica/work/queue-285/gate-r4-collect/business/hard-waits.test.mjs.log
640508081b45d272ec018aa019f25e4f8e664748c608f38a6d852842f556c5fa agents/magica/work/queue-285/gate-r4-collect/business/hosts.test.mjs.log
6d4d584aec16f7f2867c5bc6f2244511136278ae67bad81b481e65edb680598a agents/magica/work/queue-285/gate-r4-collect/business/instance-settings.test.mjs.log
03de1d9cb7df27a865c6f4178ba7aef567185b9f6cf95ef0843ab7ba34d494d1 agents/magica/work/queue-285/gate-r4-collect/business/launch-settings.test.mjs.log
1bb90b5f3e00691ced80a704d9e93bb5919ca3347064f4ede8a64ae05abe92a1 agents/magica/work/queue-285/gate-r4-collect/business/library-projects-protected.test.mjs.log
59a50585220f28ab7a18c7f2d51cda8a341daa3b576408a93754547157da1f66 agents/magica/work/queue-285/gate-r4-collect/business/library-seats.test.mjs.log
6ee85180af130d03cc2ddc33bd881509800ab16fc362a436b72dc1d98b38f4cc agents/magica/work/queue-285/gate-r4-collect/business/lifecycle-settings.test.mjs.log
cca68f186ecf86ca21bbea1e6a88c88a718ab3837217e7e06d7ae319a7dca080 agents/magica/work/queue-285/gate-r4-collect/business/optional-tracker.test.mjs.log
c86e707d1bebc6f85d38c8a8880da6d1bf680962b0525bb8139faaee5bd6362f agents/magica/work/queue-285/gate-r4-collect/business/plugin-settings.test.mjs.log
e7fb4dd9710d361085db973ccc97330dcfba1b86bcb6d55e52b564616c080bd2 agents/magica/work/queue-285/gate-r4-collect/business/project-repo.test.mjs.log
d98131db3b9b5cb3bc979b32d3bbf24fee19ca9482e325f7050f54d038d140dc agents/magica/work/queue-285/gate-r4-collect/business/project.test.mjs.log
a4cba850b77200e3296d334a09af1a5a207a2288051912ece24aae2c10f6a336 agents/magica/work/queue-285/gate-r4-collect/business/record-grants.test.mjs.log
7c81d5572512fa280e93057fa041b9742bba2f1c97051877417b74dd3cf70133 agents/magica/work/queue-285/gate-r4-collect/business/reply-limits.test.mjs.log
539c4b5670c98fe51a07206bf9f562a04e0d0901f6e388f776af9ad167c8361a agents/magica/work/queue-285/gate-r4-collect/business/resolve.test.mjs.log
54e0dd6196bdd623cb6cd1844ad549dca66057e9589a456969d377d6540085f6 agents/magica/work/queue-285/gate-r4-collect/business/role.test.mjs.log
0450efbd5b6a8bd9ef705483192bfedb2a08f7ad19eb46090733a1173cde6a24 agents/magica/work/queue-285/gate-r4-collect/business/spec-review-contracts.test.mjs.log
d5e0d0449238302ea3a95319f69c3d37f61cd94f20d40d3efddd18383d9406fd agents/magica/work/queue-285/gate-r4-collect/business/token-limit-settings.test.mjs.log
51d8b6630c129de6a8035e227f8d052d7c54eee3d7fa9f96d6270203ad87fe6e agents/magica/work/queue-285/gate-r4-collect/business/vars.test.mjs.log
dd25c40cf658bf86576e140cf6aadf6bda3696bda9c10b865d8dba3097248d00 agents/magica/work/queue-285/gate-r4-collect/business/workflow-roles.test.mjs.log
b4be27463c5653da49629c821442e4a02ecf8ea74ee967266e8a2de5b9881a8d agents/magica/work/queue-285/gate-r4-collect/cli/access-boot.test.mjs.log
768a88f82948d2d76182aec41494317bf61a7770d032a877a83f6e68d2977e85 agents/magica/work/queue-285/gate-r4-collect/cli/access.test.mjs.log
a268078c5ee7f87f2f400fcfb8c9a8ae23b49ea0cfcd12d24efe1ec653584ce9 agents/magica/work/queue-285/gate-r4-collect/cli/app.test.mjs.log
cc991467a77653bf782d616c280b28e08ddb424b20b9e69b10dbc5f3467a3942 agents/magica/work/queue-285/gate-r4-collect/cli/boot-status.test.mjs.log
528f527ed6105aaf0372cd1cfba922d686ecc726c9d814dc2855d68e3356a63f agents/magica/work/queue-285/gate-r4-collect/cli/case1-accept.test.mjs.log
2184872af36f4d4d556fa5252c5673671e703d38b9e8ea6b68a61067d98c4061 agents/magica/work/queue-285/gate-r4-collect/cli/case1-hostcheck.test.mjs.log
31402532c82a1e31f66ab137cd117b59b8e1166c6708804440b33ef1ba1ead6c agents/magica/work/queue-285/gate-r4-collect/cli/case2-install.test.mjs.log
da8937a055a90db43f1eb771d365de8ff884ef210e91ea1715ad2299ac37ae7d agents/magica/work/queue-285/gate-r4-collect/cli/case2-persona-import.test.mjs.log
28d10077a22416c76dd0fb28d0f53fc083f5db6304e2a850ee1f8d67803a77ba agents/magica/work/queue-285/gate-r4-collect/cli/case2-unit.test.mjs.log
78aebd2ab2a1da7e91e1f5fef1ebdfcd7afb35c610b7267e47780f6044dc0007 agents/magica/work/queue-285/gate-r4-collect/cli/channel-cli.test.mjs.log
0f95569b928113808fe17a1ef454089e1f54a60c2b989ffc6aa3b488af7dbc5f agents/magica/work/queue-285/gate-r4-collect/cli/channel-recovery.test.mjs.log
9e45e456034e6a5be057e6bf12e6ec75285ef5148b094b110d58e764408e782e agents/magica/work/queue-285/gate-r4-collect/cli/cli.test.mjs.log
360bf318d489eb1cc37bcfbf8ac6ac4b20de57d614bf01142b76ae2975e0b791 agents/magica/work/queue-285/gate-r4-collect/cli/compactions-launch.test.mjs.log
24a61025c7d3e21f3cf866a2a14bb15126d5680195f4ca1090db8276f627ac92 agents/magica/work/queue-285/gate-r4-collect/cli/config.test.mjs.log
707bccbbb18e65268f228f61826f941fc70626510a5029afdc61bacbbc3a17c8 agents/magica/work/queue-285/gate-r4-collect/cli/credentials.test.mjs.log
910f78059e8e1decbce7e7e9c49da8448f9a3b6ccd74b3dc6e3a68d415a7c50c agents/magica/work/queue-285/gate-r4-collect/cli/federation-acceptance.test.mjs.log
d6ca83ef205b7ac02468c5bcfa798b6d648e6b7add6f658fa8afdc28fae69783 agents/magica/work/queue-285/gate-r4-collect/cli/follow.test.mjs.log
b0b160f368149b4b097251034326ab0e6b6ad296a43fb56fbf567e493d3998f4 agents/magica/work/queue-285/gate-r4-collect/cli/format.test.mjs.log
5c6e3d102f06cf1b97366c6ee9fed45fecd1ec08ab60e39dbcb546cdf0c3c3ab agents/magica/work/queue-285/gate-r4-collect/cli/gate-lane-auth.test.mjs.log
77b29c852415910b7dd83e60b2c9fe27f884998901fd5a3adad126272b3606c1 agents/magica/work/queue-285/gate-r4-collect/cli/gate-lane-fixtures.test.mjs.log
c91fc678ad0fadacdfc62e35846c16565a9154562c0c9aab76e22a9c83072987 agents/magica/work/queue-285/gate-r4-collect/cli/gate-lane-image.test.mjs.log
21e328979c43384917512acb1b323542eef06540e6bde64b622832f846550860 agents/magica/work/queue-285/gate-r4-collect/cli/gate-lane-state.test.mjs.log
43f4df9710c21137fd4abb55147d2b53c0e1d0e810c5c04728526a62985bc69c agents/magica/work/queue-285/gate-r4-collect/cli/gate-lane.test.mjs.log
10034128e981729899d46c70856d653be4320718617daa5e59855165aa96b113 agents/magica/work/queue-285/gate-r4-collect/cli/git-socket.test.mjs.log
5ad1c86535d914fbce7b2f79cb4a96cf3b20d229e0160ba028913f4da33c55bd agents/magica/work/queue-285/gate-r4-collect/cli/grants-scope.test.mjs.log
363d69e61d5ff516f2669957900872d0275ca98560fe59a46e3e5e61c25e3baf agents/magica/work/queue-285/gate-r4-collect/cli/grants.test.mjs.log
d69177952c1f90a61c6299b304c0c3a780773b136337085be55880522a4cbb6f agents/magica/work/queue-285/gate-r4-collect/cli/host.test.mjs.log
a0a4b0630e0b9388b2e7c7e73f09470833226265c1ca0bf0c2daf7541baea951 agents/magica/work/queue-285/gate-r4-collect/cli/hosts.test.mjs.log
036d5f4c6a6299902beb1083c99fae9b361cf8acd30c2c9c15f93181df4c75b0 agents/magica/work/queue-285/gate-r4-collect/cli/idle-stop-race.test.mjs.log
4e3fddb5e5ef7de7049e88330972f158d1fce415f78b9026c4cd8d094f0c9492 agents/magica/work/queue-285/gate-r4-collect/cli/instances.test.mjs.log
83cf17a9637567e8cb2af8b21291a4a8b7b080a81b25e8b28d96c3a41f3e6ba2 agents/magica/work/queue-285/gate-r4-collect/cli/launch-account.test.mjs.log
d88d6a4829deabca9a3684d05b8e9735b289a58250530d77b309bfb97de8cc7b agents/magica/work/queue-285/gate-r4-collect/cli/launch-limit-checks.test.mjs.log
d2de3f30d7c8828efefde07abdec219ccc866a21b25bc387c1fb6d03ae344cf3 agents/magica/work/queue-285/gate-r4-collect/cli/launch-limits.test.mjs.log
d82afe4c2c5ed778b320e054db060167a81f4ba2dd45fec55c0a0d1bd861b537 agents/magica/work/queue-285/gate-r4-collect/cli/launch-routes.test.mjs.log
aaacba374d85eca642f7c68af3de30c301384010974bc19952116622d8153e47 agents/magica/work/queue-285/gate-r4-collect/cli/launcher.test.mjs.log
52e42ebae861e21ddff31248e92139116dbc0065cf29de2d617491b592566dd4 agents/magica/work/queue-285/gate-r4-collect/cli/lifecycle.test.mjs.log
0fef5a4632857240742d4706dcc69fe8be43ab79ae9ec5f1181b101ce1f7627c agents/magica/work/queue-285/gate-r4-collect/cli/limits-tokens.test.mjs.log
a604a407a7db3bc61f52beb6e1b6502276c239e57b0bee34a5da908362d452eb agents/magica/work/queue-285/gate-r4-collect/cli/limits.test.mjs.log
65a5e1dbdbf8a5520509ae7c38183cc7652d93b6994ac54faf8e161cfe4ab0a3 agents/magica/work/queue-285/gate-r4-collect/cli/mark-read.test.mjs.log
427ba220891cedd53d92caaeb984486d47a142a548c34216e6538102550b68a2 agents/magica/work/queue-285/gate-r4-collect/cli/names.test.mjs.log
7b2c5aee04ba1843f5a78da2f885667d9ac8d6ea1a0d058eaeed703533ec9ce7 agents/magica/work/queue-285/gate-r4-collect/cli/notifier.test.mjs.log
a379554c780ddd856366796553a8d2157969ade446336e6df6cd40e7aaf872d2 agents/magica/work/queue-285/gate-r4-collect/cli/optional-tracker.test.mjs.log
45026d17870fec06e7c7d28d9c79407185d381db867425c6824b9578bc242bad agents/magica/work/queue-285/gate-r4-collect/cli/other-tree.test.mjs.log
3dfbe2910da3ddea011a832fdac4269f09d54bbc355c48c686b82e29a350ca61 agents/magica/work/queue-285/gate-r4-collect/cli/processing-cli.test.mjs.log
51c4a6b7f5ecda868ac65f5a9fc70cceae49cf37f1e41067dafb4ee835dc33a0 agents/magica/work/queue-285/gate-r4-collect/cli/project-name-repo.test.mjs.log
76a8ab69e0192cf4c470e6b9f732e0d1c976215fb911330b001239919fc4c537 agents/magica/work/queue-285/gate-r4-collect/cli/project.test.mjs.log
37f0035612ed5d42f5666bcbcc4c78688cc0c8d89cfaad33bcadf6f077048e94 agents/magica/work/queue-285/gate-r4-collect/cli/publish-socket.test.mjs.log
c0af95393e817444d392da8ae69f42a9084ec48b6d748107e2c6f4b119c6c7db agents/magica/work/queue-285/gate-r4-collect/cli/reply-limits.test.mjs.log
53d4891759dbbc32794b5ba2550dba2e3132c87ae1c719975a70cd4fc28e0253 agents/magica/work/queue-285/gate-r4-collect/cli/revoke-window.test.mjs.log
1793b0b6539a775466b39fddb1d6033b1408975b7cba792ceb53c5f49f5339f8 agents/magica/work/queue-285/gate-r4-collect/cli/session-clear.test.mjs.log
42bd370609f2be03af2b92af3151a95316a05a45b3ab075ea36e3c77629223b2 agents/magica/work/queue-285/gate-r4-collect/cli/session-cli.test.mjs.log
98940f194f73641faf9639f86500a41eff0ff262601be2ad658691ade0b63557 agents/magica/work/queue-285/gate-r4-collect/cli/session-launch.test.mjs.log
850d362199c1be564a06835a74a438aa71377d4496e62d86b3f0c8a22a198d3e agents/magica/work/queue-285/gate-r4-collect/cli/stack-copy.test.mjs.log
786305fccb1cb9d9f2e773d0eeef9304435e8a7c681963a4a2d7eca3c0c66c75 agents/magica/work/queue-285/gate-r4-collect/cli/stack-instances.test.mjs.log
7c817a07aa3f244f768902a5b2f8dcec4af45129f30ee1e3c3ee285fbafa7ef9 agents/magica/work/queue-285/gate-r4-collect/cli/stack-release-external.test.mjs.log
83a2b2ce6c77cf73212b8cedcd4ce508925f9ab8a0e868a946fd3714bc9861dd agents/magica/work/queue-285/gate-r4-collect/cli/stack-release.test.mjs.log
54446e68e53fa8b5d6f5c4849e0e56c236968eb8a770bdeaffcbe1783ea4ac77 agents/magica/work/queue-285/gate-r4-collect/cli/stack-release.test.mjs.retry-1800.log
f44942236a588133d842f5e383f55fc715bc8ab3671a1340b07cdb32a495efad agents/magica/work/queue-285/gate-r4-collect/cli/stack-upgrade.test.mjs.log
d104f4b4d74a4a274199a3a9f8bd238527fd0ff72f4cc6b03cbe4281b0736603 agents/magica/work/queue-285/gate-r4-collect/cli/tester-http.test.mjs.log
9e4a14522f8167c2fac591b4f96684845a6e23d6ae55e20ea44c19e298e2566d agents/magica/work/queue-285/gate-r4-collect/cli/tester-reads.test.mjs.log
1b5ccdbd6de9d6f88daecac4dc8659c9e8a2311a845f73425e3e9c1a1f4ce950 agents/magica/work/queue-285/gate-r4-collect/cli/tester-threads.test.mjs.log
5f535f7468fb0809ffd30cbb0fe20b75152e82af29ecddaf3ae1779cfecb7f62 agents/magica/work/queue-285/gate-r4-collect/cli/tester.test.mjs.log
907852840e76c6b8c81fc4aa833fa6900b6e0d210c0b612c07b5af0d36ed660f agents/magica/work/queue-285/gate-r4-collect/cli/thread-cli.test.mjs.log
7f0a077e6d5d17b0383e8c3c9d04e015a7c25343a18220e51a733d805e945517 agents/magica/work/queue-285/gate-r4-collect/cli/thread-launch.test.mjs.log
a7daf576845ad39e046a82990fb8e42e3c85503e6f530f05cd2e45a2c4a29ce5 agents/magica/work/queue-285/gate-r4-collect/cli/thread-revoke.test.mjs.log
2f5d3d7b5eb6f8bf8e6c5ec0de7d98aa8ffe79fc80a58bbf391845aa4f73b182 agents/magica/work/queue-285/gate-r4-collect/cli/trackers-boot.test.mjs.log
8200087293e60921637ac53df14b5bdaefb4b30008aa7d651741bc046f0e6003 agents/magica/work/queue-285/gate-r4-collect/cli/transport.test.mjs.log
f1012726dc436c14ec4ad72ea41b28ac5a6ad0f3922389d14126a43374542c4c agents/magica/work/queue-285/gate-r4-collect/cli/usage.test.mjs.log
8c75100a9cd8fd241e69e52d90049a20ab4f0ad2b189c0a0f5c6b2a169583666 agents/magica/work/queue-285/gate-r4-collect/cli/verbs.test.mjs.log
4972c0195ce08eb554e3736ac10081126cc0bb19332ef6b7e703de37e839cbec agents/magica/work/queue-285/gate-r4-collect/harness/bundle.test.mjs.log
600df22ea815da657be5fcd53ebaeef5088816c6905a52102ce5137361348abf agents/magica/work/queue-285/gate-r4-collect/harness/citation-runner.test.mjs.log
91444028fa1482db88037dfa8cb739ceffe29df826d498123a2b643585774ff2 agents/magica/work/queue-285/gate-r4-collect/harness/claude-gate.test.mjs.log
7fcf1ee724aaffd9eab682762ac8102c7df1d626fdfb5c2b3e47548697737de2 agents/magica/work/queue-285/gate-r4-collect/harness/claude-session.test.mjs.log
afac0949e828bb08cb1aa984aac2e580e15ab2616998a3f29e4fc277bc3089a2 agents/magica/work/queue-285/gate-r4-collect/harness/creative.test.mjs.log
c84e27a484ce925eeb813f6b631ecc4da0110df979f421dcb8890ced713793a2 agents/magica/work/queue-285/gate-r4-collect/harness/gate.test.mjs.log
876efa4f8a84fb8b2e9daf19f59d27335ddae2b0745a8a317c42a3edb1da35a6 agents/magica/work/queue-285/gate-r4-collect/harness/git-tools.test.mjs.log
72f34110bf46fdb5201e47d53bacad0942223c4dfe2ea915cbd4883435d4b03f agents/magica/work/queue-285/gate-r4-collect/harness/mcp-server.test.mjs.log
c141676f400e03231187ee5356316d0d001de44ba0192ebc9d4cd88826148bcd agents/magica/work/queue-285/gate-r4-collect/harness/pi-session.test.mjs.log
d835218873ae2c8b310f6b892af9ba8a64911b52167a9b25404393fdaa534fb2 agents/magica/work/queue-285/gate-r4-collect/harness/raise-domain.test.mjs.log
8ca027206a44c5ff110e050259ba855797e7b66903e7657af5dc4ff4189af426 agents/magica/work/queue-285/gate-r4-collect/harness/runner.test.mjs.log
e4ca5a9da218acc3bcf49f43f1e332760e21c81cf142f98f0e097f3d2a396327 agents/magica/work/queue-285/gate-r4-collect/harness/skills.test.mjs.log
2b2a2c7ca6b2c350e157e5fb6a8ee53e1c4cc6e3a14f612cec4c1ab476af5db1 agents/magica/work/queue-285/gate-r4-collect/harness/spec-tools.test.mjs.log
95427d61ca4ddaf19a7dce32383b79cb9c58a633bba6216666742ea47d9f061a agents/magica/work/queue-285/gate-r4-collect/harness/tools.test.mjs.log
862418d3d4124871ca5fcaf35e16c318a04e2888da83836751ddfea110efeb06 agents/magica/work/queue-285/gate-r4-collect/npm-root.log
5e2ca9088e90b2c747857ece26227b7eae41e7a49f763609ffe0885a36af2d56 agents/magica/work/queue-285/gate-r4-collect/npm-webui.log
9776d535c680428e0f987a475323847ca908bc6127d029b0a8e15c26e869c7b1 agents/magica/work/queue-285/gate-r4-collect/plugins/channel.test.mjs.log
828a48e2ff1243b4090a56c25e79d649ee935444480bcb77586d516dc5636ff5 agents/magica/work/queue-285/gate-r4-collect/plugins/daily-quota.test.mjs.log
5bc1239dc7fb1108f4736fb1e89666b7e1189a961b365f7d4f1d9125469536ca agents/magica/work/queue-285/gate-r4-collect/plugins/harness-compactions.test.mjs.log
fa038b8712570534664d7c432b677783a116fbf3b831a339f6fef7bdba9e8327 agents/magica/work/queue-285/gate-r4-collect/plugins/harness.test.mjs.log
d40b40a54da7880fe00c391424002bcda59bdd0736509e3eb21a713d6b3f15e4 agents/magica/work/queue-285/gate-r4-collect/plugins/kinds.test.mjs.log
d5dd47b47c0caf779f6a6c613cb0f75505caf637f8783331be6e05b19eff1d4f agents/magica/work/queue-285/gate-r4-collect/plugins/loader.test.mjs.log
14b4585ca060ee626774c0479dbb3396baeca21e35496a1fab16cd86e9b8629f agents/magica/work/queue-285/gate-r4-collect/plugins/searxng.test.mjs.log
eb0a6fa9d0656c931e328a2b2c3912d4148bd57921465e6757244c5c60d19ee2 agents/magica/work/queue-285/gate-r4-collect/plugins/token-limit.test.mjs.log
19af7c28d8b7b924dcad3b87da6de3fb4cc064f01888c135be7c9749258d7907 agents/magica/work/queue-285/gate-r4-collect/plugins/transcript.test.mjs.log
03edcf0e40935352060367941e115651c5b933232316bdc3657c42a9ff071a3b agents/magica/work/queue-285/gate-r4-collect/run-rest.py
a0dff63b1054c79f044fbb5a6358262a896a6dae69859240a916ba92f1807e92 agents/magica/work/queue-285/gate-r4-collect/run-suites.py
6ec98328166bf50e020c586992d70fa4330033bdc5e9e130f23139bf8e3f5f17 agents/magica/work/queue-285/gate-r4-collect/runs.txt
132164715f840d4fa23c4ee9b55ed9269ee5d511e9487f35756556ec5374efc7 agents/magica/work/queue-285/gate-r4-collect/script-runs.txt
f91fc95a173339137f981e24fbf630acfde957e32c3cd71e28304532083c6a77 agents/magica/work/queue-285/gate-r4-collect/scripts/test-auth.sh.log
25579ce07a27584d2b55fe58031f2527b10e32a4e6106c70e909064315cc70b2 agents/magica/work/queue-285/gate-r4-collect/scripts/test-conductor.sh.log
92ea8ce5e66d892fefacc76b87d140bcfb8c5a51dc77bdf4a47a6213ac5d2898 agents/magica/work/queue-285/gate-r4-collect/scripts/test-config.sh.log
9b482b7a3f0672c872923c06e71d5a88ff085a08170905a6cabe1d2b6fc283b6 agents/magica/work/queue-285/gate-r4-collect/scripts/test-discord.sh.log
41f517ff790f198088269aa15674bc45c70b8726230c30e4b87453003576ce7e agents/magica/work/queue-285/gate-r4-collect/scripts/test-extension-package.sh.log
74a26505e01fe1077318d2b8ed7271a4448dc155924955ae905365ac68652af5 agents/magica/work/queue-285/gate-r4-collect/scripts/test-federation-acceptance.sh.log
83dfaa21c4e4ad941088efab3f69e87ebd2f6bd3cc72ede938e21dc06da8a34f agents/magica/work/queue-285/gate-r4-collect/scripts/test-foundation.sh.log
3e2f8024027592e77790db2bbe039803060915ebf37c7b67f04071a7e83d20dc agents/magica/work/queue-285/gate-r4-collect/scripts/test-land-work.sh.log
5d9a170308927264d212e3dd00e87463a21d55811cf9b4cb51dce74d6a10fea5 agents/magica/work/queue-285/gate-r4-collect/scripts/test-push-check.sh.log
e95247a7751aa13b204ef92deaf4d51e3ece71671296c045a50efac53088f99e agents/magica/work/queue-285/gate-r4-collect/scripts/test-queue.sh.log
9f9dd11e2631a24ad55aaf7becc61965c592b00da08a4e72b98e0384d3a13ec7 agents/magica/work/queue-285/gate-r4-collect/scripts/test-release.sh.log
a065947f07d70a4721b423da597968630bc8ec1659db14681af42bb3f974077d agents/magica/work/queue-285/gate-r4-collect/scripts/test-task.sh.log
dddc2cfa2a4b9654ca12379fcc40c36163dbd5dad8ce330de8aa53fc50fbc10c agents/magica/work/queue-285/gate-r4-collect/stack-release-retry.txt
5a598a778fb3923f4f880713065a48a5bd9eb68bbcaa1b95726be13eb307657a agents/magica/work/queue-285/gate-r4-collect/tmpdir.txt
4c49e5314e4f2f1fc17f35dd8c69fb564056369c6a98d30abc4ac0b92d7797b2 agents/magica/work/queue-285/gate-r4-collect/webui/agents-browser.test.mjs.log
4e7ff30470ade9149aacb11f38897ea5bfe7a128ff450b9cf0d2a8273aa75cff agents/magica/work/queue-285/gate-r4-collect/webui/agents.test.mjs.log
bbf23042513467815079d91eb2debec7cbbd05a73d7b52807ac56efefdb0145a agents/magica/work/queue-285/gate-r4-collect/webui/assistant.test.mjs.log
a174f230f76bc762e7227c14bb8455930628068304258e11bcc1bbbb646b5925 agents/magica/work/queue-285/gate-r4-collect/webui/board-held.test.mjs.log
9b776f1ba1294697647a793b1f29f24468fdde3abda6a10ceefa57cf33ff233d agents/magica/work/queue-285/gate-r4-collect/webui/browser-edge.test.mjs.log
e5aec8e2d4ea3ab650bbee5924cf2b12ada7e786e3b4abc186c375352f3c0af7 agents/magica/work/queue-285/gate-r4-collect/webui/browser.test.mjs.log
14877988b1e7bdfe0fd1ef32773a51a5fd0661fe10d3fa6fc3fd9482ee84ddbc agents/magica/work/queue-285/gate-r4-collect/webui/bus-browser.test.mjs.log
b3427c15ec89a2b8f6a6502e5b410120163e3260f962146e424cd9b43d56c109 agents/magica/work/queue-285/gate-r4-collect/webui/bus.test.mjs.log
5ac2d8a442d2ab10797e6bec1e8670cf23d6eab27bd8f4ce07c6ae4a6c7bb765 agents/magica/work/queue-285/gate-r4-collect/webui/channel-chat.test.mjs.log
beb26c0da4fe44b1eabff789769f16d8c391a77de19bcf38bee648318bf112c2 agents/magica/work/queue-285/gate-r4-collect/webui/chat-browser.test.mjs.log
bf31d466870a43b167ac87f80b95a4aec1885235db5323d8e1b5c2b2d594ddf2 agents/magica/work/queue-285/gate-r4-collect/webui/chat-instances.test.mjs.log
deb2909ebb17cebd7dfff0718be92045c07183e40243747c9b76bee2f2b0f1c2 agents/magica/work/queue-285/gate-r4-collect/webui/chat-sessions-access.test.mjs.log
7fe605ae35d0ebac58bc778709db8e4357003274d2e989e64b6ecb1eb915ba10 agents/magica/work/queue-285/gate-r4-collect/webui/chat.test.mjs.log
60fffdabfb3fbc296896e8a9c5f9fd43ec1416d402b30ae63f325b7893129b21 agents/magica/work/queue-285/gate-r4-collect/webui/conversation.test.mjs.log
8e7cc112e62ab79e7592c536c7f2761634f43e87b6d4dc157cd667138829e15d agents/magica/work/queue-285/gate-r4-collect/webui/decide-browser.test.mjs.log
bf6a2adfd07fa1db2f81c90696d975fa272527dc764dd6b5ad3b14c68fa47167 agents/magica/work/queue-285/gate-r4-collect/webui/decide-sso.test.mjs.log
3082cb0c69c2b4f12ce78f282a946c15a010638d3b8057710f275847ac59ee69 agents/magica/work/queue-285/gate-r4-collect/webui/decision-http.test.mjs.log
27ee7ebe4ff342a0e6015d3b0e4e7f3f1b6f84548657a1097bd673b58bd0d509 agents/magica/work/queue-285/gate-r4-collect/webui/discord.test.mjs.log
d088c64c7da3bbf308dae6cd1e0771290b9eec01421097cec5d274042ff4818d agents/magica/work/queue-285/gate-r4-collect/webui/docs-browser.test.mjs.log
616de36be38f08d81b43f7c6614a73793533a15785f21d8161597ec55f110a81 agents/magica/work/queue-285/gate-r4-collect/webui/editor-browser.test.mjs.log
b4db8a01d5bc5f95a2df8e6d0a60515f7caa13b3134ac18d579f89066e56ab44 agents/magica/work/queue-285/gate-r4-collect/webui/editor-provenance.test.mjs.log
31c1e95d6d063d3fc32b5a1fae7b0ec8de50f931b19e9f2a5d28450a086f9fdd agents/magica/work/queue-285/gate-r4-collect/webui/editor.test.mjs.log
f7b8d686e6c982520ece1356901665eb3321623d6accac61fe45318feb98a46c agents/magica/work/queue-285/gate-r4-collect/webui/granted-user.test.mjs.log
a609775cfc639b76587d3fc638f663621fa6aa27609fcd08b3970d4590d24efc agents/magica/work/queue-285/gate-r4-collect/webui/history-return-flow.test.mjs.log
965d42a45be659b01280b2fb9c0b369106463fa062fe2a3243492a5aa77834fb agents/magica/work/queue-285/gate-r4-collect/webui/instances-browser.test.mjs.log
26874568a0dc303d3cea58e3afb0253f96761d4106839a80e3f7954b8c13309a agents/magica/work/queue-285/gate-r4-collect/webui/instances.test.mjs.log
f894e396adaf78f4bc4cc9a329a6776d19d0ac3789a3ee34101deae65b9caf00 agents/magica/work/queue-285/gate-r4-collect/webui/library-cli.test.mjs.log
61d36b0ba239d8a4121d76516f27e3b71bda542b5b84ee1b042bbb0873a3a0b6 agents/magica/work/queue-285/gate-r4-collect/webui/library-status.test.mjs.log
c0d99011fea775a9dd9665a32d3f52e8726f7a44076e69fccd53d84ecf9ec904 agents/magica/work/queue-285/gate-r4-collect/webui/limits-browser.test.mjs.log
ee3db4235dfe7278601af17d3fb55ab4adb96e436d263a1b29b9fbf8a88600ec agents/magica/work/queue-285/gate-r4-collect/webui/limits-route.test.mjs.log
c6b5980721c3b930928bab3d19e2a8074056f2fa1c7710e8161d7f0915903461 agents/magica/work/queue-285/gate-r4-collect/webui/markdown-preview.test.mjs.log
49761952beb7c40bcbbab64ab7bce2c1eb3e2a9a774b50c12688cc0829032fe0 agents/magica/work/queue-285/gate-r4-collect/webui/messages.test.mjs.log
1b4b045e253ea8c77743dd89aa9bc806ba4f1092532ef0717a33bc979d006d76 agents/magica/work/queue-285/gate-r4-collect/webui/pinned-copy.test.mjs.log
5ad5a4c21d3be42e9b0c9697d6656656c4e4d13df491ef9e28ddcadaf94134b9 agents/magica/work/queue-285/gate-r4-collect/webui/preview.test.mjs.log
82bed5d9abd8dc6ae54350075389fae21c7c3313e7d152f85be43bdf6380de43 agents/magica/work/queue-285/gate-r4-collect/webui/processing-browser.test.mjs.log
75d0aef6d38f943af4af6e6ed5fdf60d9eebaada47fc81f69828586dc8a2bd27 agents/magica/work/queue-285/gate-r4-collect/webui/processing-ui.test.mjs.log
baa715b9fd51a48b15ff4ce91bf61e4f87ef754617466cba82f748265f13d98b agents/magica/work/queue-285/gate-r4-collect/webui/processing.test.mjs.log
4a0fd7e6c8fbb1c4a60adf830b99f63669a1bb90603ee5cc201a53f98a59e114 agents/magica/work/queue-285/gate-r4-collect/webui/project-file.test.mjs.log
e9dada59fbd135a6000144675862faf7b040fdaf98a97a8435c42a6fcab4b24b agents/magica/work/queue-285/gate-r4-collect/webui/project-name-repo.test.mjs.log
df9cb152d852c4af46fcceeefafebe5c1ca2e2a13bbb800477c391c82d7529e3 agents/magica/work/queue-285/gate-r4-collect/webui/proof-cli.test.mjs.log
9f7b01827f1bf99754eeb6f97e88aaae1108e8585dc121a7729b1d337d17bdb9 agents/magica/work/queue-285/gate-r4-collect/webui/proof.test.mjs.log
e2cac643cab088a3da791343795993d7554bc542eab40c6a703e052f67f6f4fe agents/magica/work/queue-285/gate-r4-collect/webui/reads.test.mjs.log
35699bba6ff2bd11c438dd64dc9842aca0c87f6ec85fd6c8b467189fbf64032f agents/magica/work/queue-285/gate-r4-collect/webui/relaunch.test.mjs.log
a8e4f84ee47a4b428429db5423054abc094e25d326c0c2a814d37a25984ebcb3 agents/magica/work/queue-285/gate-r4-collect/webui/return-flow.test.mjs.log
dc79b156133650004447acaf385e55c22edf64c49944415c746e24f7c67d7e06 agents/magica/work/queue-285/gate-r4-collect/webui/routes-browser.test.mjs.log
cc2d12dc65fef1f6ca30c959915291ddebaa722593aba9af7e30959f9dce4e99 agents/magica/work/queue-285/gate-r4-collect/webui/routes.test.mjs.log
75f160bad77baa83c762ebba8826dc04d21fab38330d1bcdca5c055c17093753 agents/magica/work/queue-285/gate-r4-collect/webui/send-browser.test.mjs.log
17da130008549c5addf878256fa6ed5a098e96653eedf347f40f5a875a407f5a agents/magica/work/queue-285/gate-r4-collect/webui/send.test.mjs.log
227a040ea58ba0b1e8dd51c11d217cc82e3fbb064b28664d5975bccd0e3046aa agents/magica/work/queue-285/gate-r4-collect/webui/serve.test.mjs.log
348cb5c96e5363b3183ef498883638a833aae1f239a2e5a511f520e84c2f282c agents/magica/work/queue-285/gate-r4-collect/webui/service.test.mjs.log
226951cbd84f7d79bed678f24bc1051c5bb12ffe6ef15fd117331b6b5766a0ba agents/magica/work/queue-285/gate-r4-collect/webui/settings-form.test.mjs.log
5dacec779edfdb3de375d2e048f31b8f40943a4ad14ab37c903835b74c61138a agents/magica/work/queue-285/gate-r4-collect/webui/settings-write.test.mjs.log
93f1939404e20c10f30f14ab055fcd5cf8e94812c221c43e4fff8210db7f44f0 agents/magica/work/queue-285/gate-r4-collect/webui/shell.test.mjs.log
7c226c910677f516cb31fea957e1c08867054446c670b0e76598c148f417bae9 agents/magica/work/queue-285/gate-r4-collect/webui/sso-browser.test.mjs.log
460681e99510eacdd5457359da53ef713c514e37eb9e7e4bd081b5c54d1c2439 agents/magica/work/queue-285/gate-r4-collect/webui/sso.test.mjs.log
9b804cedbbf78bc3ce7d31c6e29b3d7db144d0727ccb91a0d35b11f006e5e84a agents/magica/work/queue-285/gate-r4-collect/webui/tester-browser.test.mjs.log
7327575ec1845331201b4fe1d2a29db409785c3da5c9ee496ae848b9a37119fd agents/magica/work/queue-285/gate-r4-collect/webui/tester-cli.test.mjs.log
35053f6d5634051f82bf53d913e6b9bec6e54c79bda7c3b2de04db21ecd14e2d agents/magica/work/queue-285/gate-r4-collect/webui/tester-listener.test.mjs.log
536e46d9f2f375d34a82c421d2722a9c5fdf32736c792c91b3f182d30f410472 agents/magica/work/queue-285/gate-r4-collect/webui/tester-socket.test.mjs.log
9ced49dc7cfc4fd5859752e602996e9d007ecc9faecad87db5d7ffed7388abd1 agents/magica/work/queue-285/gate-r4-collect/webui/thread-claims-browser.test.mjs.log
6e734711048f441c440ef2812fbf4c35401f9381ff325da5109b89208d0aaaaf agents/magica/work/queue-285/gate-r4-collect/webui/thread-claims.test.mjs.log
22c4cb305abf2c349490f5f613ba43060f9cc537ff37c5e17438454389930dfb agents/magica/work/queue-285/gate-r4-collect/webui/thread-sharing.test.mjs.log
399fcd57f19c70329f36195e3657a86701929b9d7b02151e8c78c76e6913bfd8 agents/magica/work/queue-285/gate-r4-collect/webui/usage-browser.test.mjs.log
d5687942fd8a1f3d7cf7b7b7de6ac61b6d4c41b059d7a99628dc4fdcf67aba6c agents/magica/work/queue-285/gate-r4-collect/webui/usage.test.mjs.log
fc62af04182d9b08e3fc3d66b985cae35f84f38ab70655833e856292601b6cbc agents/magica/work/queue-285/gate-r4-collect/webui/user-option-swap.test.mjs.log
1083df786265d2f12d81eda55bc6093e6c33e0cf6dc99347dee363f232c6e27e agents/magica/work/queue-285/gate-r4-collect/webui/views.test.mjs.log
f32fac302f88456e432d7a7ef8d501bf4f828c898e9d08bd2661f4a082fce200 agents/magica/work/queue-285/gate-r4-final/FINAL-COUNTS.txt
7fbcc5422aaa64a9b4dccbb326d5575df71ac7916a7c9162afb5aa715e0f2c3f agents/magica/work/queue-285/gate-r4-final/bus/access-revoke.test.mjs.log
01f8025de7d2f250e2d5f155ddd0d8a774e378763d94c17ec07d522a1519b20c agents/magica/work/queue-285/gate-r4-final/bus/account-migration.test.mjs.log
584387359aca990ff756646b8d4a36ff401ff0249d451421ae3b04c4941109b9 agents/magica/work/queue-285/gate-r4-final/bus/address.test.mjs.log
125f0a6e7ec07b065224336cc84a84f99149f730d0ade10dc71ebf5e4b9811e8 agents/magica/work/queue-285/gate-r4-final/bus/agents.test.mjs.log
77c2f80f6b4e43f29c85dc68790dfd86f5db0e2d818494e83710b8c38970e9d0 agents/magica/work/queue-285/gate-r4-final/bus/approval-binding.test.mjs.log
f6b71a3bdab941998178f08fead850fac6f45fa556a12db399c77d061872b672 agents/magica/work/queue-285/gate-r4-final/bus/broker.test.mjs.log
e2377c7ca0aee4ad898849eb776cd8eb589526a8fb8d60d4acb71d1711b2b9bd agents/magica/work/queue-285/gate-r4-final/bus/business.test.mjs.log
630eb8ba4fafb0ab5f95b5ef623eb3b011f48f8782922e440fd2d7eee708e744 agents/magica/work/queue-285/gate-r4-final/bus/channel-proof.test.mjs.log
c50bc107c908b285f179e9b143f4e80eaf9cc0724d18779dde9fdabf7d9170fc agents/magica/work/queue-285/gate-r4-final/bus/chief-of-staff.test.mjs.log
314a2b8b8c91acb53aecc2b3274ae6e5690fc0f07721a96525154ec3978c5038 agents/magica/work/queue-285/gate-r4-final/bus/citation-availability.test.mjs.log
3686290550fbbc7dcd020a0a1f73a8c9f6426df767875ca9c62994d19505b651 agents/magica/work/queue-285/gate-r4-final/bus/citation-guard.test.mjs.log
54b874193dd4c3cc6b36f1978385668a43c0b5a0fa58e0dd71f768bd61caf1bc agents/magica/work/queue-285/gate-r4-final/bus/citation-runtime.test.mjs.log
be0d8470222d9116b7ceaa598a75988067d32d73f9dfbc7fcd0d896c5bb4e5b9 agents/magica/work/queue-285/gate-r4-final/bus/comment-cursors.test.mjs.log
88e13b72f7ad0afcfd8eb28788793e745a93ee2aa67cdc9dcf951c1f763ec0c4 agents/magica/work/queue-285/gate-r4-final/bus/comment-migration.test.mjs.log
7f2683ee6004219a0f03d6238933ef030223b9c3e15375bd25ae60f3a8cef26f agents/magica/work/queue-285/gate-r4-final/bus/console-decide.test.mjs.log
8a94840b084b52a483174c39fbc0246b4f5eab010aaf05982c9cfea1fdd9f9b2 agents/magica/work/queue-285/gate-r4-final/bus/creative.test.mjs.log
cca2741622e11e59f4d5a1bad5f070511c775033b0c53052bf647e6e6d5249c0 agents/magica/work/queue-285/gate-r4-final/bus/credential-claim.test.mjs.log
81128c7cd52b059b4ac872b5c88c089f58e3b464dcdd19ab5a2178a1afb9f9fe agents/magica/work/queue-285/gate-r4-final/bus/credential-status.test.mjs.log
3a2530a7cf3a45ddf7e6bc8ca1da86b51c278b98974e00ce85fb51542629ef7a agents/magica/work/queue-285/gate-r4-final/bus/credential-store.test.mjs.log
f35239fd716b12762f3f64307044a032d283ee0d4e06105daa52d6b8ce39e6c2 agents/magica/work/queue-285/gate-r4-final/bus/credential-verbs.test.mjs.log
36faea62cf044657e98634f951fc7d84992a446a48bc38cd6ee3b663eb2c3d52 agents/magica/work/queue-285/gate-r4-final/bus/credentials.test.mjs.log
42362c6166dbde9724a13357487dcf1025c0418ff2bd3dbb678a732996dee5a7 agents/magica/work/queue-285/gate-r4-final/bus/csuite-messaging.test.mjs.log
515676f310e5f8de8ee59058699e181744f84341bd895d538e3312c685c2300b agents/magica/work/queue-285/gate-r4-final/bus/daily-quota-runtime.test.mjs.log
e546d55804b8cdc1e2ff20f913e6bddb97f65cdae8ec797f24f1660903987f28 agents/magica/work/queue-285/gate-r4-final/bus/decision-close.test.mjs.log
c143c362feb567a0ff797cc626fc532fa4a701affb2dc50818200fa003754faf agents/magica/work/queue-285/gate-r4-final/bus/decision-route.test.mjs.log
1e1506bcbc5fe95ed56e8b43a03f8cf8ab02b64692e822b562dd6a547b9e9ea4 agents/magica/work/queue-285/gate-r4-final/bus/decisions.test.mjs.log
8d983bbcbbf2997be9525dc301d2e8a24e7bd133c602ca5ca754fcf0091c13f3 agents/magica/work/queue-285/gate-r4-final/bus/end-launch.test.mjs.log
013b3f904af7741da91ba3e0550fc60c5387fd96161ffedd4026360be566a59a agents/magica/work/queue-285/gate-r4-final/bus/fire-revokes-grants.test.mjs.log
87639d51c1d1e22694c59b7b603da9d1b23baf17c3e6c80c0018c857d045179e agents/magica/work/queue-285/gate-r4-final/bus/gitea-grant-docker.test.mjs.log
650fa961ebd3e2fff69c17e31938a74d75456e2c86f32eb74e61ceada0214275 agents/magica/work/queue-285/gate-r4-final/bus/gitea-grant.test.mjs.log
e202c6298a6e8e3a3512e88fc586a4aaf58e0767ffbb0d8e9a1dd960d34e6d4f agents/magica/work/queue-285/gate-r4-final/bus/gitea-migration.test.mjs.log
181712d61bcf28343fcf585ae641d9d48f56310c6c5bffd7746bc8b723cbc345 agents/magica/work/queue-285/gate-r4-final/bus/grant-enroll.test.mjs.log
344c2e1d1f952c012ca41a628d6cc341721d972314d65ec5a8df689ab412a4f6 agents/magica/work/queue-285/gate-r4-final/bus/grant-executor.test.mjs.log
1e2c011030faf1c6e323f5003b119c4d3661ec9b6ffcb808094581bbece143eb agents/magica/work/queue-285/gate-r4-final/bus/grant-host.test.mjs.log
169e7a59162ad4d1aa2ee9b04498ee836d85445b3141f2d79f18d387cf36f01b agents/magica/work/queue-285/gate-r4-final/bus/grant-migration.test.mjs.log
e8d8f220f3e5c06c9b91e7edf4b8b19da1e4f83345bbd85b7c2b7d3654535536 agents/magica/work/queue-285/gate-r4-final/bus/grant-scope-runtime.test.mjs.log
f6193c9e7c494cffe8014acef75239f7dafff9ee1054d9da31934d0177e76a8e agents/magica/work/queue-285/gate-r4-final/bus/grant-scope.test.mjs.log
d4c00e6926997768456d5e2c604532fd064b8b96c8d30d56a2126e8f803af155 agents/magica/work/queue-285/gate-r4-final/bus/hard-waits.test.mjs.log
56947c66c5c473f7fff875351a99c4dec7b0c53b40ed6e5d6279927772c1ed4b agents/magica/work/queue-285/gate-r4-final/bus/host-run.test.mjs.log
89b48f344e528d4791e2140169a5c17238a88cf18645d5627e128ef4b173f462 agents/magica/work/queue-285/gate-r4-final/bus/host-tools.test.mjs.log
d289774a4ca2adcbd63a02b236ae76f6c5a6f0c1a5232f8b6ceff0cf38f27e5b agents/magica/work/queue-285/gate-r4-final/bus/human.test.mjs.log
737b5cec7eba5222f16b308337e1e9953f327c8280e29d777000ba580132a2f6 agents/magica/work/queue-285/gate-r4-final/bus/instances-verb.test.mjs.log
1fdc8f57dd08839c9bdff0c3c27a9e8e36842ab4c58c96462ab009c4df1e96d5 agents/magica/work/queue-285/gate-r4-final/bus/interpreter.test.mjs.log
1eaa31ed5052535a5feeb66b556d936610ea6fe064e65f6f7d768829e7264371 agents/magica/work/queue-285/gate-r4-final/bus/land.test.mjs.log
b026fcc130fd66b05b3f106357341255f47710afdbae6e9571670550c3518233 agents/magica/work/queue-285/gate-r4-final/bus/launch-notice.test.mjs.log
07321f4ad9ac2194631e8079d9a2fca242214c763eb80d8240ffe496c362d321 agents/magica/work/queue-285/gate-r4-final/bus/launcher-released.test.mjs.log
e44056de0a30569e825bfcd57df53a6bef58763081758947cda95381895d8e3b agents/magica/work/queue-285/gate-r4-final/bus/library-sync.test.mjs.log
e5f2a7baf52805260d438f55718c52579a5d618472a10992491a98e68d014a53 agents/magica/work/queue-285/gate-r4-final/bus/library.test.mjs.log
a57ea3daf5391b344189595d0362f1818111a0218f6d9f22bb00dcf88b2e02b5 agents/magica/work/queue-285/gate-r4-final/bus/lifecycle-revoke.test.mjs.log
ce6ff398a8aea0587ea68d9e086323bd02b994de20bbadc9ea9e6834fbc34ab0 agents/magica/work/queue-285/gate-r4-final/bus/lifecycle-verbs.test.mjs.log
815d8c1052164a335dafbc4f96f94b13c59ee504622f9cf69a2800789e3ef06a agents/magica/work/queue-285/gate-r4-final/bus/limit-checks.test.mjs.log
979d2f47c5cfd877dfa5fccf6c96b442c4a89f2e7830d95e4d4d93f2b36452ba agents/magica/work/queue-285/gate-r4-final/bus/limit-stop.test.mjs.log
6e0989fc89827966c92ad8d365ca9b952aa2c47967f406c7e39a0a5f00d71a19 agents/magica/work/queue-285/gate-r4-final/bus/limits-runtime.test.mjs.log
215b5e69a7bfc72dfa8baabc62952d314fe46e3bbab512274606e06c5a3313fe agents/magica/work/queue-285/gate-r4-final/bus/limits.test.mjs.log
e60646acf02cae57656f4299bc3192030a245178726dace3542fdc2ae6dccdfe agents/magica/work/queue-285/gate-r4-final/bus/message-citation.test.mjs.log
ae2ee45d07254563db32e2d0329dec9c460670126d0d30def4cf13494be10c9a agents/magica/work/queue-285/gate-r4-final/bus/message-filter.test.mjs.log
daa88633e6a83e5970a65ac840608ea6b56192cf504927cd20108f5ce1e23288 agents/magica/work/queue-285/gate-r4-final/bus/messages.test.mjs.log
fc4c4bb883f95c23a69abf03485f706e9162dd419506d825f8a8bb9250ef509b agents/magica/work/queue-285/gate-r4-final/bus/messaging.test.mjs.log
fcbd138fc241687e2c4925e4822310f56eaffd471d42ab96c29f56f63feb7436 agents/magica/work/queue-285/gate-r4-final/bus/name-migration.test.mjs.log
b12c8f432a7b0ff9500527925a5d87fa9e77be5702247f0f0fbf462b7dd623cc agents/magica/work/queue-285/gate-r4-final/bus/names.test.mjs.log
3fa78959c9150dd7f42658c45eefaaec6ddc9d155875f8dd992cff63cd923dd8 agents/magica/work/queue-285/gate-r4-final/bus/peer-transport.test.mjs.log
5054dac723654a3fa478946a6fe5ab04e51e53e6c0421917b4a50412987b5fe3 agents/magica/work/queue-285/gate-r4-final/bus/peercred.test.mjs.log
ac5476b1714f9084041b35c65c1edfdcd142530f4688b8a87489df1cecb2eebd agents/magica/work/queue-285/gate-r4-final/bus/plugins-verb.test.mjs.log
5e5cc59a8a94d8750a3669edab6e25f89487c5ad34836870e977f545cde7396c agents/magica/work/queue-285/gate-r4-final/bus/principal.test.mjs.log
fe5a472dbe08b3cd445aedbf1661c627eeb62c9192c2ac9c2247285c74881023 agents/magica/work/queue-285/gate-r4-final/bus/process.test.mjs.log
98149745574b72a66123848681bd7e08b22a934ab2787571bfd8110ac23a13f3 agents/magica/work/queue-285/gate-r4-final/bus/processing-runtime.test.mjs.log
1aa94b85956045c985a2cbaa0442c1c010582b312fe4bc866faf48a599053dd9 agents/magica/work/queue-285/gate-r4-final/bus/processing-timeout.test.mjs.log
b39772e500ea33ebd57b48c21137c60d04fb79fa6e6c528a9279aada4fcec2bf agents/magica/work/queue-285/gate-r4-final/bus/processing-web.test.mjs.log
4a976a7c0dc3af6acda71c10f61c781269f65b3b8db1a7d52f4a0fa03a4925a9 agents/magica/work/queue-285/gate-r4-final/bus/processing.test.mjs.log
3aa912af2f96507f007781c2674da0c15dd8b97f5b038afe75cad7aea698d02f agents/magica/work/queue-285/gate-r4-final/bus/project-await.test.mjs.log
0728ebd155b5802d4dc8ddcc72b18a18a422f42ef4cef29e84fb128f2c409bd6 agents/magica/work/queue-285/gate-r4-final/bus/project-files.test.mjs.log
c4c954e3b77be4e762b7e8b183503b191057a657c9e6b1c95390d32a16a6cd89 agents/magica/work/queue-285/gate-r4-final/bus/project-runtime.test.mjs.log
d75203d37d67299709b87d2bb4545cfe812d67899c64f3117c4d727164ee8971 agents/magica/work/queue-285/gate-r4-final/bus/publish.test.mjs.log
75fc7e625af4e73d359b6f1cb37ffcd995bd57c556e91fce6d1541d55b38b5e2 agents/magica/work/queue-285/gate-r4-final/bus/reload.test.mjs.log
b6248c4aec83b1e10b135110772f9ff57793dc9487ca452fdd8725a6669d8789 agents/magica/work/queue-285/gate-r4-final/bus/replies.test.mjs.log
d238b8e30451bb7a1f6483d98053856179b5dd9d46a512b47dcf5ada97365296 agents/magica/work/queue-285/gate-r4-final/bus/requirements.test.mjs.log
0b0796b72dd4cc17ee74b8150d5359ee6b5c3bad940d45228863fefb6ad00012 agents/magica/work/queue-285/gate-r4-final/bus/review.test.mjs.log
c4e2a5abdf3267315809dae8a895f37330e2532bfee285f7ec9167d0e10b9f0e agents/magica/work/queue-285/gate-r4-final/bus/revoke-window.test.mjs.log
a53589c9b00fd25c5c815080bc595342a1bdec11c9b253a418fb252c0f8a1cc3 agents/magica/work/queue-285/gate-r4-final/bus/rooms.test.mjs.log
f6b431f479981c441cce096cccba0122ec1a3426f6111f1f7f626686c165bc6b agents/magica/work/queue-285/gate-r4-final/bus/routes-verb.test.mjs.log
7a4923f38ad902441ae6aea9cb576b7147dd70383d098d51336e6a14d8e86505 agents/magica/work/queue-285/gate-r4-final/bus/schema.test.mjs.log
00b4938f9857909d8d1b2a09319d7789a3122e78b536a9ecea59dc0c186ad36c agents/magica/work/queue-285/gate-r4-final/bus/session-clear.test.mjs.log
276bf89a346166d545ce198bc348481a5ce142318929061b630e8ec220876323 agents/magica/work/queue-285/gate-r4-final/bus/session-compactions.test.mjs.log
47f135c2d70ef45642cb23c24ba3c0b3895fc17942d88fe3a8df6ccb7f5ea1d0 agents/magica/work/queue-285/gate-r4-final/bus/sessions.test.mjs.log
55de3ac12488dce5d94534a65aa6cc5772f24203e568ba673629cd70e65320ce agents/magica/work/queue-285/gate-r4-final/bus/single-use.test.mjs.log
0be7abd2fe17ce70d44441d99d24d3cb4cf6c333c8f13c1db6629b891ad081de agents/magica/work/queue-285/gate-r4-final/bus/spec-migration.test.mjs.log
4cc4eec2ad4c90ff3a4e43cd9179e6fb74aeac8e2325a8672d066863dbeae4af agents/magica/work/queue-285/gate-r4-final/bus/spec-review.test.mjs.log
92309088487d79eb7650fa9478ccbac120772693a8b470b4deeae1cd1d524859 agents/magica/work/queue-285/gate-r4-final/bus/spec-socket.test.mjs.log
bc4e8e1ef8e47ec8afe23028cae658e3c977b49ca9a7e2fa4722dc44b08504c3 agents/magica/work/queue-285/gate-r4-final/bus/spec.test.mjs.log
daef5df36cc1163103a974eb6f031ef14dd6c35cb7f226954ec5ae7135769fb5 agents/magica/work/queue-285/gate-r4-final/bus/staff-request.test.mjs.log
37a19f9ce74424df735214c2f2e0b8dfe7aaf0ba0de12c54ce036443332d9c74 agents/magica/work/queue-285/gate-r4-final/bus/state.test.mjs.log
22efe49c8472a0808718fe06cf675ddf40c44f1c595f08df790d9cecc79351b4 agents/magica/work/queue-285/gate-r4-final/bus/store.test.mjs.log
9fd207dee8f33025cbcf7240eb1a7290a5415c699c746f4e5e5aae70cf03aa63 agents/magica/work/queue-285/gate-r4-final/bus/task-page.test.mjs.log
f820bd4cc7de4988811e4c2182ee3e98929f53d497723cd5a8d57ffb7ca80ef9 agents/magica/work/queue-285/gate-r4-final/bus/task-read.test.mjs.log
60895dc650cf104f7e993abd9959fbb040cf1e2bbf0f22918928d853d949acf1 agents/magica/work/queue-285/gate-r4-final/bus/tasks.test.mjs.log
3d8b2b8b79f2311728ddbc5258c243aa155d4ccfe968464cce36a619aafe823a agents/magica/work/queue-285/gate-r4-final/bus/tester-threads.test.mjs.log
f74d086924e32c5790d75dd781dda9949aea719591ba7e5c6dd2991621c53abe agents/magica/work/queue-285/gate-r4-final/bus/tester-writes.test.mjs.log
5b205cd32bbb7030f6c1c2714ba9d96c6dcc8ef63f90b2a1fb717df02cf40b69 agents/magica/work/queue-285/gate-r4-final/bus/tester.test.mjs.log
eab0913fca4df72aa7be69ec16151aa7d14b46da1c29eb814b25b819f10af57d agents/magica/work/queue-285/gate-r4-final/bus/thread-claims.test.mjs.log
96756dcb51a27b330ebe3c17f971ae4927d350b4d38a49a7992a43563cb09354 agents/magica/work/queue-285/gate-r4-final/bus/thread-migration.test.mjs.log
bee7685800c9c0b7bcb8ce114289ee041dc3d54bb54f2825c03effefa25e967c agents/magica/work/queue-285/gate-r4-final/bus/thread-shares.test.mjs.log
205e6881f1c57f5db0df0cd6602d6565fc3230b4191cd18fab2c51f01c58edf2 agents/magica/work/queue-285/gate-r4-final/bus/threads.test.mjs.log
ff12ac0ec50afe85988068d076e20ce4b567a009db1612e351853865d893a06e agents/magica/work/queue-285/gate-r4-final/bus/transport.test.mjs.log
17677a3dbea58ce66d09ecd070341c57361932b5bc3a7c7a1c6c74c4c13bf261 agents/magica/work/queue-285/gate-r4-final/bus/usage-broker.test.mjs.log
b72847be6b71ca57e1d740975709fba42ae8c8484727e70758db2b22f0df5331 agents/magica/work/queue-285/gate-r4-final/bus/usage-migration.test.mjs.log
e4da4611615f4ad14961db09ea2b8bc11cb3ea26421cab1532e43f9be324b635 agents/magica/work/queue-285/gate-r4-final/bus/usage-runtime.test.mjs.log
93e51bad9d0af852ba075e1ab1060315a8689d8e86abf817a31c5008896d9be1 agents/magica/work/queue-285/gate-r4-final/bus/usage.test.mjs.log
29722547541fed38d5d7e5ba8fed04af0c1fdfa8225987a45b82130288b0fc3d agents/magica/work/queue-285/gate-r4-final/bus/user-principal.test.mjs.log
71c75ee41d3d1c20ba7d6dc5ff116eeb41d015697a88940229f54ffa43554422 agents/magica/work/queue-285/gate-r4-final/bus/viewer.test.mjs.log
69248dd13bec6172e0131c6abb1d7b7200d987a48547fa9a32ceac94aa3d7708 agents/magica/work/queue-285/gate-r4-final/bus/web.test.mjs.log
35f9300554aa492fef841c3802556e1ac588fd2c0f54f6d03d68f27cb0c2717f agents/magica/work/queue-285/gate-r4-final/bus/workflow-roles.test.mjs.log
620869895c15a8020c5a4f02a155104652ed773787122a60e521ff06053b1aaa agents/magica/work/queue-285/gate-r4-final/business/access-levels.test.mjs.log
df5fe5da6101c683ba23da2b3c4f41df699255d8a05b04cbb31c98c9e033312d agents/magica/work/queue-285/gate-r4-final/business/access.test.mjs.log
e6581e65adaf8722e835671ea70c897528247445271c277a4d3564b42b95b3c2 agents/magica/work/queue-285/gate-r4-final/business/agent-identity.test.mjs.log
196ab38b12b821bb4fd527a7f289aee256bddfc9e2d14182d4910bed7019711c agents/magica/work/queue-285/gate-r4-final/business/assistant.test.mjs.log
c58232ff3e724a3bc3e270c301365c2f821517ac558764888a5e7eb0e03b6433 agents/magica/work/queue-285/gate-r4-final/business/business.test.mjs.log
4e522ebf2ff972aa1420458d2970172f879fc4e40e53ffb6a07b5164fcee59ff agents/magica/work/queue-285/gate-r4-final/business/case1-business-file.test.mjs.log
6c0fb5d7e0afb9f9353822d5b1e0b54d1bc6ef7f7a1a5ffbf2baf6c77dba0bf8 agents/magica/work/queue-285/gate-r4-final/business/case1-project-key.test.mjs.log
1c8ef8fdc13bf398b08958c27344f3041f8ca4d9359985851f3f00cdaf5bdac3 agents/magica/work/queue-285/gate-r4-final/business/chief-library-credentials.test.mjs.log
fecfeeb2d9fca0a483bd7f6028e54180b6dc980885c4135a8614b48855564b8a agents/magica/work/queue-285/gate-r4-final/business/chief-of-staff.test.mjs.log
052585f42b3f15e9598e06d39c86d70312df73907b17ae897972f88cbdfdd055 agents/magica/work/queue-285/gate-r4-final/business/cli.test.mjs.log
9917bafb6253ea7c69d4e877c3b44dfb41cce4d9e66e3f437885e42ab2d50afc agents/magica/work/queue-285/gate-r4-final/business/credentials.test.mjs.log
1d469db92293c9f9d614b3541de3aedc579475f6d9e63104b0d5cf6eafd142d2 agents/magica/work/queue-285/gate-r4-final/business/csuite.test.mjs.log
58317d46f309281a36345add11ab12e537d814a18ca5715d65248f33d9d921a8 agents/magica/work/queue-285/gate-r4-final/business/grant-scope.test.mjs.log
cf68073b5a586873194365b66a848d010ff2ba754de3d50ce25a470da2e34e8e agents/magica/work/queue-285/gate-r4-final/business/hard-waits.test.mjs.log
d4d8adc8a9ffeadd59ead0983f7741382dcc77afd553c847cc063956b54dee11 agents/magica/work/queue-285/gate-r4-final/business/hosts.test.mjs.log
53585e4c45ac886836d4ca443b767aabf9196dfd25e844add1e2a537755551d8 agents/magica/work/queue-285/gate-r4-final/business/instance-credential-transitions.test.mjs.log
13c489103256b59ead37c55d642a1ce096c572d3b8a885e65e29836cdd3c2586 agents/magica/work/queue-285/gate-r4-final/business/instance-settings.test.mjs.log
28043c37949a5c2dd556626aa79dd597fcf2a67c0c1789d28ea68e7227904752 agents/magica/work/queue-285/gate-r4-final/business/launch-settings.test.mjs.log
6ecac0bb273d4cacc938f71e4a6dc7faef601a6c40bb150691884a523567c103 agents/magica/work/queue-285/gate-r4-final/business/library-projects-protected.test.mjs.log
50bea34d902b5183112be0db1129c29ee57badb2a2845e50e1f6798d9724b60d agents/magica/work/queue-285/gate-r4-final/business/library-seats.test.mjs.log
36e92ba28b6801ec5078eb0cacd2966e5f4c7d0a755c3aa7f8a4a3c8bce3c1fc agents/magica/work/queue-285/gate-r4-final/business/lifecycle-settings.test.mjs.log
dc291ea0a20cc32ed43e06013ffdef621842fc1a130bda21a4d4523b82efdf85 agents/magica/work/queue-285/gate-r4-final/business/optional-tracker.test.mjs.log
447ea0dde99631f0e1c12491ec4e0e12bc152e7837e4618349dd94a5f22e92ce agents/magica/work/queue-285/gate-r4-final/business/plugin-settings.test.mjs.log
e98cdf2762716a9728315b4d8b5be06d565dc30744bf33f3a044bb35b4493565 agents/magica/work/queue-285/gate-r4-final/business/project-repo.test.mjs.log
db67d6c2aed447238a7f58a614079e01d0100700ea60b7580960bff94e194b04 agents/magica/work/queue-285/gate-r4-final/business/project.test.mjs.log
ebde91ab0bf3f4fcaa8cd54eec89d7f012269cafaf568934581b2dd85f5ac5f8 agents/magica/work/queue-285/gate-r4-final/business/record-grants.test.mjs.log
54052ad43db71f392092a824e6bc6af3fe56a9438437774dca06fdff80ca4222 agents/magica/work/queue-285/gate-r4-final/business/reply-limits.test.mjs.log
23c53f92a618f295b7ddf54d5260e8ab3423388a4e8699862d1aa8d5a980cbd1 agents/magica/work/queue-285/gate-r4-final/business/resolve.test.mjs.log
68a935ad2c287f749784aa9073cc32ec382b3e6c452cf12f8a9cb3f46f015dc3 agents/magica/work/queue-285/gate-r4-final/business/role.test.mjs.log
f740f5e590ddf6cdf3be4f8025d4880fb519f25dbaf96429fb5da6642cbf4c6a agents/magica/work/queue-285/gate-r4-final/business/spec-review-contracts.test.mjs.log
48ada3c3ab56530759610cbe96e70c362a6759058870af082a2f6c5798e9bbd0 agents/magica/work/queue-285/gate-r4-final/business/token-limit-settings.test.mjs.log
ef80f01ebf5bfc13fc98736787ac59b047ae9494a80f48ed68e53ee81fa1693c agents/magica/work/queue-285/gate-r4-final/business/vars.test.mjs.log
c54d2ea2d3a7546d2922955473421f972d96780c9310ad5b8114c223ce11f07e agents/magica/work/queue-285/gate-r4-final/business/workflow-roles.test.mjs.log
becb033f43710491064a94892fd653c6ab1e2c342cb2c0bf36199882924962fe agents/magica/work/queue-285/gate-r4-final/cli/access-boot.test.mjs.log
a8f44861b55b198217b98b87093f5c2757223da36864738f5ad1464751322237 agents/magica/work/queue-285/gate-r4-final/cli/access.test.mjs.log
dc51f9fd3c944ead18254dff3e0f5e5ba9ab91a314325c8d6027da78c225fda1 agents/magica/work/queue-285/gate-r4-final/cli/app.test.mjs.log
ba0ddc56926939ee6f6e73a421ed3674dcf8eada5535a4a207c762e2d9eb51b8 agents/magica/work/queue-285/gate-r4-final/cli/boot-status.test.mjs.log
431adc0251bf7b2d0e852b5cfbbfbe66f9b85666437ddc18255b88a60202e2bc agents/magica/work/queue-285/gate-r4-final/cli/case1-accept.test.mjs.log
3b59d8fa33afd0ba18fea055107a266f3517415df9f61f02ce9d286bbbef1558 agents/magica/work/queue-285/gate-r4-final/cli/case1-hostcheck.test.mjs.log
fa0b53fe612d2d6d8b338e090bf4fcacf324d00c791d50d6aa9cd1c1bf437e5c agents/magica/work/queue-285/gate-r4-final/cli/case2-install.test.mjs.log
af0f8d0a0621bd3eb825ba4da34f0fa77787f42c0bf7e6e2ae825b94b83cc305 agents/magica/work/queue-285/gate-r4-final/cli/case2-persona-import.test.mjs.log
a6fad64b7bad67b02329553d255e8039fec49110658c67ab87b6299915bb7a65 agents/magica/work/queue-285/gate-r4-final/cli/case2-unit.test.mjs.log
3a641d364b0c71a1374a9c2a766d22da92ab25b38bc82574e5a2e10539327a15 agents/magica/work/queue-285/gate-r4-final/cli/channel-cli.test.mjs.log
a5b80b75089a31667e980099402ccea965c171f1d9d6fe0b76c34c7618a0742c agents/magica/work/queue-285/gate-r4-final/cli/channel-recovery.test.mjs.log
1fe6caf07bc134ccb9c19d190cfa3ff968b7bfa91a4f18a30b4aa79c4af7ec28 agents/magica/work/queue-285/gate-r4-final/cli/cli.test.mjs.log
48b94802ff06a8285840e2d6b436a792b68d8f481dadd438c0db4c2dadccca7e agents/magica/work/queue-285/gate-r4-final/cli/compactions-launch.test.mjs.log
51cb308333c4c5d514bd55e5c0409561eadad81b80d936c18e8abf0ea1e87ee9 agents/magica/work/queue-285/gate-r4-final/cli/config.test.mjs.log
8c817f2a7e098a65d22aaa79e92e643a3607b1c549564f4158856c2abe5bdd2d agents/magica/work/queue-285/gate-r4-final/cli/credentials.test.mjs.log
9935dc95cea7702d5ac6f47b8936b97b78aebd1650bcd4eccad0bcf2f223c19a agents/magica/work/queue-285/gate-r4-final/cli/federation-acceptance.test.mjs.log
8709c0f22e863e70306f98f9ba86a06dbbbc6afb2a4ba5198d4e493dcfb50fdf agents/magica/work/queue-285/gate-r4-final/cli/follow.test.mjs.log
8a4b4c132a57400e77929c2147649297941b7c0547a9c5ebb9e8fd2923398a21 agents/magica/work/queue-285/gate-r4-final/cli/format.test.mjs.log
87c4affc28b430d58906c209455d1d19ad299906375a9216e42a712b042494a4 agents/magica/work/queue-285/gate-r4-final/cli/gate-lane-auth.test.mjs.log
1b0f174aa9cbd164d7c82261ed6f9fbb55befb93b9ef835d79fb738f6f5fcb50 agents/magica/work/queue-285/gate-r4-final/cli/gate-lane-fixtures.test.mjs.log
b507a2491d42f2747eafce9f190160f48652a5439efb5f75c57af300f6d424c2 agents/magica/work/queue-285/gate-r4-final/cli/gate-lane-image.test.mjs.log
dff17f05c0fbcaeceadc3e96a2bc1d4902cf36accdab678ecaa523cc4aaf76ca agents/magica/work/queue-285/gate-r4-final/cli/gate-lane-state.test.mjs.log
910e8b82d08af42f67f83410e86933faa5c6de1a2be7d216990d2c6de9675011 agents/magica/work/queue-285/gate-r4-final/cli/gate-lane.test.mjs.log
7b99dccf6adcd676467916c2e0f0578dba9ba820f44c60d1d52210bbb3d5a76f agents/magica/work/queue-285/gate-r4-final/cli/git-socket.test.mjs.log
f4a218937d6d9bc6f047369813998a3f4086e4136632f20d3040b165e5fb23a1 agents/magica/work/queue-285/gate-r4-final/cli/grants-scope.test.mjs.log
68fda47a06a071a7485bcbcd89781a562949e87e5a10c3633d4f942b184a42ff agents/magica/work/queue-285/gate-r4-final/cli/grants.test.mjs.log
83399a560afeafe70432a8c82eeccb4d6a59be9ef640f695331eb8ad083ac9aa agents/magica/work/queue-285/gate-r4-final/cli/host.test.mjs.log
acf58453986d413a32b56232d897808073670cec3b71429f821b50462987ac54 agents/magica/work/queue-285/gate-r4-final/cli/hosts.test.mjs.log
5a9f986ccf344157ab7ab15b93455dc27f221930b83ae6ca3e0feb6a67e33555 agents/magica/work/queue-285/gate-r4-final/cli/idle-stop-race.test.mjs.log
419dd29b40b7c66241b24de42d4376fa34d8f3ad108005a76c8aca3dd48573ce agents/magica/work/queue-285/gate-r4-final/cli/instances.test.mjs.log
e807633b3729eb1afad74b19d20f3636fea696c88451707ce7f83fcdc6e812f6 agents/magica/work/queue-285/gate-r4-final/cli/launch-account.test.mjs.log
39cbdf7c125da38588c99844f24db509e4efe6735689d25cc5f519ee7edfb10c agents/magica/work/queue-285/gate-r4-final/cli/launch-limit-checks.test.mjs.log
7d4e10896e0e2c5a15b49bcf9b29fbdfbda3ffbc990b3341bc427a2cef74a7ff agents/magica/work/queue-285/gate-r4-final/cli/launch-limits.test.mjs.log
806e6c2e07046de60c4c14f09b1cf552e3f7b68e62eed4645bc0687b5333aa45 agents/magica/work/queue-285/gate-r4-final/cli/launch-routes.test.mjs.log
f26be989d4aa677fe2785e32b6eef963da2d03653d09609a7e6e6dfe2d30ce37 agents/magica/work/queue-285/gate-r4-final/cli/launcher.test.mjs.log
70de08df057a73660ec03a82be637288e715857386b3e82ab5181bf0808c2d1f agents/magica/work/queue-285/gate-r4-final/cli/lifecycle.test.mjs.log
e1c5ac71b09f8fcc89702257290fbbdaa1f511d417bad8cc3e865bf8426c4173 agents/magica/work/queue-285/gate-r4-final/cli/limits-tokens.test.mjs.log
7b89142839389e453ec5950a8e853db2ce861e01a8317fa4d348b32d49e049bc agents/magica/work/queue-285/gate-r4-final/cli/limits.test.mjs.log
87449e4403c6df92693fc24c700cd3dc8b9a15308d655bdf90cb8276cd426147 agents/magica/work/queue-285/gate-r4-final/cli/mark-read.test.mjs.log
ee42e596fe833d8ceaa429ca4c7f66c4f3a735befe4340fcfd961a4f4cf9113b agents/magica/work/queue-285/gate-r4-final/cli/names.test.mjs.log
19394c29f2efcc0811a0bb3f0664da04c350c1941241f79b3670cf50ca23ff7c agents/magica/work/queue-285/gate-r4-final/cli/notifier.test.mjs.log
26c65196b3fd9124dd87cc4fb74477dcddccd416c3fc60b1f3c191e3115dbb54 agents/magica/work/queue-285/gate-r4-final/cli/optional-tracker.test.mjs.log
d9a54281386e2e4b0adba8a74c06125726092743be7bb3f37d476f88c026170e agents/magica/work/queue-285/gate-r4-final/cli/other-tree.test.mjs.log
2dc5770feac41a86274226b047d3da8634d36f9417335aff149135297f7b83d8 agents/magica/work/queue-285/gate-r4-final/cli/processing-cli.test.mjs.log
519c363c76d8cb9c98bb1a6fbb1ca6edf7d7c1ce6c2640d3ec52489c5d573a15 agents/magica/work/queue-285/gate-r4-final/cli/project-name-repo.test.mjs.log
6a88d3f9ddbb9dee0a65cbebc5295e4296e415496aa8ae27f095cf239bcffbb5 agents/magica/work/queue-285/gate-r4-final/cli/project.test.mjs.log
cc4a46df4c3c24f1eea3e0aeab63263aec72dd94d0b87f81bd7bdd5e7c27ecf8 agents/magica/work/queue-285/gate-r4-final/cli/publish-socket.test.mjs.log
0d94b050bd04cd3e88053b771d882075ba373f14f321502c5d214d59e9bb7fb7 agents/magica/work/queue-285/gate-r4-final/cli/reply-limits.test.mjs.log
83a9cfa63d47a61092a76a832e2053b2343187105701aa96d38b9ce919a43565 agents/magica/work/queue-285/gate-r4-final/cli/revoke-window.test.mjs.log
4b59c7ff132d30a757df6fe84cab072b98cc92fbab156841ec148e05631ff41c agents/magica/work/queue-285/gate-r4-final/cli/session-clear.test.mjs.log
75e9f5113a2c04c2008f5f289d51fd234b18683c66a1407381fd0d56253a1aa2 agents/magica/work/queue-285/gate-r4-final/cli/session-cli.test.mjs.log
820ba254e7d78a6f67123694bbf05fb5e5442339e981ef9fa13c95b83a31e761 agents/magica/work/queue-285/gate-r4-final/cli/session-launch.test.mjs.log
d794a7b383bab3c5793558788f3ed45a9e3d39bf12de1dbe956b218f63566f22 agents/magica/work/queue-285/gate-r4-final/cli/stack-copy.test.mjs.log
69ff6bd9eac3e060cfb345f4f98aecca33210d3a1cf51818e9e09743c9593603 agents/magica/work/queue-285/gate-r4-final/cli/stack-instances.test.mjs.log
ac7344e4dbc442a7209a040eea64f0961c0a916a0ed7a0383779799ae45541e5 agents/magica/work/queue-285/gate-r4-final/cli/stack-release-external.test.mjs.log
1225f15558443da6e92667aca271d53aaea7a68a92dc7b3a5f662eba756ea276 agents/magica/work/queue-285/gate-r4-final/cli/stack-release.test.mjs.log
b18c0cde266ec753e8a7335761a40e11b6ec0afa348729a253c0b55600ce886d agents/magica/work/queue-285/gate-r4-final/cli/stack-upgrade.test.mjs.log
6c6add4badd13339057babb32f4ae31659fe4bfb876459a660694899700e671b agents/magica/work/queue-285/gate-r4-final/cli/tester-http.test.mjs.log
b7f43878bdd8e2d1b8075ba16232d3c05dedad546e0182491d27df3fb19ca652 agents/magica/work/queue-285/gate-r4-final/cli/tester-reads.test.mjs.log
441db39af976143186c138bd6fc9bcf9b453206639e99810577016010998e713 agents/magica/work/queue-285/gate-r4-final/cli/tester-threads.test.mjs.log
3fcb791161838cb7bac2b044f994c658c46cded236a6be86b5636a3b7e813abe agents/magica/work/queue-285/gate-r4-final/cli/tester.test.mjs.log
eba3c12680d187ffb4d7419c88bcbb84b60b6245d48dbb22425b0085b11180c7 agents/magica/work/queue-285/gate-r4-final/cli/thread-cli.test.mjs.log
ae372ffda85e2c3b3b32d4d5547ff3321f0123a358daab2fc4e03c6b4ef134e3 agents/magica/work/queue-285/gate-r4-final/cli/thread-launch.test.mjs.log
3f57a6a8e64244f4bd6f58fd4ef6800b1d39bd3c942fbe24b9a6144cadcb9ad1 agents/magica/work/queue-285/gate-r4-final/cli/thread-revoke.test.mjs.log
122239cad3f48737102c3a7980eafc9e6aef6aa33670c0ec54fe0838d006f13f agents/magica/work/queue-285/gate-r4-final/cli/trackers-boot.test.mjs.log
c786a1c2e8aac59bc9e3d47986f4490ea70397ac72d2c9d92e2647da84079900 agents/magica/work/queue-285/gate-r4-final/cli/transport.test.mjs.log
79e04b0aad591a3c5146d7593a5a080473b34748b3b99713aad01f35f7e9e477 agents/magica/work/queue-285/gate-r4-final/cli/usage.test.mjs.log
431c95ddbe51185e8565b56384ff35f229939c96cf67aaf05203c1c4c76434b4 agents/magica/work/queue-285/gate-r4-final/cli/verbs.test.mjs.log
1099866589d1ec26e1da1587dd3bc661d6af83b4b8027d8b56bb80cdd325edbc agents/magica/work/queue-285/gate-r4-final/harness/bundle.test.mjs.log
efaa20698497cc91ccbf586b1fc8e0090cc67258c2cb8652638f0d91acb636bd agents/magica/work/queue-285/gate-r4-final/harness/citation-runner.test.mjs.log
bf6e527228f0a7b9acd8499a50dd02bea11e4e563690cb377a38e7ef6526b42d agents/magica/work/queue-285/gate-r4-final/harness/claude-gate.test.mjs.log
bc07e35fb042ca1039d18fd5421c6bdcd69a29761bb39869d037e8071181a29f agents/magica/work/queue-285/gate-r4-final/harness/claude-session.test.mjs.log
9526c194bf46c3917785664728355f18f493040ad3dc120d0d84539e03188ef1 agents/magica/work/queue-285/gate-r4-final/harness/creative.test.mjs.log
ba133f48d2e7425769db81de2532c1d5496d68968dba97c75444769b81426fbf agents/magica/work/queue-285/gate-r4-final/harness/gate.test.mjs.log
c8a85d1f441f5b0d9d04126803d69e76187cfece3ab057203da82c59043da6e5 agents/magica/work/queue-285/gate-r4-final/harness/git-tools.test.mjs.log
8aa26d6e32a23e199be1255427edd0d1e66119add034348a56b80c983d4c72e9 agents/magica/work/queue-285/gate-r4-final/harness/mcp-server.test.mjs.log
9f94d44e5ea4b2571de7b741b05693ef55138420a3247933aa92741612faa601 agents/magica/work/queue-285/gate-r4-final/harness/pi-session.test.mjs.log
aa917f9598ed6ff1823e8fad12ca3a363b725f061d7127da84c35b359b9e1ee3 agents/magica/work/queue-285/gate-r4-final/harness/raise-domain.test.mjs.log
5956d58f54a569aeedaaf3281a122c77fab8524b41a07e8f4592b23c7d66bcbd agents/magica/work/queue-285/gate-r4-final/harness/runner.test.mjs.log
61a88a974a76ff283fb57d7d3ed97f96fe6a522330e21dfa808daa41ed1f9e3e agents/magica/work/queue-285/gate-r4-final/harness/skills.test.mjs.log
60b4a3090e0ef98c0d85ee0e9ce7c47ffe9a952d1b4d1ba11ce1ca4a082616ac agents/magica/work/queue-285/gate-r4-final/harness/spec-tools.test.mjs.log
1b4c3faa2035994bae0921726cea3c0a78ba92a541803bc018def8166a5f590a agents/magica/work/queue-285/gate-r4-final/harness/tools.test.mjs.log
8f964a7f391cc35a4308ed3286487f93c2a08c5388b3e5e89e59d65698d896ce agents/magica/work/queue-285/gate-r4-final/mutant-summary.log
2cdbd45225f70cc9814535a0609f22f945d089ab243cbf9ba1925b9c5e775ac4 agents/magica/work/queue-285/gate-r4-final/mutants/M1.log
c06365b143f58f59023fe12e48d1baa1f264bc8bfa5d7944244c72e55d9eb749 agents/magica/work/queue-285/gate-r4-final/mutants/M1.patch
5f5358727a146e1f7ffadd8fbf3996b62055f07a7b892dbb5c85e46d3e8bb5ab agents/magica/work/queue-285/gate-r4-final/mutants/M1.txt
6cd98e55d3af97b29fb4f0c1f480d023a6a3d22afe33033659cdff4fb81a5ed9 agents/magica/work/queue-285/gate-r4-final/mutants/M10-case1.log
ac8fa83440c050a33448563fa62c8141b4186a99b98804a8fcb4bd82f2d4c0b1 agents/magica/work/queue-285/gate-r4-final/mutants/M10-case1.patch
219c39c3f32c50c267c5ebb91c53eb1d604bee1cac2c1dcef7d795eaf72dd5e7 agents/magica/work/queue-285/gate-r4-final/mutants/M10-case1.txt
df30700c70733958068673649caf9ba1bd48886b3d27408e0b4cbcb66958fb16 agents/magica/work/queue-285/gate-r4-final/mutants/M10-new.log
ac8fa83440c050a33448563fa62c8141b4186a99b98804a8fcb4bd82f2d4c0b1 agents/magica/work/queue-285/gate-r4-final/mutants/M10-new.patch
8c82896f11c9a65670cb4d74e3ff4c0dcd08707d8ad12f70c78b55bd15986271 agents/magica/work/queue-285/gate-r4-final/mutants/M10-new.txt
9dfb8cc7f364b43154ec605c04e6087b44cc1eaa80f3b5e6830120bdad08038f agents/magica/work/queue-285/gate-r4-final/mutants/M11.log
e45b815fcfb78ed9626240fe05bcb5f5f4ddaf6ed49c30c7194682d915e45fb3 agents/magica/work/queue-285/gate-r4-final/mutants/M11.patch
c5c94d557c3de0174a4f349ce439ecb71f33af192f6964c1a46da2d8fc8d4ac3 agents/magica/work/queue-285/gate-r4-final/mutants/M11.txt
013a7cb8fd31d4a83a08bf166f0a9fb70d871597aad0074f9ffcea01ec9447fa agents/magica/work/queue-285/gate-r4-final/mutants/M12.log
0817365531b4c4128e4d99517714010a941df2e3ab018536c6769f4b7e116353 agents/magica/work/queue-285/gate-r4-final/mutants/M12.patch
8c0ffeee418bbd0d5a065304cab7f0674c375391d36ed292f3970f3f839a735d agents/magica/work/queue-285/gate-r4-final/mutants/M12.txt
c29e10e0ef6b3c59ded6ce2982f2cf6452fed5f9b859943cf8053da8fb108ec7 agents/magica/work/queue-285/gate-r4-final/mutants/M13.log
a9426d7e2460b3a7af1b77065b9ad1694f4dab600584f6a959b707af8f6d7eee agents/magica/work/queue-285/gate-r4-final/mutants/M13.patch
03ba5e226632fa4d70d6a3146f6c3155e44b8d593f15e666241930c9571b4803 agents/magica/work/queue-285/gate-r4-final/mutants/M13.txt
7de7822666e9c683b52cbace96eb2534d38b9871648c9f043bccab97b6d902c9 agents/magica/work/queue-285/gate-r4-final/mutants/M14.log
bbee0309658083e837aed9ac867ebd836971ef18a5c98ed4d0930edfd3335161 agents/magica/work/queue-285/gate-r4-final/mutants/M14.patch
27bd665683c1406683ac2f3cbcdf21b000f33d86152fcc66a346aacf284ce336 agents/magica/work/queue-285/gate-r4-final/mutants/M14.txt
f3dc1ae22e8fa23e25945917750ddf44e3b8ef4fad8859860f97f3b41cf6dcb8 agents/magica/work/queue-285/gate-r4-final/mutants/M15.log
811e583605b42ab01f4cffe61ba16dcc9c40947d3ad3839e8ea084a7158e784d agents/magica/work/queue-285/gate-r4-final/mutants/M15.patch
ca02d178a90f9c500b448bc5568d68b272dcdcfe36c92958f2e43a5914a2ec78 agents/magica/work/queue-285/gate-r4-final/mutants/M15.txt
91647571511bb1a6b956778d92ae15a4f6ec6001d9a2a7da9303688875ee3fcb agents/magica/work/queue-285/gate-r4-final/mutants/M2.log
80804bf2a86cf53d134619c3e28f5112ee43aea967d26404dff0434565ae9388 agents/magica/work/queue-285/gate-r4-final/mutants/M2.patch
0d521a2330b052424b3949022186abfa306cbece589713e83ee30ad3b1dfe9e9 agents/magica/work/queue-285/gate-r4-final/mutants/M2.txt
811084a55d331889242df9ad420f5214a6c8c62a867cf76c38ee8d0496174b22 agents/magica/work/queue-285/gate-r4-final/mutants/M3.log
7fbcab49e31e9cdf07e3147f1d8c99bacbb71d772459641b969bd6e7ead97d0f agents/magica/work/queue-285/gate-r4-final/mutants/M3.patch
4eef66484ca9e169aa56eb20a1127008b4d272e046a408601ee6a55dd7f0047f agents/magica/work/queue-285/gate-r4-final/mutants/M3.txt
2daa2af23e370444f1b2ca5df5ad4dcfdddc7e7cc6360d9f531c13927073010b agents/magica/work/queue-285/gate-r4-final/mutants/M4.log
3030c1bc2499936ee327f3bddb529327c9524f814ef3ad5c85e8fb1e4ac40fcf agents/magica/work/queue-285/gate-r4-final/mutants/M4.patch
727c31bca2ee65e8fe80ed7e1341446edbd77d1230f5bc74117736f36a167b15 agents/magica/work/queue-285/gate-r4-final/mutants/M4.txt
d657773844006bb8b8204ec5efc51f9f555b9ec69c3f92acd5930604862a0cd0 agents/magica/work/queue-285/gate-r4-final/mutants/M5.log
265062ec48fc6554cc7691f2518177d636e4311f09230407f472933e4e0f9a6a agents/magica/work/queue-285/gate-r4-final/mutants/M5.patch
dabd9ffc237449869c9ea27cd76cd6e868c2c256f44e162f0a51a465a9e6aaeb agents/magica/work/queue-285/gate-r4-final/mutants/M5.txt
830fde5eaff59ffac6df477998bedeb70b0f9c853c26e038995aaac1028d95e5 agents/magica/work/queue-285/gate-r4-final/mutants/M6.log
e6f618d7ccee08aef6301cab28136b57f208be78915624b90b1bc6461974c9e9 agents/magica/work/queue-285/gate-r4-final/mutants/M6.patch
cd6241193d1ecbb249380de7a0d0c78f2b35ee41e38b228110a82d52506d623a agents/magica/work/queue-285/gate-r4-final/mutants/M6.txt
43a43a458e3d0d2d938d9bc46aaea21e6f03ef423e82b7fa6f122c0f740df421 agents/magica/work/queue-285/gate-r4-final/mutants/M9.log
e4ee228f2cca5129b176dcc469c8f5f12e015be0638b6c551691fe42382ef9ba agents/magica/work/queue-285/gate-r4-final/mutants/M9.patch
84275b1154923e3a974c058559e4e70f8454dbcd10bf9af444e66bb311aeca16 agents/magica/work/queue-285/gate-r4-final/mutants/M9.txt
8dc64b303566c560d4ceff68c2102cfd7f2d629520d51a3a4d7225c40b727f8b agents/magica/work/queue-285/gate-r4-final/npm-root.log
5e2ca9088e90b2c747857ece26227b7eae41e7a49f763609ffe0885a36af2d56 agents/magica/work/queue-285/gate-r4-final/npm-webui.log
6066086769f37f6093587cf5be3699ad5e1076038070afd582309051cca4f16a agents/magica/work/queue-285/gate-r4-final/plugins/channel.test.mjs.log
76e8f0f18076d40e74af077bcee9fa34fd5045b662dd4bbb23a05bf33cbb73e6 agents/magica/work/queue-285/gate-r4-final/plugins/daily-quota.test.mjs.log
56b49f6d2d39fba29692f5eab51d63c8d192887d5b096435d765cf4e52f07b38 agents/magica/work/queue-285/gate-r4-final/plugins/harness-compactions.test.mjs.log
883ccad3e0f28d2483f0eb6392777d46029b94fed5f992cfd605b0648d81bcce agents/magica/work/queue-285/gate-r4-final/plugins/harness.test.mjs.log
29d9184238c1e5a95646338a2cdd29609ffb0861a3e03444146cff5334ad7469 agents/magica/work/queue-285/gate-r4-final/plugins/kinds.test.mjs.log
56fcdbc046af0d1dba7dcfd36024d051049b14dc3bba55c52fa194777c081e51 agents/magica/work/queue-285/gate-r4-final/plugins/loader.test.mjs.log
80723fd1e129fe1a795b7a60e8a521a24d8d8aeca8f9dd2b1afeef988102276e agents/magica/work/queue-285/gate-r4-final/plugins/searxng.test.mjs.log
5eba932624dd7285047194909277d5cb3e487e1f9de565ae08a9083bc29f515f agents/magica/work/queue-285/gate-r4-final/plugins/token-limit.test.mjs.log
805a3591b89140435dfb4eb9d7490c01a8b1e2b3a99fe393e89287ce8fe94d26 agents/magica/work/queue-285/gate-r4-final/plugins/transcript.test.mjs.log
3610c16d6d26faa497b24cba4fbd535cff8e2864656afceee294ce3bfe0761cd agents/magica/work/queue-285/gate-r4-final/restored-controls.log
b308a8a3d4ea7ce594a03fd3c677ea967ad874730de3cdfb469d2054c98c400f agents/magica/work/queue-285/gate-r4-final/run-mutants.py
86e0e865eeeac93b8aa04a07f631419d4269a60e959b2f398b032f80a4a09ab2 agents/magica/work/queue-285/gate-r4-final/run-suites.py
40b1f951561ef851e45d014e19726db2a195f6c90b127c7ca2069ecc8c575aa4 agents/magica/work/queue-285/gate-r4-final/runs.txt
f91fc95a173339137f981e24fbf630acfde957e32c3cd71e28304532083c6a77 agents/magica/work/queue-285/gate-r4-final/scripts/test-auth.sh.log
25579ce07a27584d2b55fe58031f2527b10e32a4e6106c70e909064315cc70b2 agents/magica/work/queue-285/gate-r4-final/scripts/test-conductor.sh.log
92ea8ce5e66d892fefacc76b87d140bcfb8c5a51dc77bdf4a47a6213ac5d2898 agents/magica/work/queue-285/gate-r4-final/scripts/test-config.sh.log
9b482b7a3f0672c872923c06e71d5a88ff085a08170905a6cabe1d2b6fc283b6 agents/magica/work/queue-285/gate-r4-final/scripts/test-discord.sh.log
f4c406d220e1901993bca216afe7ceef8f20e44532f70cd91de3f2dea26299ec agents/magica/work/queue-285/gate-r4-final/scripts/test-extension-package.sh.log
81e87833fece95a18e47a956b4373a36a34efffe3a0a5d84d0b5dba3b933cad2 agents/magica/work/queue-285/gate-r4-final/scripts/test-federation-acceptance.sh.log
83dfaa21c4e4ad941088efab3f69e87ebd2f6bd3cc72ede938e21dc06da8a34f agents/magica/work/queue-285/gate-r4-final/scripts/test-foundation.sh.log
3e2f8024027592e77790db2bbe039803060915ebf37c7b67f04071a7e83d20dc agents/magica/work/queue-285/gate-r4-final/scripts/test-land-work.sh.log
5d9a170308927264d212e3dd00e87463a21d55811cf9b4cb51dce74d6a10fea5 agents/magica/work/queue-285/gate-r4-final/scripts/test-push-check.sh.log
e95247a7751aa13b204ef92deaf4d51e3ece71671296c045a50efac53088f99e agents/magica/work/queue-285/gate-r4-final/scripts/test-queue.sh.log
9f9dd11e2631a24ad55aaf7becc61965c592b00da08a4e72b98e0384d3a13ec7 agents/magica/work/queue-285/gate-r4-final/scripts/test-release.sh.log
a065947f07d70a4721b423da597968630bc8ec1659db14681af42bb3f974077d agents/magica/work/queue-285/gate-r4-final/scripts/test-task.sh.log
88832cfec4a9f6bb445c59e1f8e6ceb477ca14fa113571502ac9ed3850f5f660 agents/magica/work/queue-285/gate-r4-final/tmpdir.txt
32f1ff0e42fffb8bd3fc0c73bd8c365bde1a890bcdcae57eacecbe1fa08b026b agents/magica/work/queue-285/gate-r4-final/webui/agents-browser.test.mjs.log
64e08067a2f8e963f54aef52f6167ac6b643eeec4028780a4d609a6e8bae1ead agents/magica/work/queue-285/gate-r4-final/webui/agents.test.mjs.log
464cb5cfbf5efa755e2d1a8d573db2cfb5a9dfcf8191ee76afa835e183f4d3fa agents/magica/work/queue-285/gate-r4-final/webui/assistant.test.mjs.log
5fbe842e87878c37c382ae453db6b85ea98569a505b47db119f493c05b68ab47 agents/magica/work/queue-285/gate-r4-final/webui/board-held.test.mjs.log
c7aa6a0cbf4a33f33686b423a37ba9afe6f0508172f40f93600d0b1d357cfc83 agents/magica/work/queue-285/gate-r4-final/webui/browser-edge.test.mjs.log
0c0d311724c660f31a69ddc885da0517a83129d9efa1011bbb50deaab02735e6 agents/magica/work/queue-285/gate-r4-final/webui/browser.test.mjs.log
19672eaffd1fa885c26d68798e121e2a4c53bd21f4a767bd22b3002c50cd59fb agents/magica/work/queue-285/gate-r4-final/webui/bus-browser.test.mjs.log
89bee508ee6dffbe2e3e6b507aaa75f0a5975d2a08b335da53b13d7ab8622e35 agents/magica/work/queue-285/gate-r4-final/webui/bus.test.mjs.log
5353c3541f3e073d70afe40833c63f479ee45beee48a3fa7f275025d50e4de7f agents/magica/work/queue-285/gate-r4-final/webui/channel-chat.test.mjs.log
238296c7924f3b9cf7a718f7ee40f7f378cdc69e042adf9cf2f155b42f762ece agents/magica/work/queue-285/gate-r4-final/webui/chat-browser.test.mjs.log
228ea77f10ef503b3bf95c24dc7425616553172276d548d2d94f29c4088e7c73 agents/magica/work/queue-285/gate-r4-final/webui/chat-instances.test.mjs.log
fd3d6672ca1c99e10d98305022079455f47d057e827305da0cf1275373383fc8 agents/magica/work/queue-285/gate-r4-final/webui/chat-sessions-access.test.mjs.log
1aec67de65971400ee06f8bbcd9101ee771608ad83e08fb33113f32921be5c8e agents/magica/work/queue-285/gate-r4-final/webui/chat.test.mjs.log
a7ceea5464e18e88525b28c7eb50163ba4c80dcd87ddbff843c1ecfbc659b408 agents/magica/work/queue-285/gate-r4-final/webui/conversation.test.mjs.log
01b3b972d2d301b945fbe63ca2e42507a6104be127edfaf367a2b83b98fd133a agents/magica/work/queue-285/gate-r4-final/webui/decide-browser.test.mjs.log
444d866c54d18094a7cd31be5473f3c92b9633ee4454a14ba474f5125a2a42e2 agents/magica/work/queue-285/gate-r4-final/webui/decide-sso.test.mjs.log
792e0573e8ed80e8ce651614502b4c8228eb94c64167258b71c4ec54e4915902 agents/magica/work/queue-285/gate-r4-final/webui/decision-http.test.mjs.log
f99fc0415116f7b0826e0785e97cffa3f2639e0ad98584cf8e599f2b805fe3eb agents/magica/work/queue-285/gate-r4-final/webui/discord.test.mjs.log
c82fc4cf34d71418900d0b8d35338dc8d57a22ddcb419faac37f8043f0029027 agents/magica/work/queue-285/gate-r4-final/webui/docs-browser.test.mjs.log
5a633d2a0507300888b9995d59ccb0147593632d9071d3856d6508ec139cb789 agents/magica/work/queue-285/gate-r4-final/webui/editor-browser.test.mjs.log
3cb0c04cfde5426bd303d2354bfe5126ea97a362abec1006c6f23551e00038fe agents/magica/work/queue-285/gate-r4-final/webui/editor-provenance.test.mjs.log
521ebe746943dc0109b68931c2627571416160dce1230e0245de4d8aac209d98 agents/magica/work/queue-285/gate-r4-final/webui/editor.test.mjs.log
1fdefc5dbe76d2bce7acacc599e5f7ee4100223ab4e7eedd755e6fef97244ac8 agents/magica/work/queue-285/gate-r4-final/webui/granted-user.test.mjs.log
b760f5c5ba25f0eaab9501a9d8debc542f699c7c4010e0e14a9108958cdc04a8 agents/magica/work/queue-285/gate-r4-final/webui/history-return-flow.test.mjs.log
1956a9a853510ebb09213e3d4d55c40daee0ca34fdcba94f5dfa5404a2eb6227 agents/magica/work/queue-285/gate-r4-final/webui/instances-browser.test.mjs.log
5b2f512d0f4bf5e17adcee745c23d1021dd7c4869789299d4ab52fa6c9ed8298 agents/magica/work/queue-285/gate-r4-final/webui/instances.test.mjs.log
55e3694e3b59f4320f37d53aaedb66b2e938dc07e6808ac0988106c399647bbf agents/magica/work/queue-285/gate-r4-final/webui/library-cli.test.mjs.log
cc94f4ed5249f82a6232cf954e2dae7becd2ddc31a26d1c295f7f5e6590ffd5c agents/magica/work/queue-285/gate-r4-final/webui/library-status.test.mjs.log
caa933e4d7939d3caa7de1e0f80614de9f7be92647375e397b54fb4bbcad6fdb agents/magica/work/queue-285/gate-r4-final/webui/limits-browser.test.mjs.log
a896f5c083e56928b99af933e572b55487b8c7d4f9a2028135bcc2098376f3d6 agents/magica/work/queue-285/gate-r4-final/webui/limits-route.test.mjs.log
78cc45f8fc5023e6582f9ac9aa22cfaa9bcb6d76fc86d0f0bbf0df438c60c652 agents/magica/work/queue-285/gate-r4-final/webui/markdown-preview.test.mjs.log
576ccf1c467937853bd0b666af20957b7d5424c07cefbf49e3e3b4d9e4b696ce agents/magica/work/queue-285/gate-r4-final/webui/messages.test.mjs.log
662f18ee5e668b603a7699ccd53a3de92ed6f195e7cc620277e80b97e8bbfe36 agents/magica/work/queue-285/gate-r4-final/webui/pinned-copy.test.mjs.log
722ff7f74f394a3acf7735fe6703fe7b2f8dca9d8ce3969f3a3061d3c66d36ba agents/magica/work/queue-285/gate-r4-final/webui/preview.test.mjs.log
de9952d211f777cc66aab61eff74ed6dcf7c6a5b4090813a32bd61165a398dab agents/magica/work/queue-285/gate-r4-final/webui/processing-browser.test.mjs.log
0b8d64eb89a1f732cea19a81ae69feb2d8e50b77e42271000c5b268f798933aa agents/magica/work/queue-285/gate-r4-final/webui/processing-ui.test.mjs.log
a260f098c5fa7ca1b1557889742a70fc085237dc26623e9552114d3dcbd57c27 agents/magica/work/queue-285/gate-r4-final/webui/processing.test.mjs.log
26d05e87bebdaf044c97f50bd9367182664fa9249ea4b2174b212941d497f08c agents/magica/work/queue-285/gate-r4-final/webui/project-file.test.mjs.log
e328e56f0e5463cd6548abab7561697a5f2ed15ccb101aa062d8de5344da8174 agents/magica/work/queue-285/gate-r4-final/webui/project-name-repo.test.mjs.log
fbcc7c0a98cda711ae1600cb076990f8ba1f60e47aaa5001e8a417eadf1bc3d7 agents/magica/work/queue-285/gate-r4-final/webui/proof-cli.test.mjs.log
45935f8c68faf691de7e127fa45bb4e777068031ec0c3327e8d3b67e50087f6d agents/magica/work/queue-285/gate-r4-final/webui/proof.test.mjs.log
6155351033101ad33922a213720290a1d00eb1edeb63963fd6a7840b0e2b1c1f agents/magica/work/queue-285/gate-r4-final/webui/reads.test.mjs.log
f5accc684809da649359a26acf7a9cb555874b46ddf7c6df921365764b08b6e8 agents/magica/work/queue-285/gate-r4-final/webui/relaunch.test.mjs.log
7b3c389e64cfc5cabad106ffa328944c4ebfaf3b92982512a60f7032f8146a23 agents/magica/work/queue-285/gate-r4-final/webui/return-flow.test.mjs.log
4cb0df5263ff01160eceb3491dbc911ca99221db6fb7fab1b6276fd04eac2a83 agents/magica/work/queue-285/gate-r4-final/webui/routes-browser.test.mjs.log
67470a61a57567bee2d12cdf75ed8a33d4ae39b407a67e2c79909f9ef4561220 agents/magica/work/queue-285/gate-r4-final/webui/routes.test.mjs.log
ef6bcdc1c45be394ebfb93313339a001ff99b2be16f3d2408e454031cb3a4529 agents/magica/work/queue-285/gate-r4-final/webui/send-browser.test.mjs.log
1d638b9c08aea844a62f112ab791097286574d0f249dfd4157d363483d92efa6 agents/magica/work/queue-285/gate-r4-final/webui/send.test.mjs.log
c2f493dc4905153a63df26e4fd76cde7ac139ef7e39370743b55bd5f1ccf4ab1 agents/magica/work/queue-285/gate-r4-final/webui/serve.test.mjs.log
61b5164cb80c00d9ff71b80ef01f96c291bfb1740e168cdea32ca63f4b218548 agents/magica/work/queue-285/gate-r4-final/webui/service.test.mjs.log
099cedbcaf1c4f6cb3a0024aedb184236d2a00c2af7c55b5d67be0d0bf1afd1e agents/magica/work/queue-285/gate-r4-final/webui/settings-form.test.mjs.log
181b7fc3a479d0abd7c3114a4695faf11e5145e523decd644ea6215265ff06d0 agents/magica/work/queue-285/gate-r4-final/webui/settings-write.test.mjs.log
340079e82aeb2d9d0ee0ff6463f0ae47d4ed707c5e9d9a2e592cd4327e8ea439 agents/magica/work/queue-285/gate-r4-final/webui/shell.test.mjs.log
53b064bc3b3c017970e0c16a3a1da66266cbfed1f792489fafb7e95af1655f77 agents/magica/work/queue-285/gate-r4-final/webui/sso-browser.test.mjs.log
146d1bf3b80b263125051882ea6ebeb3247c8f4fab8bb473179242b79af123e4 agents/magica/work/queue-285/gate-r4-final/webui/sso.test.mjs.log
1ce10b90a902b8cf84dd77a59c2875ba6b94c4a34729937f76e51ad8b44345b1 agents/magica/work/queue-285/gate-r4-final/webui/tester-browser.test.mjs.log
594a5bf5a631c354e59e3744669511fc7a2e693cdd28b186bba1658fa67eaf79 agents/magica/work/queue-285/gate-r4-final/webui/tester-cli.test.mjs.log
33fb281013c2ac16882786c903248593e0ffd487877d652c68875061fc33a347 agents/magica/work/queue-285/gate-r4-final/webui/tester-listener.test.mjs.log
526db1ce167e0f82e612a2d78be459d4cf5316a9b7079720ab55244ebb533bb1 agents/magica/work/queue-285/gate-r4-final/webui/tester-socket.test.mjs.log
f55b3f91f0c6dca56ea7074cb2554d6faa3f7e06d9c119f0bcc9d05c92afa4df agents/magica/work/queue-285/gate-r4-final/webui/thread-claims-browser.test.mjs.log
1bcdb62e5eb3bb51c1b27ecb7fe93ee58b74c67a054e758dc2da296e93085806 agents/magica/work/queue-285/gate-r4-final/webui/thread-claims.test.mjs.log
624f64c743c4aca0a4db544471feb9b314fa3a49f8afc1749ea2dd025f58109b agents/magica/work/queue-285/gate-r4-final/webui/thread-sharing.test.mjs.log
59c15497d79daca89e120425581bc8ea54d5986c15013e9cd314fca89148d95b agents/magica/work/queue-285/gate-r4-final/webui/usage-browser.test.mjs.log
c2780f148ebda3b352150a67c3730ab0baa1a0ffdfb73ea639d705772fceaef1 agents/magica/work/queue-285/gate-r4-final/webui/usage.test.mjs.log
3291a2f883c5aeefabf115a44d07c052e126bbb9499b2b41960f4a6cb8510f26 agents/magica/work/queue-285/gate-r4-final/webui/user-option-swap.test.mjs.log
3d85724ae7651b9ff539d8e3c25a7cfc60eaf2e5a56582b682e87f4668f16da2 agents/magica/work/queue-285/gate-r4-final/webui/views.test.mjs.log
2301247e29329c02a608b881b572c254c2cd514ed98bc8a04c2a329c92c4520a agents/magica/work/queue-285/gate-r4/bus/access-revoke.test.mjs.log
4a43dcba0cdf84153d46825f480e80eb863288a55797b29bd4629d59dd99d788 agents/magica/work/queue-285/gate-r4/bus/account-migration.test.mjs.log
ce44bf644471d547cd0fc180eeeb7c9310ca78151c29f6193c2229eee10c23f1 agents/magica/work/queue-285/gate-r4/bus/address.test.mjs.log
344c03cfe33d7bdb79c8019ad9fb3d23eb31a80547ed056a9d026d19f7722162 agents/magica/work/queue-285/gate-r4/bus/agents.test.mjs.log
2288290e04514e4a5540d462f4bac1ac1c1d0b9db3c54c143272412d946b5d9d agents/magica/work/queue-285/gate-r4/bus/approval-binding.test.mjs.log
0ead07d6718b82669664a68a6d7883e2037c1f8bcf139ab6e183e329f9b117a0 agents/magica/work/queue-285/gate-r4/bus/broker.test.mjs.log
f322dc4850567874dfce72d67cfeac8aff2e7bff9360ceb44bc8206e90655fd6 agents/magica/work/queue-285/gate-r4/bus/business.test.mjs.log
b32faa27170cd78866e46b304aaa3731fc7d5749bb4039a7e27f6fcd61d58458 agents/magica/work/queue-285/gate-r4/bus/channel-proof.test.mjs.log
66d815a014fe20899473c779c62e528d906184186a8309c4f4f63028cc5a6af0 agents/magica/work/queue-285/gate-r4/bus/chief-of-staff.test.mjs.log
eb80cef4643b1706d28b871aed6a225c1e787dd5064d2a64555b0e0896d63749 agents/magica/work/queue-285/gate-r4/bus/citation-availability.test.mjs.log
fc58f27e45575018e4eeccd07dc40222ce02cf044490df338c1e778e3eec0c66 agents/magica/work/queue-285/gate-r4/bus/citation-guard.test.mjs.log
6837c51f688711726a2da3fa6f22eab56ef0146e5cbd47ebe00a27c0c51d748a agents/magica/work/queue-285/gate-r4/bus/citation-runtime.test.mjs.log
862418d3d4124871ca5fcaf35e16c318a04e2888da83836751ddfea110efeb06 agents/magica/work/queue-285/gate-r4/npm-root.log
d6c57ef19d0a160284ba6cc6b577b3e7ad36521987379584e499812c1fbbd200 agents/magica/work/queue-285/gate-r4/npm-webui.log
8b817148218c3f0bd9c76c19ea9e2faee106f09e3f1ddf1f9aec8a4941132cfe agents/magica/work/queue-285/gate-r4/run-mutants.py
002764b7dec7523299cd104956c3a967b2020c789562ced6db88d7a36714c5af agents/magica/work/queue-285/gate-r4/run-suites.py
c8859b8cb4f817417cfbb48cfb4a89071e66c8bca76cc85b8e91e952094e2580 agents/magica/work/queue-285/gate-r4/runs.txt
136f9094d1d2b7930d00a210646075d378c9fc453620345cc9553fd92b87a6e7 agents/magica/work/queue-285/gate-r4/tmpdir.txt
165ac8c20da4b9be0329cdb0d9b3e7c6af53446d50f9e1f6f64cf8c96f4eef68 agents/magica/work/queue-285/gate/bus/access-revoke.test.mjs.log
a436e7ca6e054568a7a63e46fd773b17538f391dfe9df946ad689eab41cb841e agents/magica/work/queue-285/gate/bus/account-migration.test.mjs.log
75767c08f131d0c25e21c1305a80a78e039856aff8f10f606e5b08974ee69c41 agents/magica/work/queue-285/gate/bus/address.test.mjs.log
e2373d3d32af47283add42ea6c9251a215fd9786f07ccb7c1045634c59ce06c6 agents/magica/work/queue-285/gate/bus/agents.test.mjs.log
03bbd4a0be1f4f833873d83667d788b431948d670992e3e4499d150f1267527b agents/magica/work/queue-285/gate/bus/approval-binding.test.mjs.log
c7be2d9a24f04c3804aee9576f5e116e4a3e0677c67177a520554fea4922849d agents/magica/work/queue-285/gate/bus/broker.test.mjs.log
3351cad8e07f8d5250b8bb0c2f1b37717c51760f20b52f81b33c0153bcb13c21 agents/magica/work/queue-285/gate/bus/business.test.mjs.log
40cb6683cdfa251bf28732bc435da2099338199b7825ac9b2d22427ac39f8a98 agents/magica/work/queue-285/gate/bus/channel-proof.test.mjs.log
23347dfe0c38e100848e8b8d0ce6e834afb02dd1cb261c667305d8275f6567a4 agents/magica/work/queue-285/gate/bus/chief-of-staff.test.mjs.log
db1d36645416814000c674b5b19a18ea3c8300241e87b3b8eabd16dccf271da4 agents/magica/work/queue-285/gate/bus/comment-cursors.test.mjs.log
0ba4bfbd04a536c85e0acc89cba86d58d695bb43567a87b30948e91aa5ec8966 agents/magica/work/queue-285/gate/bus/comment-migration.test.mjs.log
82d3a17772d9189b37e4bac2cadf32284c80a7e9207325bc473ba52efb73cf63 agents/magica/work/queue-285/gate/bus/console-decide.test.mjs.log
8b9bd28443d6aff77514175541997e780ef7e7d1179055bc2adaccaaa54eae22 agents/magica/work/queue-285/gate/bus/creative.test.mjs.log
5aacc8eed52059ddfe4ac4eb0ee9dca81ac9e47e688d0e381b74ba68ca808fba agents/magica/work/queue-285/gate/bus/credential-claim.test.mjs.log
04309d1a801ba0f915b60d7d0653edf6241342b46bc7ceb5c83b6c67325cf639 agents/magica/work/queue-285/gate/bus/credential-status.test.mjs.log
5567d28417bd12913c101408978b95b777cc2ad2a0e6fb92c2e84d2192bf8f52 agents/magica/work/queue-285/gate/bus/credential-store.test.mjs.log
7f5ca995869e71e57385913a490c3cb7c90134f745fb771a6a81d948b879f685 agents/magica/work/queue-285/gate/bus/credential-verbs.test.mjs.log
399d43e4c4c51892d95538ef3d0d09a70d20842dbf65710f5e4fb1590675e733 agents/magica/work/queue-285/gate/bus/credentials.test.mjs.log
684e1f6eaaa0f187eae523378f76307cda73a57b4012d4deadfa0aaddc812cfd agents/magica/work/queue-285/gate/bus/csuite-messaging.test.mjs.log
8ff7b07491ee4a6072cc9dbb4991c41e6369fc386538ab7225a418e8fdfdf6ab agents/magica/work/queue-285/gate/bus/daily-quota-runtime.test.mjs.log
c987d0b0e2c5dff3e015cbc7813a2a87c48cd6d707e36e605f423f97e5d8054d agents/magica/work/queue-285/gate/bus/decision-close.test.mjs.log
e321bb6e0628d79f4028150ab5ea65c327abf7f450915ffdaa80ba285c13c958 agents/magica/work/queue-285/gate/bus/decision-route.test.mjs.log
0a51741dde7a835f0ab70e951da6d9890f934bec9ae05eaf18f416c41b922026 agents/magica/work/queue-285/gate/bus/decisions.test.mjs.log
53851504776f91dbb95ffffb7c7479e471ef2e8d7e52a5871d59f2c64276b5b2 agents/magica/work/queue-285/gate/bus/end-launch.test.mjs.log
6d3fa43627daeff987bea6cc8961c7d13ea13835c6b0b1510141640232c5d4ad agents/magica/work/queue-285/gate/bus/fire-revokes-grants.test.mjs.log
62c79ab8d953f4fa9ede64fd7a1b269bd4fbbe0f7d7106881564316fc0b36133 agents/magica/work/queue-285/gate/bus/gitea-grant-docker.test.mjs.log
374bc9ef18a5d933595a0ca581b8e3a5d13c77af32714d501e45bbd9a2b60ab2 agents/magica/work/queue-285/gate/bus/gitea-grant.test.mjs.log
65441bf33ed60d11010baecafe6aa717471e5d9294adf4715b6d96d62d1685ca agents/magica/work/queue-285/gate/bus/gitea-migration.test.mjs.log
10cbfdc931ba04bdee002e1f8d8a09066fe5bc93077fedbe28a790ee10b1e1d8 agents/magica/work/queue-285/gate/bus/grant-enroll.test.mjs.log
109ada8149d171908d9386ebe3bae256f08b655b144f5b81067a95b9a2583927 agents/magica/work/queue-285/gate/bus/grant-executor.test.mjs.log
2caadd7e81c411654458d4b36f7952d8a2c960eb596da478db970f5740a1a4ae agents/magica/work/queue-285/gate/bus/grant-host.test.mjs.log
0da06c51f5d099f52551a325dc086f1f11c4a5b7391257394b591f099c6fc7ce agents/magica/work/queue-285/gate/bus/grant-migration.test.mjs.log
c97a307d8ac1a4a3db14ed348aea3cbb4fe198b34b54bcce46aaabdc8a4d6a95 agents/magica/work/queue-285/gate/bus/grant-scope-runtime.test.mjs.log
5066e51566443813fe6f0fe4516d5295532a9f807f4a34e5e5a1afb9a5ec5b47 agents/magica/work/queue-285/gate/bus/grant-scope.test.mjs.log
947a27ef64b666032932b1833ab53fa7bc993eb3345000669696fc24589cf1eb agents/magica/work/queue-285/gate/bus/hard-waits.test.mjs.log
02657421abea0327f6781c50a8c1513ce6664b15e08ff75f72a94d441d083744 agents/magica/work/queue-285/gate/bus/host-run.test.mjs.log
1d950acf9c32213a2b6f841fe2d42c9a2b6ff4e66bd0abbb3429603ef4403d99 agents/magica/work/queue-285/gate/bus/host-tools.test.mjs.log
5903235cc1763f13af0d777960a67a6ffea168488019a5c6aeb4c01872220e7d agents/magica/work/queue-285/gate/bus/human.test.mjs.log
3230e31a897004c250ca99a3f1a4a1cf94b646137104ac8dc0343fa3d16c02c0 agents/magica/work/queue-285/gate/bus/instances-verb.test.mjs.log
70e23d6f009a589f4e78762228a7d7540efd7a8ce562c8ea4ead40f6c6418546 agents/magica/work/queue-285/gate/bus/interpreter.test.mjs.log
eb9b5778296bf89bbab64fc55556e984d32cc568b3e5194e6238dbefb631677a agents/magica/work/queue-285/gate/bus/land.test.mjs.log
21d336357d7fca1e006ea05645f73d1669620932204faab0be572858e695c566 agents/magica/work/queue-285/gate/bus/launch-notice.test.mjs.log
fd59e17bbafb07d815900b2f211ab51a14db9dbdba02433afec4886a0854f644 agents/magica/work/queue-285/gate/bus/launcher-released.test.mjs.log
054f68f34f628e4ee7fb197c8d836a8e66a9dcecfa1c8cc38b1d13fd6bfd5c2d agents/magica/work/queue-285/gate/bus/library-sync.test.mjs.log
a7a2a4a808f1687b8beebf658a9f9d76a737a73fb3ec71a97a5018e0c2964e93 agents/magica/work/queue-285/gate/bus/library.test.mjs.log
f189b4f29edad63cae4907fe3418aefb79d68910067a3ab2a08976588346663e agents/magica/work/queue-285/gate/bus/lifecycle-revoke.test.mjs.log
a4a7824fd964f9379a3227ebfe34a07b321c5413250e1309153f24adee2bf9b1 agents/magica/work/queue-285/gate/bus/lifecycle-verbs.test.mjs.log
e425f66a75d86741101e6ba70394399d73bdd22e916a1e68c72da1f2ed543fce agents/magica/work/queue-285/gate/bus/limit-checks.test.mjs.log
3a9675b63d8b1c2ccf2984a876eb08b87ae468dc4972674793a0f606de13551b agents/magica/work/queue-285/gate/bus/limit-stop.test.mjs.log
d63cb10293343d694a43954cc8c432818b025df7ff8f51db49bf867dc0ca3315 agents/magica/work/queue-285/gate/bus/limits-runtime.test.mjs.log
07a1544ec279b78b47f4657650501282607ad850d2eaeeeae3295a279d9fc7e9 agents/magica/work/queue-285/gate/bus/limits.test.mjs.log
2765b2e390dcac152a35074f1ddaf72276420ca720fe43d42050b5c6aa433888 agents/magica/work/queue-285/gate/bus/message-citation.test.mjs.log
e40fd5ff47d3d32fc11d9126bc1e108f5dbc0aff412a4bd14ec582eebe60751f agents/magica/work/queue-285/gate/bus/message-filter.test.mjs.log
400b09c158043b38be5d99c107382d37d97fda0a3dfe22e995ceaeb7cb522f6a agents/magica/work/queue-285/gate/bus/messages.test.mjs.log
6670bf47c54d00616506d6290554dc63f8c6b4502d247a29c52c7c5c0e4b6247 agents/magica/work/queue-285/gate/bus/messaging.test.mjs.log
1e023f038447df07f7d4ca2bb03577b76c58b5f282809d611f33580640d3a1f1 agents/magica/work/queue-285/gate/bus/name-migration.test.mjs.log
6c5a360b4a470ea749718cd68b58bbf417d41d841ae08a26c32cb634ac8aad41 agents/magica/work/queue-285/gate/bus/names.test.mjs.log
094f3462a2c6a79ffa2faf24b37b239aa05196c5996ca6dc9da6ee644bf03f08 agents/magica/work/queue-285/gate/bus/peer-transport.test.mjs.log
5e7b1b06498d9199e7e05b7d39f55b2fd57657c93f8e4b3862b0918063b7fd9a agents/magica/work/queue-285/gate/bus/peercred.test.mjs.log
937d26c22ce9a068e3a38ecea0189d8a2debfb88dc28c3c5f83d6dc0147839fc agents/magica/work/queue-285/gate/bus/plugins-verb.test.mjs.log
1b8a4989d11d7fd6c6164a01a34eca66f695fbe9d3eb06773bf0e548c7e4e48b agents/magica/work/queue-285/gate/bus/principal.test.mjs.log
099b5e4b8c26c889531d7d3afefbbae79b7ae87507c6d161294a6c6ba8e04cfb agents/magica/work/queue-285/gate/bus/process.test.mjs.log
eb7c22be7730a85f4f1cac7b1737df39b165e66fd9d8ba66930f15925c712238 agents/magica/work/queue-285/gate/bus/processing-runtime.test.mjs.log
93ba31f03d968b87f814c2e7009ec276978d7e6ef61dc089704aaf65ebdd2545 agents/magica/work/queue-285/gate/bus/processing-timeout.test.mjs.log
10759e851164ab0ddb89e71d53b3c3ac7b2fc303dd3c7ff73facd8a891872623 agents/magica/work/queue-285/gate/bus/processing-web.test.mjs.log
e269b422237101df3cfab8b7a2de7aa34aa72deab6c61407682b9ba7603a8dfd agents/magica/work/queue-285/gate/bus/processing.test.mjs.log
02fcb70eacbf9de218e9e374f15bf5754dc6f252f44d59251b215fcc38e76bbb agents/magica/work/queue-285/gate/bus/project-await.test.mjs.log
5fc4a03a3f81b0e9e00a26feb41a6850b9d22f03eb1e87ea08c369a294458075 agents/magica/work/queue-285/gate/bus/project-files.test.mjs.log
c2c70614e4e506f90d4fc6fecd2fcf1d9f8bc6b3baf665bd42c0bee7b521716d agents/magica/work/queue-285/gate/bus/project-runtime.test.mjs.log
9ccc38a678edaeb50e78dd32ff1a63483c1a09c95416dc6a5ccddf8395033744 agents/magica/work/queue-285/gate/bus/publish.test.mjs.log
26eed9482a90f8d590970450cc60fc2e0645affce783e3b5e6cc572d2cc35511 agents/magica/work/queue-285/gate/bus/reload.test.mjs.log
8d1f47d9a6a0d0e399591812fd1d6074185c98f99c8e4445650607e099ce8644 agents/magica/work/queue-285/gate/bus/replies.test.mjs.log
fc7dd97ba577e0c8c349728ed007b5c1bc380d39bc037513ba03b1b94cfd8143 agents/magica/work/queue-285/gate/bus/requirements.test.mjs.log
6aba909a93806dbf597948361491675f51bbeabfb2da8f96b09188107f6cba22 agents/magica/work/queue-285/gate/bus/review.test.mjs.log
f9ebaeb0cd19803b9820bafafe22b0d11fb92140be0e2cae48e2a822f65b86ff agents/magica/work/queue-285/gate/bus/revoke-window.test.mjs.log
d1857b0811c788381ce70700a635565f04e159f4c691ba2ec500670ec0e67bd8 agents/magica/work/queue-285/gate/bus/rooms.test.mjs.log
f7912e8d5e62ed5c762611c2d6994cd5b14ade2c613a03a981b6147da6db8c3b agents/magica/work/queue-285/gate/bus/routes-verb.test.mjs.log
19db352329ef1bb3961589426cd98b738d766737583ab8a959a399298d4a3e56 agents/magica/work/queue-285/gate/bus/schema.test.mjs.log
067e1d55602bbbd8441b01fbf98af30a0c2a4c2f735795f686b3004cc7c569cb agents/magica/work/queue-285/gate/bus/session-clear.test.mjs.log
ee0645812caa720a6c6dadb87a507c9b6450e53d64f129a934c9715a59ca7e31 agents/magica/work/queue-285/gate/bus/session-compactions.test.mjs.log
a0f4063b62e33829964d01c4701f6fa53a1a4e04db130556995fdeff57c5b98c agents/magica/work/queue-285/gate/bus/sessions.test.mjs.log
d7cec28d86382f4257e5a5fa43830f057e2816916e5e3a889f2c49143a76e05c agents/magica/work/queue-285/gate/bus/single-use.test.mjs.log
952b00b4b8be9e9b040859e3b1bf1a998d42ff60994ae56acbea3b9dce7aa109 agents/magica/work/queue-285/gate/bus/spec-migration.test.mjs.log
4ecb30123315957c85c0cf57a3f9a37458516c7272053f422e776acd4538b6c3 agents/magica/work/queue-285/gate/bus/spec-review.test.mjs.log
fd6ef3a781f6a6877ca983bf6aab2575b318484ce02332d73906726d94bd25a9 agents/magica/work/queue-285/gate/bus/spec-socket.test.mjs.log
99bfda4b5a4a51ee2510b9063443ce595ec2c0fb6b9468a53779cca841aca137 agents/magica/work/queue-285/gate/bus/spec.test.mjs.log
a46ff7b32c3828c5ca155c764baf010484b20ddddddce01313d9c80a7268f52b agents/magica/work/queue-285/gate/bus/staff-request.test.mjs.log
62235e85812e9043c30f354b7f2845b9556e00f41730140e3427ee2e00962213 agents/magica/work/queue-285/gate/bus/state.test.mjs.log
070c1062cff973022ea79efbe5fc60871e5e4b18f0313d7e1c824c959744353e agents/magica/work/queue-285/gate/bus/store.test.mjs.log
31b0bd06d46b362caf29df339bc327cbcadd19c9be5a844528505dab4faa2890 agents/magica/work/queue-285/gate/bus/task-page.test.mjs.log
e46273799cf36af56b2e18e276a8823e7236a35e32f5dca7e2a569c891860485 agents/magica/work/queue-285/gate/bus/task-read.test.mjs.log
123f9f597326ab4f1f7b7bff25a4d642235ed601213ba68fa7c381e1333cc331 agents/magica/work/queue-285/gate/bus/tasks.test.mjs.log
f92b53ae3c01de3abea42f271dcc5c301c8435b929da95d4b70d434a3b61cc97 agents/magica/work/queue-285/gate/bus/tester-threads.test.mjs.log
c82fd429354c28acd70c88484c415c1cdd55442ed26f55539ff298179f417b69 agents/magica/work/queue-285/gate/bus/tester-writes.test.mjs.log
6c1258f59be227961d53a31b709da31d9602557d240b859aa7a385cb9c8ba103 agents/magica/work/queue-285/gate/bus/tester.test.mjs.log
1d9eac085ace72c24be5a5b7b2c623faba046f8d3355c43acdce40a11f25b6fe agents/magica/work/queue-285/gate/bus/thread-claims.test.mjs.log
c2ac5ac38d0191328a6af9a464de7c6d929a63036a8082d148361ada35bd2fdb agents/magica/work/queue-285/gate/bus/thread-migration.test.mjs.log
b0830e1c8443571f0c53a58cd754758db0034ee794ca3dab99b2985c25ef68d8 agents/magica/work/queue-285/gate/bus/thread-shares.test.mjs.log
c58fa57661b4177265853846b57a0c47451428921401ab3eca5b1577f9c29f72 agents/magica/work/queue-285/gate/bus/threads.test.mjs.log
3cb75a70732b8ed97f1721c12f3a944a2584907c5b3630556e4b1928075d7b50 agents/magica/work/queue-285/gate/bus/transport.test.mjs.log
1f8396749c5352b3e731df8476c69edf4a0096a74a8901572b0806026a3f843e agents/magica/work/queue-285/gate/bus/usage-broker.test.mjs.log
fd9657c6e3f60607ca105e886b4a63827f599473b0bfbfe73f4385b8b3846284 agents/magica/work/queue-285/gate/bus/usage-migration.test.mjs.log
d3725b7e60f6f8e20613025ef776cf8dc8d02f7be307f662c648595ab65f234b agents/magica/work/queue-285/gate/bus/usage-runtime.test.mjs.log
884e803280118072211f38f9719e146a2b691e00dde95398955e86604a47725b agents/magica/work/queue-285/gate/bus/usage.test.mjs.log
c2daf35d42fb8065fff27135f0107d50a2bbe7e7123d084d5168a7a3afd77fef agents/magica/work/queue-285/gate/bus/user-principal.test.mjs.log
7df90f279bf33f7f0afb46498e7dbe2a6e0f7638068cfb2d43ebdebf8c559f0a agents/magica/work/queue-285/gate/bus/viewer.test.mjs.log
a4cd50f2f91fcb29ecfa9282e8ff8b904c4f0f39a3bcf25ab2bcf48a1edd08a9 agents/magica/work/queue-285/gate/bus/web.test.mjs.log
12b98a74ef4f5b66753a9f5394a14c912df0763d3def383a8fd505d8254f41ba agents/magica/work/queue-285/gate/bus/workflow-roles.test.mjs.log
3175b43dcbb4af1a804e31398dc9c44950e74d928eb6b9b903be7f1bc6a71f15 agents/magica/work/queue-285/gate/business/access-levels.test.mjs.log
7a18722118a8f810387fb748de3ccab936654511a8f65912d65af2a64be27723 agents/magica/work/queue-285/gate/business/access.test.mjs.log
b0b6cc83e1551c9090b9098751a180b6a7fa366d475b2eee5c8ab1dc29202067 agents/magica/work/queue-285/gate/business/agent-identity.test.mjs.log
cdf62e328974ebb3af77cee2470c82e1658fc666d73457c48a1462e548a407d5 agents/magica/work/queue-285/gate/business/assistant.test.mjs.log
b1d758b7003285c5962a1e51195cea7fe5e0074764a81fdeef1c90980ef6cb30 agents/magica/work/queue-285/gate/business/business.test.mjs.log
e06ace69f48d9efb8b94db93ae30d87a995b47383f7a587c356c7e94c9cd0279 agents/magica/work/queue-285/gate/business/case1-business-file.test.mjs.log
8dc64b303566c560d4ceff68c2102cfd7f2d629520d51a3a4d7225c40b727f8b agents/magica/work/queue-285/gate/npm-root.log
d37ae47c1ad8ea6189f8eb044879a6a870ac25e4dde31b1dbcec1627afc063d7 agents/magica/work/queue-285/gate/npm-webui-r2.log
7dcee599b2fa3d318aa251a45a3bb6534875614a7a5162037b537dab2fb40ab5 agents/magica/work/queue-285/gate/npm-webui.log
b59cea53f5f27343cc482951b5ba84e0572e97affa305a8488cb24f07a5b036b agents/magica/work/queue-285/gate/run-mutants.py
68434cb6454d426dd30859933fbcc5f4f47645b4c3e242505361607f5b367f57 agents/magica/work/queue-285/gate/runs.txt
2a9f8f15f0c0f54f6b03b790767aacae868367fad0a48c8281b25ba48573c2e5 agents/magica/work/queue-285/gate/tmpdir.txt
08b1950154484173715a761684864a92c0b83ff77d5f87b4d603d1e01a67e979 agents/magica/work/queue-285/hex-pins.txt
4d7feff6cd3d9e6f3b90cce5ea199f7b6eb6c24d2908f6f3fdc72536b0670cb5 agents/magica/work/queue-285/r4-range-diff.txt
9f2585f97b57aa4c14be990a72eeaf0fa5da877660a3e66f878e5e6c611176aa agents/magica/work/queue-285/readers.txt
6a199bbd12fd4ee3183397ffa69a69da6d46e09492346584829d34740530cb6b agents/magica/work/queue-285/role-readers.txt
91babb2a30a47167abef606a2b78fa25e4d285f40e35be8cb33212771ebdd27c agents/scrooge/work/queue-285/BUILD.md
96d3a49f9154448520b74dc4acefbc78fc8d3b1f3038119fd909e3f318484f03 packages/bus/src/broker.mjs
1f61878d74a77f3245bb29e56b600220daf224e73c2829aed74b317057628f6e packages/bus/tests/citation-runtime.test.mjs
6f123ecfe86be3eca025c271239ba79a96d0db16a663adb3aaf7dae971dd1e7f packages/bus/tests/creative.test.mjs
9af7b4678f17d975218a9aee5f4c6a0fe256dcf0f2e508d5121b0feda9b4f110 packages/bus/tests/gitea-grant.test.mjs
9ab6f3bdcba52cc50cbd5efd587579303fe91041a18e5f360a2db30e29c7d011 packages/bus/tests/reload.test.mjs
8e13676d0cf5d661b3049ec022a44c0665f91808aef1e373a6bf73728cba0feb packages/business/README.md
3f13c07e9c51b1d328565f40f8001bc4475821d1985611164e99d2b08da97dc8 packages/business/src/business.mjs
f9d2d88b3ba53acd5ac51014f57db83ded428bd072a4ab68a9c2f87418030edd packages/business/src/instance-settings.mjs
b10af84d7422da4d0e8c0a4fea1064eebbc2fac6a838a1b3939b554e22dedfc9 packages/business/src/role.mjs
de1f04628e400084a46e77fd7e03c7a039f0f80c9e07bb486c9c012f187aa3eb packages/business/src/vocabulary.mjs
212309b5dc1ace2b653fa3c5489a48590bed1467f0f66a231dc88b20ed1f2fb9 packages/business/tests/agent-identity.test.mjs
5b643c6af967578c8bef563a24554e207078f265621ba0c08dd63d9afe9abe62 packages/business/tests/business.test.mjs
8310b8eef4da2fa88d92a35ae1ff62e36ec699700ba246b900bd468d13c4937c packages/business/tests/chief-library-credentials.test.mjs
066befd2210dcfe5e3f395f0e7832e19a68c4673a6ef474106e2801b92cb75a6 packages/business/tests/chief-of-staff.test.mjs
6c96c5e053fa7f43d18c1a65e8b99db00af84995b29ca941524ff3bca71aceeb packages/business/tests/cli.test.mjs
ef811fb3495e9d60b09bda46e4192bed37a4eb5ff03be8bc3b075d9e40c55125 packages/business/tests/hard-waits.test.mjs
b645c946e50add7a9114a5a5096e19ccb03064ca66a7ec8948ded07a3f2d23d5 packages/business/tests/instance-credential-transitions.test.mjs
0746c639a4149f5b1731f4392791d626d8b339bbb2647807c9c1a572bb30858f packages/business/tests/instance-settings.test.mjs
786ba2fd66779700b874230c4533c85d16e1b0a4e61e2d286163e6b5882974f6 packages/business/tests/launch-settings.test.mjs
a574d95326d716da34063f2cabfe9537bc3298671743d1472bbc2bf5f2039fbd packages/business/tests/library-projects-protected.test.mjs
27119cb07adeaf39a455ff8b4e4d011ed566eb1259e8ea58332db4033733988f packages/business/tests/library-seats.test.mjs
0bd9bce351df3e0275661952dcc26a381a606e4b24ec57f4aa72e11a6edbaee7 packages/business/tests/lifecycle-settings.test.mjs
adcd605a0524df6b3aa98d934746376669f2caa11aeaeb3809753e07f1a57678 packages/business/tests/resolve.test.mjs
569c52a78a35b9dbf2eea88d84f4416f13cd0d7faddd999eb3d283510408de11 packages/business/tests/role.test.mjs
ff515ce6e43411c6549a0e073776131fc97d6eed0fcaab09f315f2eb129926f9 packages/cli/tests/case2-install.test.mjs
8d4370f0015e5d9c316358e2d849f9484894eb5408f25e4c7387d971d2f0eca3 packages/cli/tests/launcher.test.mjs
c2fcfac8b85c8ac5ab7ea42e09c061a110fe3b5933d9a0dd30bec5e2654723f3 packages/cli/tests/thread-launch.test.mjs
c2f7da3595999aca7665d4feba0774d042bb30cc794befc43fa4e73a9a4c4856 packages/cli/tests/trackers-boot.test.mjs
178d777f7981f374029326d35795b7f5a30466fd0f8bf88ab45998f3886b1b44 packages/control-board/tests/creative-hidden.test.mjs
49e5a394b3e4f07e9a57823f2ccaadc9a831fa9e99e65d6cf74dbeae5fb922a5 packages/discord/tests/library-seat.test.mjs
cc351c842e1261ef179da051e0ebc2f8abe9132f4ca81f4cbdbd3612e47d1914 packages/harness/tests/creative.test.mjs
c781c4108824db7f17cc4b514e3b0d446120dc1ad7c05e5bf5a72edcac70d054 roles/chief-of-staff.json
db16c358820e199910eabe06f885a53a4bde2502aeafa5444c12d9b29c74880c roles/chief-of-staff.md
962f1e8ca9d56d7ad7dd4f82a57b97b834bacdc72c3fe774f9a9afccf7dd72e9 roles/companion.json
cad0360c16db9b2659370e6363937a27d61e9f6c4fae711a2dfc5b89aadead81 roles/companion.md
031807451adfe5e4643da2ff59fab0a041fce519f4cb84d749ec6f10edff8f36 roles/continuity.json
75522c66ccd242971b4b00786112ef37b41c972af5b0d98c011697169fba7db2 roles/continuity.md
1dfc6629dc70dd8020483456db140751010e81a44fbd49308580f0c6356c2471 roles/fact-checker.json
2d01f771831d52a1d9ddde8c1183601051782efd39899605949761fdd5e07291 roles/fact-checker.md
2c69c26460574948584eae487e944b7240cfa37a0a0f3ddeaabd682815ebf6ed roles/ideas.json
bb403867a2ba33ea271d2d576165c6131e43446f2d5deb4eb86389398cb0592d roles/ideas.md
3a55947b867241dd42b78588276f6f901d374b519f3964ba0acc4b782513224c roles/proofreader.json
054f6f888064eca4c6b7b1c0180bd2ad968b10429f045db7aaa92453cbddd1ab roles/proofreader.md
38d36d8cca7f4f7141af5469f0a17dd2a44a5ec26ef113ad9a01c9b013968501 roles/research.json
2a66291a7a8d21b9f587c6226d408667a775b2846bc9950606e73b210f4ac0d1 roles/research.md
+45
View File
@@ -0,0 +1,45 @@
# Row 285 / #1790 r4 review packet
Candidate: the pushed magica/row285-r4 tip accompanying the manifest.
Base: d0a6a87cd (landed 296 + 217). Initial r4 receipt: 0f6cdc861.
Owner: Magica. First reviewer: Poe. Landing reviewer: Webby. Sage posts requests.
The build grants the six creative definitions library.write and the declared Gitea
service, gives the chief a read-only Gitea declaration, and requires its instance
reference exactly when the business declares a library. The current write-scoped
grant path still refuses the chief. No live business file is changed.
Binding scope is the C2-08b brief, Scrooge's retained BUILD, and mos-1580 through
mos-1586 as quoted in BUILD.md. N1 (creative-only library.write role validation)
remains a follow-up. No grant executor or write verbs join this row.
Review the entire original role/contract/vocabulary patch and the new instance
settings logic. The latter is limited to actual instance credential references,
duplicate-first hiring, and the creative-only equal-service exception:
- Derive creative status from reviewed withinRole library.write, not role names.
- Preserve all non-creative definition fences and base accepted values.
- Validate the full proposed creative change before its credential guard.
- Permit retention only between creative definitions with identical DECLARED
service sets. Host stays in that set even though it has no file reference.
- Retain credential objects byte-for-byte; call no credential creation or mint.
- List creative definitions only for the existing Gitea store add path; another
service retains the base accepted value.
Check every old assertion, especially instance-settings 68/131/189/211/290/306/311
and lifecycle 191. Those two files must be byte-identical to the initial r4 tip.
Check the B1 token-only insertions against e0c6142f3 and the final data fixes
against d0a6a87cd. The only non-credential fixture change is the explicitly ruled
tracker credentials?.vikunja guard; its put() role set remains pm/cto/coder/reviewer.
Read the new instance-credential-transitions tests. Its auxiliary creative-host
case must validate as an ordinary business before the declared-service fence
refuses it, so M13 is evidence for the equal-set guard itself. M15 must preserve
the old validator-first BusinessError. M11/M12 cover the two earlier guard reds.
M10 must independently fail the new no-library positive and unchanged Case1 test.
Manifest hashes, final whole-suite/script counts, mutant receipts, blob restoration
and controls are recorded in BUILD.md and gate-r4-final. Earlier r3/r4 failed logs
are historical evidence and are not green acceptance claims. The completed release
file has an 1800-second bound because its unchanged collection run takes about
600 seconds; the original 300-second interruption is retained, never overwritten.
File diff suppressed because it is too large. Load diff
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,16 @@
TAP version 13
# Subtest: C2-06 runtime reads changed and unreadable reply limits without restarting
ok 1 - C2-06 runtime reads changed and unreadable reply limits without restarting
---
duration_ms: 115.226832
type: 'test'
...
1..1
# tests 1
# suites 0
# pass 1
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 225.83934
@@ -0,0 +1,93 @@
Command: git diff --word-diff=porcelain d0a6a87cd -- packages/bus/tests/citation-runtime.test.mjs
diff --git a/packages/bus/tests/citation-runtime.test.mjs b/packages/bus/tests/citation-runtime.test.mjs
index fdcfdadfc..b1a2de155 100644
--- a/packages/bus/tests/citation-runtime.test.mjs
+++ b/packages/bus/tests/citation-runtime.test.mjs
@@ -12,7 +12,7 @@ import { mappingEntry } from '../../library/tests/helpers.mjs';
test('C2-06 runtime reads changed and unreadable reply limits without restarting', async t => {
~
const root = mkdtempSync(join(tmpdir(), 'citation-runtime-')); t.after(() => rmSync(root, { recursive: true, force: true }));
~
const doc = businessDoc(root), rolesDir = rolesCopy(root), dir = join(root, 'config'), dataRoot = join(root, 'data');
~
doc.projects.books = mappingEntry();
+doc.roles.chief.credentials = { gitea: { ...doc.roles.coder.credentials.gitea } };
doc.replyLimits = { requireCitation: false, citationsPerReply: 3 };
~
const file = writeJson(join(dir, 'businesses/acme.json'), doc);
~
const checked = validateBusinessDocument(doc, file, { rolesDir }); mkdirSync(dataRoot, { mode: 0o700 });
~
// Runtime takes the host's broker projection, not the business validator's unresolved role entries.
~
Command: git diff --word-diff=porcelain d0a6a87cd -- packages/cli/tests/launcher.test.mjs
diff --git a/packages/cli/tests/launcher.test.mjs b/packages/cli/tests/launcher.test.mjs
index baabd843e..766bbb35a 100644
--- a/packages/cli/tests/launcher.test.mjs
+++ b/packages/cli/tests/launcher.test.mjs
@@ -1,4 +1,4 @@
import {
+FAR_DATE,
launchDoc } from "../../business/tests/helpers.mjs";
~
// The S6 launcher inside a real bus host: real broker child, real runners
~
// in the bwrap sandbox, the fake adapter from packages/harness standing in for the
~
// harness. The chief of staff launches a coder through its `launch` tool (row 119: the
~
@@ -32,7 +32,7 @@ const skip = sandboxProblem() ?? false;
~
test('C2-04: launcher workspace clones code but never the library', { skip, timeout: 30000 }, async t => {
~
const { mappingEntry } = await import('../../library/tests/helpers.mjs');
~
const f = await setup(t, doc => {
+doc.roles.chief.credentials = { gitea: { ...doc.roles.coder.credentials.gitea } };
doc.projects = { books: mappingEntry(), ...doc.projects }; return doc; });
~
await f.launcher.launchPm();
~
const workspace = workspaceDir(f.f.dataRoot, 'acme', 'chief');
~
assert.equal(existsSync(join(workspace, 'stack', '.git')), true);
~
@@ -766,7 +766,7 @@ test("row 64 a role skill that isn't enabled refuses skill-not-enabled, and one
test("row 213 a creative instance's persona is read from <configDir>/personas: off its digest the launch fails with the mismatch as its reason", { timeout: 30000 }, async (t) => {
~
const text = "Warm. PERSONA-MARKER-d2\n";
~
const given = prepare(t, (doc) => {
~
doc.roles.bean = { definition: "companion",
+credentials: { gitea: { ...doc.roles.coder.credentials.gitea } },
vars: { harness: "pi", model: "claude-sonnet-5-5", thinking: "high", "persona.name": "Bean", "persona.sha256": createHash("sha256").update(text).digest("hex") } };
~
doc.launch.instances.push("bean");
~
return doc;
~
});
~
Command: git diff --word-diff=porcelain d0a6a87cd -- packages/harness/tests/creative.test.mjs
diff --git a/packages/harness/tests/creative.test.mjs b/packages/harness/tests/creative.test.mjs
index 80f4516ee..c3191f99e 100644
--- a/packages/harness/tests/creative.test.mjs
+++ b/packages/harness/tests/creative.test.mjs
@@ -24,6 +24,7 @@ function bean(t, definition, { harness = "pi", persona = false, vars = {} } = {}
return resolvedFor(t, "bean", (d) => {
~
d.roles.bean = { definition, vars: { harness, model: "claude-sonnet-5-5", thinking: "high",
~
...(persona ? { "persona.name": "Bean", "persona.sha256": sha(TEXT) } : {}), ...vars } };
~
+d.roles.bean.credentials = { gitea: { ...d.roles.coder.credentials.gitea } };
~
});
~
}
~
~
@@ -0,0 +1,52 @@
TAP version 13
# Subtest: M2: the gate refuses write, edit and bash to every creative role on pi and claude-code
ok 1 - M2: the gate refuses write, edit and bash to every creative role on pi and claude-code
---
duration_ms: 24.86457
type: 'test'
...
# Subtest: M6: no creative session gets raise_decision; the assistant and the chief of staff keep it
ok 2 - M6: no creative session gets raise_decision; the assistant and the chief of staff keep it
---
duration_ms: 9.932694
type: 'test'
...
# Subtest: web: research and companion get the broker's typed web tools, and a harness-builtin source refuses web-source-not-allowed
ok 3 - web: research and companion get the broker's typed web tools, and a harness-builtin source refuses web-source-not-allowed
---
duration_ms: 13.028605
type: 'test'
...
# Subtest: persona: the block sits between the contract and \#\# This session, fenced, with the name and digest
ok 4 - persona: the block sits between the contract and \#\# This session, fenced, with the name and digest
---
duration_ms: 4.024321
type: 'test'
...
# Subtest: persona: each unsafe or unpinned file refuses before the bundle directory is made
ok 5 - persona: each unsafe or unpinned file refuses before the bundle directory is made
---
duration_ms: 11.602161
type: 'test'
...
# Subtest: adapters pass the prompt file's absolute path; the persona and the prompt text never sit in argv
ok 6 - adapters pass the prompt file's absolute path; the persona and the prompt text never sit in argv
---
duration_ms: 20.120053
type: 'test'
...
# Subtest: the pi adapter refuses a missing, unreadable or directory prompt file before pi starts
ok 7 - the pi adapter refuses a missing, unreadable or directory prompt file before pi starts
---
duration_ms: 5.87968
type: 'test'
...
1..7
# tests 7
# suites 0
# pass 7
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 167.281349
@@ -0,0 +1,230 @@
TAP version 13
# Subtest: C2-04: launcher workspace clones code but never the library
ok 1 - C2-04: launcher workspace clones code but never the library
---
duration_ms: 1382.205037
type: 'test'
...
# Subtest: bus start --pm: the launcher instance (the chief of staff) runs under its own PID namespace, registered, with a manifest
ok 2 - bus start --pm: the launcher instance (the chief of staff) runs under its own PID namespace, registered, with a manifest
---
duration_ms: 1315.878416
type: 'test'
...
# usage: {"event":"usage-unknown","business":"acme","run":"rec3d76ee6f45","instance":"chief","turn":"96c79974-cd3e-4805-9d8f-83b3ebb19dc9","source":"@none","code":"baseline-unknown"}
# usage: {"event":"usage-unknown","business":"acme","run":"r2432de926bd2","instance":"coder","turn":"20911d9d-f533-4c54-894e-8cae3d52800d","source":"@none","code":"baseline-unknown"}
# Subtest: the chief of staff launches a coder through its launch tool; the coder answers; refusals name their code
ok 3 - the chief of staff launches a coder through its launch tool; the coder answers; refusals name their code
---
duration_ms: 718.325592
type: 'test'
...
# usage: {"event":"usage-unknown","business":"acme","run":"r3781ca43a525","instance":"chief","turn":"b0d06ae5-15b6-49f6-879e-d54813b52a3f","source":"@none","code":"baseline-unknown"}
# usage: {"event":"usage-unknown","business":"acme","run":"rbb2a8cb5634c","instance":"pm","turn":"185e128f-c472-45f3-9fa5-4f7542512518","source":"@none","code":"baseline-unknown"}
# usage: {"event":"usage-unknown","business":"acme","run":"r3781ca43a525","instance":"chief","turn":"ac22694f-bd40-4f64-8f1b-2b47a1b46aba","source":"@none","code":"baseline-unknown"}
# usage: {"event":"usage-unknown","business":"acme","run":"r3781ca43a525","instance":"chief","turn":"ade5a279-1ee9-4da5-8bc9-5624a44e4a6c","source":"@none","code":"baseline-unknown"}
# usage: {"event":"usage-unknown","business":"acme","run":"rbb2a8cb5634c","instance":"pm","turn":"80a63aa8-25ef-4fcf-9802-a70e8850e1d8","source":"@none","code":"baseline-unknown"}
# usage: {"event":"usage-unknown","business":"acme","run":"rbb2a8cb5634c","instance":"pm","turn":"f4a924e1-9b5a-4c24-bbc0-3ad4db6d622d","source":"@none","code":"baseline-unknown"}
# usage: {"event":"usage-unknown","business":"acme","run":"r3781ca43a525","instance":"chief","turn":"c345639d-6f70-4ed1-a87a-7c1575070734","source":"@none","code":"baseline-unknown"}
# usage: {"event":"usage-unknown","business":"acme","run":"rbb2a8cb5634c","instance":"pm","turn":"a2fbcb83-85f9-4699-b27f-d6248865bfac","source":"@none","code":"baseline-unknown"}
# usage: {"event":"usage-unknown","business":"acme","run":"r3781ca43a525","instance":"chief","turn":"c9db32bc-63e4-4e46-915f-70500f1b316c","source":"@none","code":"baseline-unknown"}
# Subtest: a launched pm's request_staff reaches the chief of staff; no other session has the tool and the launch limits still hold
ok 4 - a launched pm's request_staff reaches the chief of staff; no other session has the tool and the launch limits still hold
---
duration_ms: 1025.202516
type: 'test'
...
# Subtest: each launch makes sure the workspace has a clone of the project: cloned, fast-forwarded, or fetched and logged
ok 5 - each launch makes sure the workspace has a clone of the project: cloned, fast-forwarded, or fetched and logged
---
duration_ms: 4040.698536
type: 'test'
...
# Subtest: a role the broker says holds a merge decision gets land_work, its prompt line, its landing and the git socket; without it, none
ok 6 - a role the broker says holds a merge decision gets land_work, its prompt line, its landing and the git socket; without it, none
---
duration_ms: 722.105035
type: 'test'
...
# Subtest: REQ-LAUNCH-1 the tick starts a listed merge decision holder once, with land_work, the Landing line and its landing turn; an unlisted holder starts nothing
ok 7 - REQ-LAUNCH-1 the tick starts a listed merge decision holder once, with land_work, the Landing line and its landing turn; an unlisted holder starts nothing
---
duration_ms: 414.464152
type: 'test'
...
# usage: {"event":"usage-unknown","business":"acme","run":"r3efa154d36cf","instance":"coder","turn":"4d43a1c0-6944-4a3b-bde9-ddcecfbc6b6f","source":"@none","code":"baseline-unknown"}
# Subtest: a holder running since before the resolution is stopped once the broker releases it, land-relaunch, and the next tick starts it: landing turn first, then the message that waited
ok 8 - a holder running since before the resolution is stopped once the broker releases it, land-relaunch, and the next tick starts it: landing turn first, then the message that waited
---
duration_ms: 695.611226
type: 'test'
...
# Subtest: a landing run that ended isn't started again for its decision, a spent decision starts nothing, and a new decision starts the holder
ok 9 - a landing run that ended isn't started again for its decision, a spent decision starts nothing, and a new decision starts the holder
---
duration_ms: 643.90832
type: 'test'
...
# Subtest: after a restart, the new host's first tick starts a holder whose decision is still held
ok 10 - after a restart, the new host's first tick starts a holder whose decision is still held
---
duration_ms: 888.403197
type: 'test'
...
# Subtest: a refused landing start is logged once per code with its decision, isn't a start, and the next tick with room starts the holder
ok 11 - a refused landing start is logged once per code with its decision, isn't a start, and the next tick with room starts the holder
---
duration_ms: 624.203009
type: 'test'
...
# Subtest: a project clone that can't be made refuses checkout-failed, from --chief and from a session, with no run and no clone left
ok 12 - a project clone that can't be made refuses checkout-failed, from --chief and from a session, with no run and no clone left
---
duration_ms: 268.190754
type: 'test'
...
# Subtest: a runner that stops at once ends its launch with the runner's reason
ok 13 - a runner that stops at once ends its launch with the runner's reason
---
duration_ms: 342.058129
type: 'test'
...
# Subtest: a Claude Code launch with no session credential refuses before it starts
ok 14 - a Claude Code launch with no session credential refuses before it starts
---
duration_ms: 194.183906
type: 'test'
...
# Subtest: a pi launch needs no session credential: pi logs in through its own ENV_ALLOW variables
ok 15 - a pi launch needs no session credential: pi logs in through its own ENV_ALLOW variables
---
duration_ms: 327.428178
type: 'test'
...
# usage: {"event":"plugin-refused","kind":"harness","name":"down","code":"missing","message":"/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/plugins/harness/down is missing","kept":[]}
# plugins: {"event":"plugin-refused","kind":"harness","name":"down","code":"missing","message":"/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/plugins/harness/down is missing","kept":[]}
# Subtest: row 65 a failed primary preflight launches the fallback on a fixture harness module, recording the route and the reason
ok 16 - row 65 a failed primary preflight launches the fallback on a fixture harness module, recording the route and the reason
---
duration_ms: 365.842153
type: 'test'
...
# Subtest: a runner killed from the host ends its launch as killed, not failed
ok 17 - a runner killed from the host ends its launch as killed, not failed
---
duration_ms: 386.802623
type: 'test'
...
# Subtest: a missing or failing bwrap refuses sandbox-unavailable before anything starts; there is no unconfined fallback
ok 18 - a missing or failing bwrap refuses sandbox-unavailable before anything starts; there is no unconfined fallback
---
duration_ms: 195.74996
type: 'test'
...
# Subtest: row 64 a role skill that isn't enabled refuses skill-not-enabled, and one that isn't a plain directory skill-refused, before anything starts
ok 19 - row 64 a role skill that isn't enabled refuses skill-not-enabled, and one that isn't a plain directory skill-refused, before anything starts
---
duration_ms: 191.053307
type: 'test'
...
# Subtest: row 213 a creative instance's persona is read from <configDir>/personas: off its digest the launch fails with the mismatch as its reason
ok 20 - row 213 a creative instance's persona is read from <configDir>/personas: off its digest the launch fails with the mismatch as its reason
---
duration_ms: 261.252111
type: 'test'
...
# Subtest: row 64 on Claude Code a role skill that isn't enabled refuses the same way, before anything starts
ok 21 - row 64 on Claude Code a role skill that isn't enabled refuses the same way, before anything starts
---
duration_ms: 192.876047
type: 'test'
...
# usage: {"event":"usage-unknown","business":"acme","run":"r36e07a81bce7","instance":"chief","turn":"e8e6dd62-d686-469e-a6a8-74257846bbca","source":"@none","code":"baseline-unknown"}
# usage: {"event":"usage-unknown","business":"acme","run":"redb6b19f4ae9","instance":"coder","turn":"61f8b85e-b929-4c24-ab81-8930df5fb83b","source":"@none","code":"baseline-unknown"}
# Subtest: a real Claude Code coder's shell can't read a stand-in secret or anything else its sandbox doesn't hold
ok 22 - a real Claude Code coder's shell can't read a stand-in secret or anything else its sandbox doesn't hold
---
duration_ms: 1431.280634
type: 'test'
...
# Subtest: a host that died hard leaves its sessions to the next host, which kills them and ends their runs so the role can be launched again
ok 23 - a host that died hard leaves its sessions to the next host, which kills them and ends their runs so the role can be launched again
---
duration_ms: 1071.474426
type: 'test'
...
# Subtest: a host that died hard leaves its sessions to the next host, which finds one already exited (23) and ends their runs so the role can be launched again
ok 24 - a host that died hard leaves its sessions to the next host, which finds one already exited (23) and ends their runs so the role can be launched again
---
duration_ms: 4028.142598
type: 'test'
...
# Subtest: bus start --no-launch leaves an earlier host's live session alone: no signal, no end, sessions.json as it was
ok 25 - bus start --no-launch leaves an earlier host's live session alone: no signal, no end, sessions.json as it was
---
duration_ms: 244.439555
type: 'test'
...
# Subtest: bus start --no-launch refuses every launch: the PM launch and a session's request, each logged, nothing spawned
ok 26 - bus start --no-launch refuses every launch: the PM launch and a session's request, each logged, nothing spawned
---
duration_ms: 219.352715
type: 'test'
...
# Subtest: bus start --no-launch starts no thread tick; the same host with launches runs it
ok 27 - bus start --no-launch starts no thread tick; the same host with launches runs it
---
duration_ms: 1196.59052
type: 'test'
...
# Subtest: a malformed sessions.json refuses the host start with exit 3 and stays as it was
ok 28 - a malformed sessions.json refuses the host start with exit 3 and stays as it was
---
duration_ms: 178.862698
type: 'test'
...
# Subtest: an over-long launch request is refused at once, not at the 10 s idle timeout
ok 29 - an over-long launch request is refused at once, not at the 10 s idle timeout
---
duration_ms: 186.749375
type: 'test'
...
# Subtest: a launch client that never closes its side doesn't hold the host's close
ok 30 - a launch client that never closes its side doesn't hold the host's close
---
duration_ms: 182.061723
type: 'test'
...
# Subtest: a runner that ignores SIGTERM is killed when the host closes
ok 31 - a runner that ignores SIGTERM is killed when the host closes
---
duration_ms: 1357.232693
type: 'test'
...
# Subtest: kill switch refuses chief and hire before launch work and a clear permits a later request
ok 32 - kill switch refuses chief and hire before launch work and a clear permits a later request
---
duration_ms: 319.277841
type: 'test'
...
# Subtest: kill switch stops an actual managed namespace and records the halt reason without rewriting its bundle
ok 33 - kill switch stops an actual managed namespace and records the halt reason without rewriting its bundle
---
duration_ms: 330.778618
type: 'test'
...
# Subtest: a launch waiting across halt and resume cannot use its stale admission
ok 34 - a launch waiting across halt and resume cannot use its stale admission
---
duration_ms: 200.208935
type: 'test'
...
1..34
# tests 34
# suites 0
# pass 34
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 26258.674877
@@ -0,0 +1,104 @@
TAP version 13
# Subtest: row 285 P: creative equal-service changes preserve every existing credential reference
not ok 1 - row 285 P: creative equal-service changes preserve every existing credential reference
---
duration_ms: 10.905862
type: 'test'
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/business/tests/instance-credential-transitions.test.mjs:29:1'
failureType: 'testCodeFailure'
error: 'ideas declares gitea credentials; binding them is a hand edit'
code: 'organization-credentials-out-of-scope'
stack: |-
definitionFor (file:///home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/business/src/instance-settings.mjs:100:11)
Object.set (file:///home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/business/src/instance-settings.mjs:250:9)
Object.change (file:///home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/business/tests/instance-credential-transitions.test.mjs:24:41)
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/business/tests/instance-credential-transitions.test.mjs:31:5)
Test.runInAsyncScope (node:async_hooks:226:14)
Test.run (node:internal/test_runner/test:1402:25)
Test.start (node:internal/test_runner/test:1262:17)
startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17)
...
# Subtest: row 285 P: creative declared-service mismatch refuses even when host has no reference
ok 2 - row 285 P: creative declared-service mismatch refuses even when host has no reference
---
duration_ms: 5.201752
type: 'test'
...
# Subtest: row 285 P: an equal-service non-creative target keeps the base credential refusal
ok 3 - row 285 P: an equal-service non-creative target keeps the base credential refusal
---
duration_ms: 3.949275
type: 'test'
...
# Subtest: row 285 P: business validation precedes the creative credential fence
not ok 4 - row 285 P: business validation precedes the creative credential fence
---
duration_ms: 3.906887
type: 'test'
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/business/tests/instance-credential-transitions.test.mjs:54:1'
failureType: 'testCodeFailure'
error: |-
The validation function is expected to return "true". Received false
Caught error:
Error: bean holds companion credentials; moving them to another definition is a hand edit
code: 'ERR_ASSERTION'
name: 'AssertionError'
stack: |-
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/business/tests/instance-credential-transitions.test.mjs:56:10)
Test.runInAsyncScope (node:async_hooks:226:14)
Test.run (node:internal/test_runner/test:1402:25)
Test.processPendingSubtests (node:internal/test_runner/test:974:18)
Test.postRun (node:internal/test_runner/test:1542:19)
Test.run (node:internal/test_runner/test:1467:12)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
# Subtest: row 285 P: listing derives creative from authority and accepts only existing gitea minting
not ok 5 - row 285 P: listing derives creative from authority and accepts only existing gitea minting
---
duration_ms: 3.425763
type: 'test'
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/business/tests/instance-credential-transitions.test.mjs:61:1'
failureType: 'testCodeFailure'
error: |-
Expected values to be strictly deep-equal:
+ actual - expected
{
+ accepted: false,
- accepted: true,
services: [
'gitea'
]
}
code: 'ERR_ASSERTION'
name: 'AssertionError'
expected:
services:
0: 'gitea'
accepted: true
actual:
services:
0: 'gitea'
accepted: false
operator: 'deepStrictEqual'
stack: |-
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/business/tests/instance-credential-transitions.test.mjs:63:10)
Test.runInAsyncScope (node:async_hooks:226:14)
Test.run (node:internal/test_runner/test:1402:25)
Test.processPendingSubtests (node:internal/test_runner/test:974:18)
Test.postRun (node:internal/test_runner/test:1542:19)
Test.run (node:internal/test_runner/test:1467:12)
async Test.processPendingSubtests (node:internal/test_runner/test:974:7)
...
1..5
# tests 5
# suites 0
# pass 2
# fail 3
# cancelled 0
# skipped 0
# todo 0
# duration_ms 81.442767
@@ -0,0 +1,208 @@
TAP version 13
# Subtest: row 285 P: creative equal-service changes preserve every existing credential reference
ok 1 - row 285 P: creative equal-service changes preserve every existing credential reference
---
duration_ms: 25.058981
type: 'test'
...
# Subtest: row 285 P: creative declared-service mismatch refuses even when host has no reference
ok 2 - row 285 P: creative declared-service mismatch refuses even when host has no reference
---
duration_ms: 4.656078
type: 'test'
...
# Subtest: row 285 P: an equal-service non-creative target keeps the base credential refusal
ok 3 - row 285 P: an equal-service non-creative target keeps the base credential refusal
---
duration_ms: 4.061092
type: 'test'
...
# Subtest: row 285 P: business validation precedes the creative credential fence
ok 4 - row 285 P: business validation precedes the creative credential fence
---
duration_ms: 4.051028
type: 'test'
...
# Subtest: row 285 P: listing derives creative from authority and accepts only existing gitea minting
ok 5 - row 285 P: listing derives creative from authority and accepts only existing gitea minting
---
duration_ms: 2.909261
type: 'test'
...
# Subtest: C2-04: instance settings skip a library while checking a later code project
ok 6 - C2-04: instance settings skip a library while checking a later code project
---
duration_ms: 29.605697
type: 'test'
...
# Subtest: row 165 read lists each instance and the definitions add accepts
ok 7 - row 165 read lists each instance and the definitions add accepts
---
duration_ms: 2.641137
type: 'test'
...
# Subtest: row 165 add: two instances join, validate exits 0, the log names the human, and the writer asks for no restart (row 194, D3)
ok 8 - row 165 add: two instances join, validate exits 0, the log names the human, and the writer asks for no restart (row 194, D3)
---
duration_ms: 89.479348
type: 'test'
...
# Subtest: row 165 change: definition, vars and launch membership log before and after; none asks for a restart, the bus reloads (row 194, D3)
ok 9 - row 165 change: definition, vars and launch membership log before and after; none asks for a restart, the bus reloads (row 194, D3)
---
duration_ms: 107.955468
type: 'test'
...
# Subtest: row 165 refuses each validation failure and leaves the file's bytes alone
ok 10 - row 165 refuses each validation failure and leaves the file's bytes alone
---
duration_ms: 35.287908
type: 'test'
...
# Subtest: T19 add of a credentialed definition writes store references dated today, names its bot, and validate exits 0
ok 11 - T19 add of a credentialed definition writes store references dated today, names its bot, and validate exits 0
---
duration_ms: 86.712516
type: 'test'
...
# Subtest: T19 add of a definition that declares host writes references for its token services only
ok 12 - T19 add of a definition that declares host writes references for its token services only
---
duration_ms: 11.44187
type: 'test'
...
# Subtest: row 165 refuses a definition change to or from one that declares credentials
ok 13 - row 165 refuses a definition change to or from one that declares credentials
---
duration_ms: 5.177352
type: 'test'
...
# Subtest: row 165 a vars or launch change on an instance with its binding succeeds and keeps the binding
ok 14 - row 165 a vars or launch change on an instance with its binding succeeds and keeps the binding
---
duration_ms: 72.703296
type: 'test'
...
# Subtest: row 165 refuses an END_PROTECTED definition and every change to a protected instance
ok 15 - row 165 refuses an END_PROTECTED definition and every change to a protected instance
---
duration_ms: 8.093901
type: 'test'
...
# Subtest: row 165 refuses while a project file doesn't resolve, as validate would
ok 16 - row 165 refuses while a project file doesn't resolve, as validate would
---
duration_ms: 18.126581
type: 'test'
...
# Subtest: row 165 refuses a stale revision and leaves the file's bytes alone
ok 17 - row 165 refuses a stale revision and leaves the file's bytes alone
---
duration_ms: 12.248392
type: 'test'
...
# Subtest: row 65 an instance write refuses harness-off, thinking-unsupported, an unknown model and a partial fallback
ok 18 - row 65 an instance write refuses harness-off, thinking-unsupported, an unknown model and a partial fallback
---
duration_ms: 35.166234
type: 'test'
...
# Subtest: row 213 a creative instance is the human's: add, vars and definition changes, persona digest only
ok 19 - row 213 a creative instance is the human's: add, vars and definition changes, persona digest only
---
duration_ms: 85.059334
type: 'test'
...
# Subtest: row 256 T1-T3, T5 the human deletes a creative instance, no other actor does, and the assistant stays
ok 20 - row 256 T1-T3, T5 the human deletes a creative instance, no other actor does, and the assistant stays
---
duration_ms: 93.04184
type: 'test'
...
# Subtest: row 256 T4 the human's delete of the only listed instance, a creative one, is the last-listed refusal
ok 21 - row 256 T4 the human's delete of the only listed instance, a creative one, is the last-listed refusal
---
duration_ms: 3.339348
type: 'test'
...
# Subtest: T6 delete refuses in the design's order and leaves the file's bytes alone
ok 22 - T6 delete refuses in the design's order and leaves the file's bytes alone
---
duration_ms: 29.486891
type: 'test'
...
# Subtest: T6 delete refuses the last listed instance
ok 23 - T6 delete refuses the last listed instance
---
duration_ms: 3.154392
type: 'test'
...
# Subtest: T6 a clean delete removes the entry and its own references, adds retired, and the name can't come back
ok 24 - T6 a clean delete removes the entry and its own references, adds retired, and the name can't come back
---
duration_ms: 83.9085
type: 'test'
...
# Subtest: T7 veto: keep, unkeep, nohire and hire each write once, a repeat is no change, and the log names the human
ok 25 - T7 veto: keep, unkeep, nohire and hire each write once, a repeat is no change, and the log names the human
---
duration_ms: 117.121239
type: 'test'
...
# Subtest: T7 veto refuses an unknown or END_PROTECTED keep, a bad request, a stale revision and a business without launch
ok 26 - T7 veto refuses an unknown or END_PROTECTED keep, a bad request, a stale revision and a business without launch
---
duration_ms: 19.203594
type: 'test'
...
# Subtest: D2.2 hire adds and lists a new instance, logs the chief's context, and sets only model and limits
ok 27 - D2.2 hire adds and lists a new instance, logs the chief's context, and sets only model and limits
---
duration_ms: 80.802635
type: 'test'
...
# Subtest: D2.2 hire refuses noHire, a kept name and a listed name, and re-lists a fired one only as it was
ok 28 - D2.2 hire refuses noHire, a kept name and a listed name, and re-lists a fired one only as it was
---
duration_ms: 22.788496
type: 'test'
...
# Subtest: D2.2 fire delists and keeps the entry, a repeat is done with no write, and each refusal holds
ok 29 - D2.2 fire delists and keeps the entry, a repeat is done with no write, and each refusal holds
---
duration_ms: 83.151242
type: 'test'
...
# Subtest: row 256 checkDelete passes the human's creative delete and refuses another actor's; fire still refuses
ok 30 - row 256 checkDelete passes the human's creative delete and refuses another actor's; fire still refuses
---
duration_ms: 4.881667
type: 'test'
...
# Subtest: row 239 T1 a fire on a revision that goes stale before the writer's lock refuses there and revokes nothing
ok 31 - row 239 T1 a fire on a revision that goes stale before the writer's lock refuses there and revokes nothing
---
duration_ms: 5.083378
type: 'test'
...
# Subtest: row 239 T2 a write after the revoke refused before publication carries revoked, and the file keeps the edit
ok 32 - row 239 T2 a write after the revoke refused before publication carries revoked, and the file keeps the edit
---
duration_ms: 8.12204
type: 'test'
...
# Subtest: row 239 T3 any error after the revoke carries revoked, for a fire and a delete; a revoke that throws carries nothing
ok 33 - row 239 T3 any error after the revoke carries revoked, for a fire and a delete; a revoke that throws carries nothing
---
duration_ms: 28.075765
type: 'test'
...
1..33
# tests 33
# suites 0
# pass 33
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 764.196213
@@ -0,0 +1 @@
/mnt/storage/scratch/tmp/SzhU3V
@@ -0,0 +1,8 @@
bus: files=111 tests=975 pass=974 fail=1 skip=0 cancelled=0
business: files=32 tests=277 pass=274 fail=3 skip=0 cancelled=0
cli: files=68 tests=989 pass=987 fail=1 skip=1 cancelled=0
webui: files=66 tests=418 pass=418 fail=0 skip=0 cancelled=0
harness: files=14 tests=172 pass=165 fail=7 skip=0 cancelled=0
plugins: files=9 tests=119 pass=119 fail=0 skip=0 cancelled=0
all12 scripts exit0
CLI stack-release uses completed1800s retry224/224; initial300s exit124 retained.
@@ -0,0 +1,21 @@
agents/magica/work/queue-285/gate-r4-collect/bus/citation-runtime.test.mjs.log
not ok 1 - C2-06 runtime reads changed and unreadable reply limits without restarting
agents/magica/work/queue-285/gate-r4-collect/business/instance-settings.test.mjs.log
not ok 5 - row 165 refuses each validation failure and leaves the file's bytes alone
not ok 14 - row 213 a creative instance is the human's: add, vars and definition changes, persona digest only
agents/magica/work/queue-285/gate-r4-collect/business/lifecycle-settings.test.mjs.log
not ok 7 - D2.2 hire refuses noHire, a kept name and a listed name, and re-lists a fired one only as it was
agents/magica/work/queue-285/gate-r4-collect/cli/launcher.test.mjs.log
not ok 20 - row 213 a creative instance's persona is read from <configDir>/personas: off its digest the launch fails with the mismatch as its reason
agents/magica/work/queue-285/gate-r4-collect/harness/creative.test.mjs.log
not ok 1 - M2: the gate refuses write, edit and bash to every creative role on pi and claude-code
not ok 2 - M6: no creative session gets raise_decision; the assistant and the chief of staff keep it
not ok 3 - web: research and companion get the broker's typed web tools, and a harness-builtin source refuses web-source-not-allowed
not ok 4 - persona: the block sits between the contract and \#\# This session, fenced, with the name and digest
not ok 5 - persona: each unsafe or unpinned file refuses before the bundle directory is made
not ok 6 - adapters pass the prompt file's absolute path; the persona and the prompt text never sit in argv
not ok 7 - the pi adapter refuses a missing, unreadable or directory prompt file before pi starts
@@ -0,0 +1,4 @@
2026-10-24T11:34:25.664819+00:00 business/lifecycle-settings.test.mjs exit=1 # tests 12; # pass 11; # fail 1; # cancelled 0; # skipped 0
2026-10-24T11:41:34.105275+00:00 cli/launcher.test.mjs exit=1 # tests 34; # pass 33; # fail 1; # cancelled 0; # skipped 0
2026-10-24T11:48:56.409810+00:00 cli/stack-release.test.mjs exit=124
2026-10-24T11:55:02.930926+00:00 harness/creative.test.mjs exit=1 # tests 7; # pass 0; # fail 7; # cancelled 0; # skipped 0
@@ -0,0 +1 @@
packages/bus/tests/citation-runtime.test.mjs: chief-library-gitea-required; failed tests=1
@@ -0,0 +1,70 @@
TAP version 13
# Subtest: R4: the timer sweep after a hand edit ends only the lost user's run; its next call refuses thread-revoked
ok 1 - R4: the timer sweep after a hand edit ends only the lost user's run; its next call refuses thread-revoked
---
duration_ms: 32.02841
type: 'test'
...
# Subtest: R4: an expiry with no write and no request ends the run at the next timer sweep
ok 2 - R4: an expiry with no write and no request ends the run at the next timer sweep
---
duration_ms: 29.41202
type: 'test'
...
# Subtest: R4: a downgrade to viewer is a loss
ok 3 - R4: a downgrade to viewer is a loss
---
duration_ms: 25.347286
type: 'test'
...
# Subtest: R4: another user's request after a hand edit ends the lost user's run, and its own run stays
ok 4 - R4: another user's request after a hand edit ends the lost user's run, and its own run stays
---
duration_ms: 25.472628
type: 'test'
...
# Subtest: R4: a request reads the access file only when its stamp changed, once per change
ok 5 - R4: a request reads the access file only when its stamp changed, once per change
---
duration_ms: 22.746748
type: 'test'
...
# Subtest: R4: access.reload ends the lost runs at once for the human; the tester, a reader, an agent and a user are refused
ok 6 - R4: access.reload ends the lost runs at once for the human; the tester, a reader, an agent and a user are refused
---
duration_ms: 26.498161
type: 'test'
...
# Subtest: R4: threadsState marks revoked: true on the lost user's thread only, a pending message included
ok 7 - R4: threadsState marks revoked: true on the lost user's thread only, a pending message included
---
duration_ms: 17.601075
type: 'test'
...
# Subtest: R4: threadsState after an expiry with no write and no sweep ends the claim before it marks the row revoked
ok 8 - R4: threadsState after an expiry with no write and no sweep ends the claim before it marks the row revoked
---
duration_ms: 22.480125
type: 'test'
...
# Subtest: R4: a new run of a revoked thread refuses thread-revoked at bind and at claim; a rebind is allowed
ok 9 - R4: a new run of a revoked thread refuses thread-revoked at bind and at claim; a rebind is allowed
---
duration_ms: 18.323686
type: 'test'
...
# Subtest: R4 runtime: a hand edit ends the run at the first timer period, intervalMs is checked, and close stops the timer
ok 10 - R4 runtime: a hand edit ends the run at the first timer period, intervalMs is checked, and close stops the timer
---
duration_ms: 53.003165
type: 'test'
...
1..10
# tests 10
# suites 0
# pass 10
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 393.240976
@@ -0,0 +1,28 @@
TAP version 13
# Subtest: REQ-LIMIT-4 3h copy migrates to 3i: every row keeps its seq, the sequence carries over, and only the account CHECK changes
ok 1 - REQ-LIMIT-4 3h copy migrates to 3i: every row keeps its seq, the sequence carries over, and only the account CHECK changes
---
duration_ms: 89.223993
type: 'test'
...
# Subtest: REQ-LIMIT-4 a 3h→3i step that fails partway leaves the store at 3h with every row, the sequence and the schema intact
ok 2 - REQ-LIMIT-4 a 3h→3i step that fails partway leaves the store at 3h with every row, the sequence and the schema intact
---
duration_ms: 100.045868
type: 'test'
...
# Subtest: REQ-LIMIT-4 the 3h engine refuses a migrated store, migrating or not, and leaves it as it was
ok 3 - REQ-LIMIT-4 the 3h engine refuses a migrated store, migrating or not, and leaves it as it was
---
duration_ms: 88.115003
type: 'test'
...
1..3
# tests 3
# suites 0
# pass 3
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 344.890477
@@ -0,0 +1,100 @@
TAP version 13
# Subtest: parseAddress: one
ok 1 - parseAddress: one
---
duration_ms: 1.131296
type: 'test'
...
# Subtest: parseAddress: many
ok 2 - parseAddress: many
---
duration_ms: 0.102995
type: 'test'
...
# Subtest: parseAddress: repeat
ok 3 - parseAddress: repeat
---
duration_ms: 0.079576
type: 'test'
...
# Subtest: parseAddress: plain
ok 4 - parseAddress: plain
---
duration_ms: 0.081185
type: 'test'
...
# Subtest: parseAddress: stop
ok 5 - parseAddress: stop
---
duration_ms: 0.08717
type: 'test'
...
# Subtest: parseAddress: EOF tag
ok 6 - parseAddress: EOF tag
---
duration_ms: 0.08155
type: 'test'
...
# Subtest: parseAddress: EOF last tag
ok 7 - parseAddress: EOF last tag
---
duration_ms: 0.069714
type: 'test'
...
# Subtest: parseAddress: leading whitespace
ok 8 - parseAddress: leading whitespace
---
duration_ms: 0.087843
type: 'test'
...
# Subtest: parseAddress: tags only
ok 9 - parseAddress: tags only
---
duration_ms: 0.082623
type: 'test'
...
# Subtest: parseAddress: empty
ok 10 - parseAddress: empty
---
duration_ms: 0.144492
type: 'test'
...
# Subtest: parseAddress: whitespace
ok 11 - parseAddress: whitespace
---
duration_ms: 0.074327
type: 'test'
...
# Subtest: parseAddress: bare at
ok 12 - parseAddress: bare at
---
duration_ms: 0.073012
type: 'test'
...
# Subtest: parseAddress: punctuation is a name
ok 13 - parseAddress: punctuation is a name
---
duration_ms: 0.051354
type: 'test'
...
# Subtest: parseAddress rejects non-text without coercion
ok 14 - parseAddress rejects non-text without coercion
---
duration_ms: 0.2938
type: 'test'
...
# Subtest: the mounted address parser has no import dependency
ok 15 - the mounted address parser has no import dependency
---
duration_ms: 0.194185
type: 'test'
...
1..15
# tests 15
# suites 0
# pass 15
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 50.821891
@@ -0,0 +1,76 @@
TAP version 13
# Subtest: agents: a held role with nothing on the bus is idle; a role session gets the claim rows unchanged
ok 1 - agents: a held role with nothing on the bus is idle; a role session gets the claim rows unchanged
---
duration_ms: 21.615667
type: 'test'
...
# Subtest: agents: working counts what the holder received and has not read; routed alone is not working
ok 2 - agents: working counts what the holder received and has not read; routed alone is not working
---
duration_ms: 20.934044
type: 'test'
...
# Subtest: agents: input needed is the role's open decisions routed to the human, gated first, then oldest
ok 3 - agents: input needed is the role's open decisions routed to the human, gated first, then oldest
---
duration_ms: 33.084534
type: 'test'
...
# Subtest: agents: working wins over waiting, and Input needed still shows
ok 4 - agents: working wins over waiting, and Input needed still shows
---
duration_ms: 16.320454
type: 'test'
...
# Subtest: agents: a new holder doesn't inherit what the last one left unread; decisions stay with the role
ok 5 - agents: a new holder doesn't inherit what the last one left unread; decisions stay with the role
---
duration_ms: 17.925665
type: 'test'
...
# Subtest: agents: state reads only its own business, even for a run name both use
ok 6 - agents: state reads only its own business, even for a run name both use
---
duration_ms: 16.434999
type: 'test'
...
# Subtest: agents: a message the holder released unread is stranded; the next holder gets nothing and cannot read it
ok 7 - agents: a message the holder released unread is stranded; the next holder gets nothing and cannot read it
---
duration_ms: 25.805217
type: 'test'
...
# Subtest: agents: a message the holder read is not stranded; one the current holder has not read is not listed
ok 8 - agents: a message the holder read is not stranded; one the current holder has not read is not listed
---
duration_ms: 20.196847
type: 'test'
...
# Subtest: agents: stranded is oldest first and capped at 50 for a role
ok 9 - agents: stranded is oldest first and capped at 50 for a role
---
duration_ms: 87.529983
type: 'test'
...
# Subtest: agents: stranded is per role and per business
ok 10 - agents: stranded is per role and per business
---
duration_ms: 32.078053
type: 'test'
...
# Subtest: agents: a message routed to a held role and not yet received is not stranded
ok 11 - agents: a message routed to a held role and not yet received is not stranded
---
duration_ms: 13.271239
type: 'test'
...
1..11
# tests 11
# suites 0
# pass 11
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 380.059351
@@ -0,0 +1,46 @@
TAP version 13
# Subtest: REQ-DEC an approval outlives its run and a broker restart; a new run of the instance consumes it once
ok 1 - REQ-DEC an approval outlives its run and a broker restart; a new run of the instance consumes it once
---
duration_ms: 39.215325
type: 'test'
...
# Subtest: REQ-DEC another instance of the same definition cannot consume an approval, and its refusal consumes nothing
ok 2 - REQ-DEC another instance of the same definition cannot consume an approval, and its refusal consumes nothing
---
duration_ms: 17.857211
type: 'test'
...
# Subtest: REQ-DEC REQ-THREAD-1 a thread approval is consumed only by a run holding the same thread
ok 3 - REQ-DEC REQ-THREAD-1 a thread approval is consumed only by a run holding the same thread
---
duration_ms: 24.147215
type: 'test'
...
# Subtest: REQ-DEC a later run of the same instance supersedes an open decision; another instance cannot
ok 4 - REQ-DEC a later run of the same instance supersedes an open decision; another instance cannot
---
duration_ms: 20.597329
type: 'test'
...
# Subtest: REQ-DEC REQ-THREAD-1 a thread decision is superseded only from the same thread
ok 5 - REQ-DEC REQ-THREAD-1 a thread decision is superseded only from the same thread
---
duration_ms: 21.627221
type: 'test'
...
# Subtest: REQ-DEC REQ-THREAD-1 a thread instance decision raised before row 121 is not consumed or superseded by any thread run
ok 6 - REQ-DEC REQ-THREAD-1 a thread instance decision raised before row 121 is not consumed or superseded by any thread run
---
duration_ms: 28.409388
type: 'test'
...
1..6
# tests 6
# suites 0
# pass 6
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 229.63663
@@ -0,0 +1,106 @@
TAP version 13
# Subtest: launch identity is stamped, payload identity is refused and stale holder cannot send
ok 1 - launch identity is stamped, payload identity is refused and stale holder cannot send
---
duration_ms: 31.731209
type: 'test'
...
# Subtest: decision classes route from policy; gated resolution is human-only, choice and target must match
ok 2 - decision classes route from policy; gated resolution is human-only, choice and target must match
---
duration_ms: 23.320799
type: 'test'
...
# Subtest: claim exclusion, holder release, gated revoke and rerouting to a new holder are atomic
ok 3 - claim exclusion, holder release, gated revoke and rerouting to a new holder are atomic
---
duration_ms: 24.306613
type: 'test'
...
# Subtest: launch events require a human CLI capability; generic emit cannot forge authority events
ok 4 - launch events require a human CLI capability; generic emit cannot forge authority events
---
duration_ms: 15.578919
type: 'test'
...
# Subtest: within-role decisions close atomically and invalid options or blocking omissions refuse
ok 5 - within-role decisions close atomically and invalid options or blocking omissions refuse
---
duration_ms: 17.034377
type: 'test'
...
# Subtest: a recommendation that is not exactly one option key refuses invalid-recommendation after the options
ok 6 - a recommendation that is not exactly one option key refuses invalid-recommendation after the options
---
duration_ms: 26.941122
type: 'test'
...
# Subtest: observer capabilities read human inbox but cannot mutate or forge launch identity
ok 7 - observer capabilities read human inbox but cannot mutate or forge launch identity
---
duration_ms: 16.772108
type: 'test'
...
# Subtest: task action subjects and linked decision trail are complete and ordered
ok 8 - task action subjects and linked decision trail are complete and ordered
---
duration_ms: 24.460932
type: 'test'
...
# Subtest: launch binding is durable and reconnecting requires the identical trusted record
ok 9 - launch binding is durable and reconnecting requires the identical trusted record
---
duration_ms: 14.228603
type: 'test'
...
# Subtest: business isolation includes inherited object names and cross-business message references
ok 10 - business isolation includes inherited object names and cross-business message references
---
duration_ms: 19.738271
type: 'test'
...
# Subtest: authority never transfers between action, target, unresolved or replaced role holder; a later run of the instance keeps it
ok 11 - authority never transfers between action, target, unresolved or replaced role holder; a later run of the instance keeps it
---
duration_ms: 27.060905
type: 'test'
...
# Subtest: task projection uses schema current view, skipping earlier and equal-start polls
ok 12 - task projection uses schema current view, skipping earlier and equal-start polls
---
duration_ms: 14.972182
type: 'test'
...
# Subtest: revocation permanently bars the old run from reclaiming first, including after broker restart
ok 13 - revocation permanently bars the old run from reclaiming first, including after broker restart
---
duration_ms: 24.455057
type: 'test'
...
# Subtest: empty message references refuse before storage; refusal-evidence failure stays a typed error
ok 14 - empty message references refuse before storage; refusal-evidence failure stays a typed error
---
duration_ms: 15.456487
type: 'test'
...
# Subtest: both arbiters require human resolution when their cross-role route is themselves
ok 15 - both arbiters require human resolution when their cross-role route is themselves
---
duration_ms: 22.514528
type: 'test'
...
# Subtest: the shipped coder role raises task.reassign as gated to the human; task.scope.change stays cross-role
ok 16 - the shipped coder role raises task.reassign as gated to the human; task.scope.change stays cross-role
---
duration_ms: 21.417074
type: 'test'
...
1..16
# tests 16
# suites 0
# pass 16
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 424.573875
@@ -0,0 +1,16 @@
TAP version 13
# Subtest: S1 adapter takes resolved limits and refs, rejects mismatched instance, never mutates input
ok 1 - S1 adapter takes resolved limits and refs, rejects mismatched instance, never mutates input
---
duration_ms: 1.243514
type: 'test'
...
1..1
# tests 1
# suites 0
# pass 1
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 55.281696
@@ -0,0 +1,22 @@
TAP version 13
# Subtest: channel conversion preserves the four proof/transport byte baselines and modules cannot import a proof caller
ok 1 - channel conversion preserves the four proof/transport byte baselines and modules cannot import a proof caller
---
duration_ms: 0.970322
type: 'test'
...
# Subtest: channel recovery still requires the same shim path and rejects an absent or forged proof
ok 2 - channel recovery still requires the same shim path and rejects an absent or forged proof
---
duration_ms: 442.677911
type: 'test'
...
1..2
# tests 2
# suites 0
# pass 2
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 552.683865
@@ -0,0 +1,271 @@
TAP version 13
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# Subtest: REQ-COS-1, REQ-ROLE-2: the chief of staff ends a run with a reason and no decision, and the reason is logged
ok 1 - REQ-COS-1, REQ-ROLE-2: the chief of staff ends a run with a reason and no decision, and the reason is logged
---
duration_ms: 30.865375
type: 'test'
...
# Subtest: REQ-ROLE-2: a role without role.end still needs a resolved decision to revoke
ok 2 - REQ-ROLE-2: a role without role.end still needs a resolved decision to revoke
---
duration_ms: 28.553456
type: 'test'
...
# Subtest: REQ-ROLE-2: storage accepts a revoke with a reason or a decision and aborts one with neither
ok 3 - REQ-ROLE-2: storage accepts a revoke with a reason or a decision and aborts one with neither
---
duration_ms: 21.042362
type: 'test'
...
# Subtest: REQ-ROLE-2: the chief of staff may still cite a decision, and a decision alone is the old path
ok 4 - REQ-ROLE-2: the chief of staff may still cite a decision, and a decision alone is the old path
---
duration_ms: 20.422182
type: 'test'
...
# Subtest: REQ-ROLE-2: a role without role.end still ends a run through a resolved decision, which is recorded and has no reason
ok 5 - REQ-ROLE-2: a role without role.end still ends a run through a resolved decision, which is recorded and has no reason
---
duration_ms: 23.388668
type: 'test'
...
# Subtest: REQ-ROLE-2: a reason is required, bounded, and never sent with a decision
ok 6 - REQ-ROLE-2: a reason is required, bounded, and never sent with a decision
---
duration_ms: 24.135807
type: 'test'
...
# Subtest: REQ-COS-1: the chief of staff cannot end its own run; its end of the assistant stops the assistant's thread run
ok 7 - REQ-COS-1: the chief of staff cannot end its own run; its end of the assistant stops the assistant's thread run
---
duration_ms: 24.370186
type: 'test'
...
# Subtest: REQ-LIMIT-1, REQ-COS-1: organization.set from the chief of staff reaches the shared writer, named as the actor
ok 8 - REQ-LIMIT-1, REQ-COS-1: organization.set from the chief of staff reaches the shared writer, named as the actor
---
duration_ms: 20.299878
type: 'test'
...
# Subtest: REQ-LIMIT-1, REQ-COS-1: a refused organization.set logs action.refused and no action.allowed, like a refused limits.set
ok 9 - REQ-LIMIT-1, REQ-COS-1: a refused organization.set logs action.refused and no action.allowed, like a refused limits.set
---
duration_ms: 26.858588
type: 'test'
...
# Subtest: REQ-LIMIT-1: organization.set is refused for every caller whose role file lacks organization.change
ok 10 - REQ-LIMIT-1: organization.set is refused for every caller whose role file lacks organization.change
---
duration_ms: 28.867922
type: 'test'
...
# Subtest: REQ-LIMIT-1: the chief of staff is logged as allowed, and organization.set takes only the human's keys
ok 11 - REQ-LIMIT-1: the chief of staff is logged as allowed, and organization.set takes only the human's keys
---
duration_ms: 31.588315
type: 'test'
...
# Subtest: REQ-COS-1: organization.revision answers the revision alone to the chief of staff and spends nothing
ok 12 - REQ-COS-1: organization.revision answers the revision alone to the chief of staff and spends nothing
---
duration_ms: 24.949595
type: 'test'
...
# Subtest: REQ-COS-1, REQ-LIMIT-1: organization.revision is refused for every caller whose role file lacks organization.change
ok 13 - REQ-COS-1, REQ-LIMIT-1: organization.revision is refused for every caller whose role file lacks organization.change
---
duration_ms: 30.676172
type: 'test'
...
# Subtest: REQ-ROLE-3, REQ-LIMIT-1: a chief-of-staff change is validated, written and logged like a human's; an invalid one is refused
ok 14 - REQ-ROLE-3, REQ-LIMIT-1: a chief-of-staff change is validated, written and logged like a human's; an invalid one is refused
---
duration_ms: 86.773254
type: 'test'
...
# Subtest: REQ-COS-1: the chief of staff reads the revision, changes the file with it, and reads again after a stale one is refused
ok 15 - REQ-COS-1: the chief of staff reads the revision, changes the file with it, and reads again after a stale one is refused
---
duration_ms: 73.714409
type: 'test'
...
# Subtest: Q169: the chief of staff's change of the assistant is validated, written and logged; a stale or protection-stripping one is refused
ok 16 - Q169: the chief of staff's change of the assistant is validated, written and logged; a stale or protection-stripping one is refused
---
duration_ms: 73.877399
type: 'test'
...
# Subtest: row 65, Q169: the chief's change of the assistant's route runs the routing checks, and a valid one saves as the chief
ok 17 - row 65, Q169: the chief's change of the assistant's route runs the routing checks, and a valid one saves as the chief
---
duration_ms: 55.380527
type: 'test'
...
# Subtest: REQ-ROLE-2, REQ-COS-1: the 3c→3d migration lets the chief of staff end a held role with a reason; neither is still refused
ok 18 - REQ-ROLE-2, REQ-COS-1: the 3c→3d migration lets the chief of staff end a held role with a reason; neither is still refused
---
duration_ms: 70.002475
type: 'test'
...
# Subtest: row 194 T10: the chief's reason end of a kept instance refuses instance-kept, holds the claim and spends nothing
ok 19 - row 194 T10: the chief's reason end of a kept instance refuses instance-kept, holds the claim and spends nothing
---
duration_ms: 20.372425
type: 'test'
...
# Subtest: row 194 T10 (Q2): a role.revoke citing a decision the human resolved still ends a kept run
ok 20 - row 194 T10 (Q2): a role.revoke citing a decision the human resolved still ends a kept run
---
duration_ms: 21.179087
type: 'test'
...
# Subtest: row 194 T10 (B7): the chief's organization.set of a kept instance's model refuses before the writer; the human's limits.set does not
ok 21 - row 194 T10 (B7): the chief's organization.set of a kept instance's model refuses before the writer; the human's limits.set does not
---
duration_ms: 21.491242
type: 'test'
...
# Subtest: row 194 T13: organization.set and limits.set refuse the launch, retired, keep and noHire keys before the writer
ok 22 - row 194 T13: organization.set and limits.set refuse the launch, retired, keep and noHire keys before the writer
---
duration_ms: 24.658061
type: 'test'
...
# Subtest: row 194 T18 (D2.4): from a chief session veto.set and instances.set refuse, and nothing reaches the writer
ok 23 - row 194 T18 (D2.4): from a chief session veto.set and instances.set refuse, and nothing reaches the writer
---
duration_ms: 26.240316
type: 'test'
...
# Subtest: row 194 T8: the chief hires with a reason and no decision, the writer gets the reason as context, and the log names it
ok 24 - row 194 T8: the chief hires with a reason and no decision, the writer gets the reason as context, and the log names it
---
duration_ms: 22.622978
type: 'test'
...
# Subtest: row 194 T11: on a bus with two businesses, the chief of one hires and fires only in its own
ok 25 - row 194 T11: on a bus with two businesses, the chief of one hires and fires only in its own
---
duration_ms: 20.021868
type: 'test'
...
# Subtest: row 194 T8: hire and fire need a reason of 1 to 500 characters and refuse a decision key
ok 26 - row 194 T8: hire and fire need a reason of 1 to 500 characters and refuse a decision key
---
duration_ms: 33.215765
type: 'test'
...
# Subtest: row 194 T8 (sage-1471): only the chief hires or fires; every other role refuses role-not-chief, even one granted the actions
ok 27 - row 194 T8 (sage-1471): only the chief hires or fires; every other role refuses role-not-chief, even one granted the actions
---
duration_ms: 29.355838
type: 'test'
...
# Subtest: row 194 T8 (sage-1471): a chief whose authority lacks role.hire or role.fire refuses decision-required before the writer
ok 28 - row 194 T8 (sage-1471): a chief whose authority lacks role.hire or role.fire refuses decision-required before the writer
---
duration_ms: 47.931873
type: 'test'
...
# Subtest: row 194 T8a: a re-hire of a fired name goes to the writer like a hire, and the writer's refusals pass through by name
ok 29 - row 194 T8a: a re-hire of a fired name goes to the writer like a hire, and the writer's refusals pass through by name
---
duration_ms: 25.681497
type: 'test'
...
# Subtest: row 194 T8b: a definition is hireable only when every action is on HIRE_ALLOWED, it is version 2, the chief lists it and noHire doesn't
ok 30 - row 194 T8b: a definition is hireable only when every action is on HIRE_ALLOWED, it is version 2, the chief lists it and noHire doesn't
---
duration_ms: 736.691272
type: 'test'
...
# Subtest: row 194 T8b: a hire without the role files configured refuses not-configured
ok 31 - row 194 T8b: a hire without the role files configured refuses not-configured
---
duration_ms: 20.404344
type: 'test'
...
# Subtest: row 194 T9: a fire revokes the claim, cancels open requests, asks the launcher to kill the runs, then delists and logs
ok 32 - row 194 T9: a fire revokes the claim, cancels open requests, asks the launcher to kill the runs, then delists and logs
---
duration_ms: 24.342678
type: 'test'
...
# Subtest: row 194 T9a (bus): a fire end's done writes lifecycle.end.killed and lifecycle.end.alive with run and pid, and an unknown stop's reason; a terminate's done or a bad stop refuses
ok 33 - row 194 T9a (bus): a fire end's done writes lifecycle.end.killed and lifecycle.end.alive with run and pid, and an unknown stop's reason; a terminate's done or a bad stop refuses
---
duration_ms: 27.932245
type: 'test'
...
# Subtest: row 194 T9: fire refusals come before step A and leave the claim, the requests and the file alone
ok 34 - row 194 T9: fire refusals come before step A and leave the claim, the requests and the file alone
---
duration_ms: 26.37099
type: 'test'
...
# Subtest: row 194 T9c: a writer failure at B leaves the instance firing, and the repeat delists and logs once
ok 35 - row 194 T9c: a writer failure at B leaves the instance firing, and the repeat delists and logs once
---
duration_ms: 25.60327
type: 'test'
...
# Subtest: row 194 T9c: a failure at C leaves the fire unlogged and the instance firing, and the repeat logs it
ok 36 - row 194 T9c: a failure at C leaves the fire unlogged and the instance firing, and the repeat logs it
---
duration_ms: 27.1223
type: 'test'
...
# Subtest: row 194 W-N1: a fire.done before a later fire.stopped of the same instance leaves it firing; another instance's done does not end it
ok 37 - row 194 W-N1: a fire.done before a later fire.stopped of the same instance leaves it firing; another instance's done does not end it
---
duration_ms: 24.66538
type: 'test'
...
# Subtest: row 194 T10: a hire or fire of a kept name refuses instance-kept before the writer
ok 38 - row 194 T10: a hire or fire of a kept name refuses instance-kept before the writer
---
duration_ms: 21.48409
type: 'test'
...
# Subtest: row 194 T10: a fire the writer's check refuses from the file stops nothing and leaves the instance launchable
ok 39 - row 194 T10: a fire the writer's check refuses from the file stops nothing and leaves the instance launchable
---
duration_ms: 21.272866
type: 'test'
...
# Subtest: row 194 T18: hire and fire take only their own keys, and a refused call writes nothing
ok 40 - row 194 T18: hire and fire take only their own keys, and a refused call writes nothing
---
duration_ms: 29.296147
type: 'test'
...
# Subtest: row 194 T8, T9, T18: through the runtime the chief hires and fires with the real writer, the receipt carries the reason, and a refusal leaves the file alone
ok 41 - row 194 T8, T9, T18: through the runtime the chief hires and fires with the real writer, the receipt carries the reason, and a refusal leaves the file alone
---
duration_ms: 73.146506
type: 'test'
...
# Subtest: row 194 W-N1: the launcher's take of a launch or regenerate of a firing instance closes it as instance-firing
ok 42 - row 194 W-N1: the launcher's take of a launch or regenerate of a firing instance closes it as instance-firing
---
duration_ms: 27.120623
type: 'test'
...
1..42
# tests 42
# suites 0
# pass 42
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 2209.273531
@@ -0,0 +1,28 @@
TAP version 13
# Subtest: C2-06 held library lock gives the agent citation-unavailable and its retry reason
ok 1 - C2-06 held library lock gives the agent citation-unavailable and its retry reason
---
duration_ms: 5158.552056
type: 'test'
...
# Subtest: C2-06 malformed sync state is availability failure, never a fabricated invalid cite
ok 2 - C2-06 malformed sync state is availability failure, never a fabricated invalid cite
---
duration_ms: 32.45412
type: 'test'
...
# Subtest: C2-06 no mirror or freshly initialized empty mirror still means no served citation
ok 3 - C2-06 no mirror or freshly initialized empty mirror still means no served citation
---
duration_ms: 32.119077
type: 'test'
...
1..3
# tests 3
# suites 0
# pass 3
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 5300.691255
@@ -0,0 +1,88 @@
TAP version 13
# Subtest: C2-06 coder send_message guard covers every table refusal; inserts nothing
ok 1 - C2-06 coder send_message guard covers every table refusal; inserts nothing
---
duration_ms: 106.578608
type: 'test'
...
# Subtest: C2-06 research send_message guard covers every table refusal; inserts nothing
ok 2 - C2-06 research send_message guard covers every table refusal; inserts nothing
---
duration_ms: 96.002195
type: 'test'
...
# Subtest: C2-06 stored check carries the file author trailer at an unrelated cited tip
ok 3 - C2-06 stored check carries the file author trailer at an unrelated cited tip
---
duration_ms: 60.674429
type: 'test'
...
# Subtest: C2-06 supporting cite cannot state canon, including a folder also marked playground
ok 4 - C2-06 supporting cite cannot state canon, including a folder also marked playground
---
duration_ms: 41.588011
type: 'test'
...
# Subtest: C2-06 supporting file stores supporting scope and its real agent trailer
ok 5 - C2-06 supporting file stores supporting scope and its real agent trailer
---
duration_ms: 50.407285
type: 'test'
...
# Subtest: C2-06 check evidence and insert are atomic when storing evidence fails
ok 6 - C2-06 check evidence and insert are atomic when storing evidence fails
---
duration_ms: 41.674629
type: 'test'
...
# Subtest: C2-06 live limits change both directions; unreadable file keeps checks and exact fixed texts
ok 7 - C2-06 live limits change both directions; unreadable file keeps checks and exact fixed texts
---
duration_ms: 56.164878
type: 'test'
...
# Subtest: C2-06 page store is session-local, caps 20 fetches and 200 KiB, drops at disconnect
ok 8 - C2-06 page store is session-local, caps 20 fetches and 200 KiB, drops at disconnect
---
duration_ms: 89.612789
type: 'test'
...
# Subtest: C2-06 transport passes safe capped guard reason; ordinary refusal envelope is byte-identical
ok 9 - C2-06 transport passes safe capped guard reason; ordinary refusal envelope is byte-identical
---
duration_ms: 55.976843
type: 'test'
...
# Subtest: C2-06 non-library businesses retain role.claim shape and unguarded free sends
ok 10 - C2-06 non-library businesses retain role.claim shape and unguarded free sends
---
duration_ms: 26.319898
type: 'test'
...
# Subtest: C2-06 thread messages carry file/last evidence with one read per distinct path
ok 11 - C2-06 thread messages carry file/last evidence with one read per distinct path
---
duration_ms: 79.888116
type: 'test'
...
# Subtest: C2-06 guarded request snapshot cannot change between check and insert
ok 12 - C2-06 guarded request snapshot cannot change between check and insert
---
duration_ms: 24.409667
type: 'test'
...
# Subtest: C2-06 library.limits.set is human-only and invalid settings leave file and receipts unchanged
ok 13 - C2-06 library.limits.set is human-only and invalid settings leave file and receipts unchanged
---
duration_ms: 42.292832
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 13
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 860.457252
@@ -0,0 +1,30 @@
TAP version 13
# Subtest: C2-06 runtime reads changed and unreadable reply limits without restarting
not ok 1 - C2-06 runtime reads changed and unreadable reply limits without restarting
---
duration_ms: 5.205368
type: 'test'
location: '/home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/bus/tests/citation-runtime.test.mjs:12:1'
failureType: 'testCodeFailure'
error: 'chief-library-gitea-required: /mnt/storage/scratch/tmp/oUqw8t/citation-runtime-lExQTC/config/businesses/acme.json roles.chief.credentials must reference gitea because this business declares a library'
code: 'ERR_TEST_FAILURE'
name: 'BusinessError'
stack: |-
refuse (file:///home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/business/src/errors.mjs:12:9)
checkRoles (file:///home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/business/src/business.mjs:144:7)
validateBusinessDocument (file:///home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/business/src/business.mjs:251:34)
TestContext.<anonymous> (file:///home/jwoltje/.t3/worktrees/mosaic-stack/magica-row285-r3/packages/bus/tests/citation-runtime.test.mjs:17:19)
Test.runInAsyncScope (node:async_hooks:226:14)
Test.run (node:internal/test_runner/test:1402:25)
Test.start (node:internal/test_runner/test:1262:17)
startSubtestAfterBootstrap (node:internal/test_runner/harness:387:17)
...
1..1
# tests 1
# suites 0
# pass 0
# fail 1
# cancelled 0
# skipped 0
# todo 0
# duration_ms 118.757871
@@ -0,0 +1,22 @@
TAP version 13
# Subtest: comment cursors isolate businesses, move only forward and remain append-only
ok 1 - comment cursors isolate businesses, move only forward and remain append-only
---
duration_ms: 16.350445
type: 'test'
...
# Subtest: only trusted sync writes validated cursors; events and cursor share rollback
ok 2 - only trusted sync writes validated cursors; events and cursor share rollback
---
duration_ms: 11.907002
type: 'test'
...
1..2
# tests 2
# suites 0
# pass 2
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 104.469464
@@ -0,0 +1,40 @@
TAP version 13
# Subtest: explicit 3b copy migration preserves evidence and opens as 3g; normal startup never migrates
ok 1 - explicit 3b copy migration preserves evidence and opens as 3g; normal startup never migrates
---
duration_ms: 66.488214
type: 'test'
...
# Subtest: migration refuses active writers and drifted legacy schemas, with no partial upgrade
ok 2 - migration refuses active writers and drifted legacy schemas, with no partial upgrade
---
duration_ms: 86.256643
type: 'test'
...
# Subtest: named migration registry chains 3b through 3g to a fixture-only future version in order
ok 3 - named migration registry chains 3b through 3g to a fixture-only future version in order
---
duration_ms: 82.117708
type: 'test'
...
# Subtest: migration refuses mismatched source metadata without changing schema or evidence
ok 4 - migration refuses mismatched source metadata without changing schema or evidence
---
duration_ms: 30.203585
type: 'test'
...
# Subtest: offline command migrates only the supplied fixture root and reports usage errors
ok 5 - offline command migrates only the supplied fixture root and reports usage errors
---
duration_ms: 168.374571
type: 'test'
...
1..5
# tests 5
# suites 0
# pass 5
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 505.649983
@@ -0,0 +1,82 @@
TAP version 13
# Subtest: N4: the console verbs are exactly the preview and the console resolve, and decision.resolve is not one
ok 1 - N4: the console verbs are exactly the preview and the console resolve, and decision.resolve is not one
---
duration_ms: 1.068124
type: 'test'
...
# Subtest: bindConsole takes only the business human and a three-string owner subject
ok 2 - bindConsole takes only the business human and a three-string owner subject
---
duration_ms: 30.05527
type: 'test'
...
# Subtest: J1, Q188: only a console cap reaches the console verbs, and a console cap reaches nothing else
ok 3 - J1, Q188: only a console cap reaches the console verbs, and a console cap reaches nothing else
---
duration_ms: 37.544041
type: 'test'
...
# Subtest: preview: the two real answers, a grant summary and the digest, for an open grant request only
ok 4 - preview: the two real answers, a grant summary and the digest, for an open grant request only
---
duration_ms: 31.296805
type: 'test'
...
# Subtest: J1, J2: a decision that is not an eligible grant request refuses both console verbs
ok 5 - J1, J2: a decision that is not an eligible grant request refuses both console verbs
---
duration_ms: 32.974251
type: 'test'
...
# Subtest: N2, J13: a Console approve records via console and the owner, before the executor starts, and the grant runs once
ok 6 - N2, J13: a Console approve records via console and the owner, before the executor starts, and the grant runs once
---
duration_ms: 99.892461
type: 'test'
...
# Subtest: J15: a Console deny closes with the other key and starts nothing
ok 7 - J15: a Console deny closes with the other key and starts nothing
---
duration_ms: 127.896225
type: 'test'
...
# Subtest: J2: approve and deny come from approvalChoice and the options, not a fixed yes and no
ok 8 - J2: approve and deny come from approvalChoice and the options, not a fixed yes and no
---
duration_ms: 153.735022
type: 'test'
...
# Subtest: J11: a stale digest or a key outside the two refuses decision-stale and writes nothing
ok 9 - J11: a stale digest or a key outside the two refuses decision-stale and writes nothing
---
duration_ms: 32.714529
type: 'test'
...
# Subtest: J14: a via console close with no matching human.input approves nothing
ok 10 - J14: a via console close with no matching human.input approves nothing
---
duration_ms: 38.510042
type: 'test'
...
# Subtest: recordEvent keeps human.input reserved, so no agent forges a console answer
ok 11 - recordEvent keeps human.input reserved, so no agent forges a console answer
---
duration_ms: 24.098631
type: 'test'
...
# Subtest: J7: a console proof over the socket binds a cap for its one call and the reply releases it
ok 12 - J7: a console proof over the socket binds a cap for its one call and the reply releases it
---
duration_ms: 79.930736
type: 'test'
...
1..12
# tests 12
# suites 0
# pass 12
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 771.569183
@@ -0,0 +1,36 @@
TAP version 13
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# Subtest: M6: a creative raise refuses decision-not-allowed, cited or not, and no decision row appears; the assistant still raises
ok 1 - M6: a creative raise refuses decision-not-allowed, cited or not, and no decision row appears; the assistant still raises
---
duration_ms: 37.542845
type: 'test'
...
# Subtest: a creative instance sends only to the user and hears only from the user
ok 2 - a creative instance sends only to the user and hears only from the user
---
duration_ms: 44.124804
type: 'test'
...
# Subtest: M10 through the broker: the chief and the tester are refused on bean, the human's limits.set of its models key works
ok 3 - M10 through the broker: the chief and the tester are refused on bean, the human's limits.set of its models key works
---
duration_ms: 75.62517
type: 'test'
...
# Subtest: row 256 T6 the human deletes a creative instance through the broker; the chief and the tester are refused at the verb
ok 4 - row 256 T6 the human deletes a creative instance through the broker; the chief and the tester are refused at the verb
---
duration_ms: 58.332935
type: 'test'
...
1..4
# tests 4
# suites 0
# pass 4
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 322.599671
@@ -0,0 +1,58 @@
TAP version 13
# Subtest: X4: register adds a store reference to the running bus, and issue then writes the key
ok 1 - X4: register adds a store reference to the running bus, and issue then writes the key
---
duration_ms: 13.058658
type: 'test'
...
# Subtest: X4: register runs the constructor's reference checks
ok 2 - X4: register runs the constructor's reference checks
---
duration_ms: 0.634029
type: 'test'
...
# Subtest: X4: register reads no file, so a key file left at the path stays unused, and a live token refuses
ok 3 - X4: register reads no file, so a key file left at the path stays unused, and a live token refuses
---
duration_ms: 7.997699
type: 'test'
...
# Subtest: X3, X4: unregister drops an entry with no token and refuses one with a live token
ok 4 - X3, X4: unregister drops an entry with no token and refuses one with a live token
---
duration_ms: 7.717805
type: 'test'
...
# Subtest: X5: a claim holds the slot, so a second claim and a host.run refuse host-busy until release
ok 5 - X5: a claim holds the slot, so a second claim and a host.run refuse host-busy until release
---
duration_ms: 4.655693
type: 'test'
...
# Subtest: X5: a claim made while a host.run is in flight refuses host-busy
ok 6 - X5: a claim made while a host.run is in flight refuses host-busy
---
duration_ms: 4.71412
type: 'test'
...
# Subtest: X5: a stale release leaves a later claim in place
ok 7 - X5: a stale release leaves a later claim in place
---
duration_ms: 0.374769
type: 'test'
...
# Subtest: X5: abortClaim aborts a live claim and says pending, and revoke's abort reaches a claim too
ok 8 - X5: abortClaim aborts a live claim and says pending, and revoke's abort reaches a claim too
---
duration_ms: 4.882381
type: 'test'
...
1..8
# tests 8
# suites 0
# pass 8
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 95.166772
@@ -0,0 +1,34 @@
TAP version 13
# Subtest: credentials gives human and reader sessions service, account, role, date and state, and nothing else
ok 1 - credentials gives human and reader sessions service, account, role, date and state, and nothing else
---
duration_ms: 18.034544
type: 'test'
...
# Subtest: credentials refuses a role session and any argument
ok 2 - credentials refuses a role session and any argument
---
duration_ms: 15.634635
type: 'test'
...
# Subtest: credentials reads the status on each request, and a broker without one lists none
ok 3 - credentials reads the status on each request, and a broker without one lists none
---
duration_ms: 20.239234
type: 'test'
...
# Subtest: the broker process answers credentials without a token, path or variable in its output, log or store
ok 4 - the broker process answers credentials without a token, path or variable in its output, log or store
---
duration_ms: 153.929182
type: 'test'
...
1..4
# tests 4
# suites 0
# pass 4
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 286.119213
@@ -0,0 +1,82 @@
TAP version 13
# Subtest: T1: a store reference with no file yet starts, and the agent is not-issued until issue
ok 1 - T1: a store reference with no file yet starts, and the agent is not-issued until issue
---
duration_ms: 4.464094
type: 'test'
...
# Subtest: T1: a store path the reference does not own, or no store root, refuses the reference
ok 2 - T1: a store path the reference does not own, or no store root, refuses the reference
---
duration_ms: 0.509555
type: 'test'
...
# Subtest: T1: a wrong mode on the store root, a business dir, an agent dir or the file refuses start
ok 3 - T1: a wrong mode on the store root, a business dir, an agent dir or the file refuses start
---
duration_ms: 1.796932
type: 'test'
...
# Subtest: T1: a missing store root refuses start; a missing {file} reference still refuses start
ok 4 - T1: a missing store root refuses start; a missing {file} reference still refuses start
---
duration_ms: 0.489681
type: 'test'
...
# Subtest: T1: a store file that is a directory or a symlink refuses start
ok 5 - T1: a store file that is a directory or a symlink refuses start
---
duration_ms: 0.705776
type: 'test'
...
# Subtest: T2: useFor keys from the session only
ok 6 - T2: useFor keys from the session only
---
duration_ms: 1.650779
type: 'test'
...
# Subtest: T5: issue, rotate, revoke and delete are live with no restart, and revoke holds across one
ok 7 - T5: issue, rotate, revoke and delete are live with no restart, and revoke holds across one
---
duration_ms: 3.610803
type: 'test'
...
# Subtest: T5: a failed commit leaves the token on disk but not in memory, and a bad token or date writes nothing
ok 8 - T5: a failed commit leaves the token on disk but not in memory, and a bad token or date writes nothing
---
duration_ms: 1.475601
type: 'test'
...
# Subtest: T5: revoke drops the token from memory before the unlink, so a failed unlink still leaves it revoked
ok 9 - T5: revoke drops the token from memory before the unlink, so a failed unlink still leaves it revoked
---
duration_ms: 1.395573
type: 'test'
...
# Subtest: T5: revoke of a {file} reference forgets the token and never unlinks the file
ok 10 - T5: revoke of a {file} reference forgets the token and never unlinks the file
---
duration_ms: 0.50461
type: 'test'
...
# Subtest: T5: delete refuses an agent dir holding anything but tokens
ok 11 - T5: delete refuses an agent dir holding anything but tokens
---
duration_ms: 1.338839
type: 'test'
...
# Subtest: D5: every credentials use( call site is on the allowlist
ok 12 - D5: every credentials use( call site is on the allowlist
---
duration_ms: 35.474802
type: 'test'
...
1..12
# tests 12
# suites 0
# pass 12
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 116.336978
@@ -0,0 +1,22 @@
TAP version 13
# Subtest: row 199: the lifecycle verbs refuse every session but the human, and the tester revokes only
ok 1 - row 199: the lifecycle verbs refuse every session but the human, and the tester revokes only
---
duration_ms: 66.972841
type: 'test'
...
# Subtest: T5: issue, rotate, revoke and delete are live, rewrite the business file and leave one receipt each, with no value anywhere
ok 2 - T5: issue, rotate, revoke and delete are live, rewrite the business file and leave one receipt each, with no value anywhere
---
duration_ms: 83.961285
type: 'test'
...
1..2
# tests 2
# suites 0
# pass 2
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 259.515042
@@ -0,0 +1,40 @@
TAP version 13
# Subtest: only validated broker references load; returned data and exceptions cannot expose a known token
ok 1 - only validated broker references load; returned data and exceptions cannot expose a known token
---
duration_ms: 2.282364
type: 'test'
...
# Subtest: bad file modes, symlinks, repository/data paths, malformed tokens and missing dates refuse
ok 2 - bad file modes, symlinks, repository/data paths, malformed tokens and missing dates refuse
---
duration_ms: 1.313212
type: 'test'
...
# Subtest: expiry refuses use and env references never become client data
ok 3 - expiry refuses use and env references never become client data
---
duration_ms: 0.389757
type: 'test'
...
# Subtest: S1 parsed service refs work, service mismatch refuses, Gitea rotation due is a warning state
ok 4 - S1 parsed service refs work, service mismatch refuses, Gitea rotation due is a warning state
---
duration_ms: 0.88474
type: 'test'
...
# Subtest: opaque tokens shorter than 16 characters refuse before use
ok 5 - opaque tokens shorter than 16 characters refuse before use
---
duration_ms: 0.257912
type: 'test'
...
1..5
# tests 5
# suites 0
# pass 5
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 62.955059
@@ -0,0 +1,106 @@
TAP version 13
# Subtest: each C-suite role file carries the same two lists: human, chief-of-staff, pm, cto
ok 1 - each C-suite role file carries the same two lists: human, chief-of-staff, pm, cto
---
duration_ms: 1.178051
type: 'test'
...
# Subtest: chief-executive-officer: messages to and from the user, chief of staff, pm and cto pass
ok 2 - chief-executive-officer: messages to and from the user, chief of staff, pm and cto pass
---
duration_ms: 46.063799
type: 'test'
...
# Subtest: chief-executive-officer: a message to or from the coder, reviewer or assistant is refused and logged, and nothing is stored
ok 3 - chief-executive-officer: a message to or from the coder, reviewer or assistant is refused and logged, and nothing is stored
---
duration_ms: 37.191813
type: 'test'
...
# Subtest: chief-executive-officer: another C-suite role isn't on the lists either
ok 4 - chief-executive-officer: another C-suite role isn't on the lists either
---
duration_ms: 30.321816
type: 'test'
...
# Subtest: chief-financial-officer: messages to and from the user, chief of staff, pm and cto pass
ok 5 - chief-financial-officer: messages to and from the user, chief of staff, pm and cto pass
---
duration_ms: 37.768466
type: 'test'
...
# Subtest: chief-financial-officer: a message to or from the coder, reviewer or assistant is refused and logged, and nothing is stored
ok 6 - chief-financial-officer: a message to or from the coder, reviewer or assistant is refused and logged, and nothing is stored
---
duration_ms: 34.766322
type: 'test'
...
# Subtest: chief-financial-officer: another C-suite role isn't on the lists either
ok 7 - chief-financial-officer: another C-suite role isn't on the lists either
---
duration_ms: 30.392045
type: 'test'
...
# Subtest: chief-information-officer: messages to and from the user, chief of staff, pm and cto pass
ok 8 - chief-information-officer: messages to and from the user, chief of staff, pm and cto pass
---
duration_ms: 38.097102
type: 'test'
...
# Subtest: chief-information-officer: a message to or from the coder, reviewer or assistant is refused and logged, and nothing is stored
ok 9 - chief-information-officer: a message to or from the coder, reviewer or assistant is refused and logged, and nothing is stored
---
duration_ms: 35.082458
type: 'test'
...
# Subtest: chief-information-officer: another C-suite role isn't on the lists either
ok 10 - chief-information-officer: another C-suite role isn't on the lists either
---
duration_ms: 31.171705
type: 'test'
...
# Subtest: chief-information-security-officer: messages to and from the user, chief of staff, pm and cto pass
ok 11 - chief-information-security-officer: messages to and from the user, chief of staff, pm and cto pass
---
duration_ms: 38.817461
type: 'test'
...
# Subtest: chief-information-security-officer: a message to or from the coder, reviewer or assistant is refused and logged, and nothing is stored
ok 12 - chief-information-security-officer: a message to or from the coder, reviewer or assistant is refused and logged, and nothing is stored
---
duration_ms: 37.899147
type: 'test'
...
# Subtest: chief-information-security-officer: another C-suite role isn't on the lists either
ok 13 - chief-information-security-officer: another C-suite role isn't on the lists either
---
duration_ms: 31.959408
type: 'test'
...
# Subtest: chief-marketing-officer: messages to and from the user, chief of staff, pm and cto pass
ok 14 - chief-marketing-officer: messages to and from the user, chief of staff, pm and cto pass
---
duration_ms: 38.564196
type: 'test'
...
# Subtest: chief-marketing-officer: a message to or from the coder, reviewer or assistant is refused and logged, and nothing is stored
ok 15 - chief-marketing-officer: a message to or from the coder, reviewer or assistant is refused and logged, and nothing is stored
---
duration_ms: 36.454288
type: 'test'
...
# Subtest: chief-marketing-officer: another C-suite role isn't on the lists either
ok 16 - chief-marketing-officer: another C-suite role isn't on the lists either
---
duration_ms: 31.008996
type: 'test'
...
1..16
# tests 16
# suites 0
# pass 16
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 612.792718
@@ -0,0 +1,38 @@
TAP version 13
# limits: {"event":"limit-reached","business":"demo","check":"daily-quota","export":"mayLaunch","subject":{"instance":"coder","provider":"anthropic","model":"opus","account":"jason-max"},"path":["tokens","daily","jason-max"],"limit":0,"count":0,"unknownTurns":0}
# usage: {"event":"usage-unknown","business":"demo","run":"run1","instance":"coder","turn":"399f7745-ec51-473c-9972-2fde5d511475","source":"@none","code":"baseline-unknown"}
# limits: {"event":"limit-reached","business":"demo","check":"daily-quota","export":"mustStop","subject":{"instance":"coder","provider":"anthropic","model":"opus","account":"jason-max"},"path":["tokens","daily","jason-max"],"limit":0,"count":0,"unknownTurns":1}
# usage: {"event":"usage-unknown","business":"demo","run":"run1","instance":"coder","turn":"1d20369e-9c24-48f1-8bb0-159123c6e515","source":"@none","code":"baseline-unknown"}
# Subtest: REQ-LIMIT-2 runtime: limits counts the daily quota, and mayLaunch refuses only the account at it
ok 1 - REQ-LIMIT-2 runtime: limits counts the daily quota, and mayLaunch refuses only the account at it
---
duration_ms: 109.106557
type: 'test'
...
# Subtest: REQ-LIMIT-4 runtime: a run bound with the account writes it on its usage records and stops at the quota
ok 2 - REQ-LIMIT-4 runtime: a run bound with the account writes it on its usage records and stops at the quota
---
duration_ms: 50.518965
type: 'test'
...
# Subtest: REQ-LIMIT-4 runtime: a run bound without an account records null and the daily quota never stops it
ok 3 - REQ-LIMIT-4 runtime: a run bound without an account records null and the daily quota never stops it
---
duration_ms: 44.132095
type: 'test'
...
# Subtest: REQ-LIMIT-4 bindLaunch keeps the account off session.launched, refuses one that is not an identifier, and takes null as none
ok 4 - REQ-LIMIT-4 bindLaunch keeps the account off session.launched, refuses one that is not an identifier, and takes null as none
---
duration_ms: 11.979393
type: 'test'
...
1..4
# tests 4
# suites 0
# pass 4
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 294.164354
@@ -0,0 +1,58 @@
TAP version 13
# Subtest: a human resolve sends the raising role one message from the human, and its request is the answer
ok 1 - a human resolve sends the raising role one message from the human, and its request is the answer
---
duration_ms: 35.676149
type: 'test'
...
# Subtest: a cross-role decision resolved by its arbiter comes from that role and run, with no request
ok 2 - a cross-role decision resolved by its arbiter comes from that role and run, with no request
---
duration_ms: 20.919123
type: 'test'
...
# Subtest: a human withdraw sends one message with the note
ok 3 - a human withdraw sends one message with the note
---
duration_ms: 20.223548
type: 'test'
...
# Subtest: a human seen before the close leaves the request on the close's answer, not the seen
ok 4 - a human seen before the close leaves the request on the close's answer, not the seen
---
duration_ms: 23.705422
type: 'test'
...
# Subtest: the raising run's withdraw, a supersede, a within-role raise and seen send nothing
ok 5 - the raising run's withdraw, a supersede, a within-role raise and seen send nothing
---
duration_ms: 25.191887
type: 'test'
...
# Subtest: refused closes send nothing: invalid-choice, decision-closed, not-resolver
ok 6 - refused closes send nothing: invalid-choice, decision-closed, not-resolver
---
duration_ms: 25.925616
type: 'test'
...
# Subtest: a raising role nobody holds at the close gets the message on the next claim
ok 7 - a raising role nobody holds at the close gets the message on the next claim
---
duration_ms: 21.667199
type: 'test'
...
# Subtest: a human DECISION send keeps its own instruction as the request, not a close's answer
ok 8 - a human DECISION send keeps its own instruction as the request, not a close's answer
---
duration_ms: 20.803709
type: 'test'
...
1..8
# tests 8
# suites 0
# pass 8
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 267.377328
@@ -0,0 +1,40 @@
TAP version 13
# Subtest: a cross-role raise whose arbiter the raiser does not hear from is refused and stores nothing
ok 1 - a cross-role raise whose arbiter the raiser does not hear from is refused and stores nothing
---
duration_ms: 33.262186
type: 'test'
...
# Subtest: a gated raise by a role that does not hear from the human is refused and stores nothing
ok 2 - a gated raise by a role that does not hear from the human is refused and stores nothing
---
duration_ms: 26.351602
type: 'test'
...
# Subtest: a route the raiser hears from is allowed, checked from the route to the raiser
ok 3 - a route the raiser hears from is allowed, checked from the route to the raiser
---
duration_ms: 28.765206
type: 'test'
...
# Subtest: a refused supersede withdraws nothing
ok 4 - a refused supersede withdraws nothing
---
duration_ms: 24.459553
type: 'test'
...
# Subtest: the assistant's within-role and gated raises still work
ok 5 - the assistant's within-role and gated raises still work
---
duration_ms: 25.256673
type: 'test'
...
1..5
# tests 5
# suites 0
# pass 5
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 212.800428
@@ -0,0 +1,52 @@
TAP version 13
# Subtest: roles lists open decisions routed to a role, and never the human inbox
ok 1 - roles lists open decisions routed to a role, and never the human inbox
---
duration_ms: 29.861674
type: 'test'
...
# Subtest: recent lists closed decisions of every route, newest close first, with how each closed
ok 2 - recent lists closed decisions of every route, newest close first, with how each closed
---
duration_ms: 26.912278
type: 'test'
...
# Subtest: recent gives the closing event as closed when the decision was seen first
ok 3 - recent gives the closing event as closed when the decision was seen first
---
duration_ms: 26.360568
type: 'test'
...
# Subtest: recent stops at RECENT rows
ok 4 - recent stops at RECENT rows
---
duration_ms: 76.379396
type: 'test'
...
# Subtest: every row is what trail already gives the same session for that id
ok 5 - every row is what trail already gives the same session for that id
---
duration_ms: 34.663758
type: 'test'
...
# Subtest: a role session can't list decisions, so it can't read another role's open decisions
ok 6 - a role session can't list decisions, so it can't read another role's open decisions
---
duration_ms: 34.464503
type: 'test'
...
# Subtest: decisions is a read: one business, strict arguments, nothing written
ok 7 - decisions is a read: one business, strict arguments, nothing written
---
duration_ms: 36.717285
type: 'test'
...
1..7
# tests 7
# suites 0
# pass 7
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 339.808831
@@ -0,0 +1,52 @@
TAP version 13
# Subtest: endLaunch writes session.ended, releases the run claim and kills its capabilities
ok 1 - endLaunch writes session.ended, releases the run claim and kills its capabilities
---
duration_ms: 30.568901
type: 'test'
...
# Subtest: endLaunch refuses an unknown run, a second end and a rebind of the ended run
ok 2 - endLaunch refuses an unknown run, a second end and a rebind of the ended run
---
duration_ms: 11.454093
type: 'test'
...
# Subtest: a restarted broker refuses to rebind an ended run; a refused rebind leaves the run unbound
ok 3 - a restarted broker refuses to rebind an ended run; a refused rebind leaves the run unbound
---
duration_ms: 13.907467
type: 'test'
...
# Subtest: endLaunch leaves a claim another run took alone
ok 4 - endLaunch leaves a claim another run took alone
---
duration_ms: 14.271719
type: 'test'
...
# Subtest: refuse records action.refused against the caller with the code only
ok 5 - refuse records action.refused against the caller with the code only
---
duration_ms: 10.961408
type: 'test'
...
# Subtest: launches off refuses role.launch with launch-revoked until launches on
ok 6 - launches off refuses role.launch with launch-revoked until launches on
---
duration_ms: 15.823975
type: 'test'
...
# Subtest: broker process: launch ops authorize role.launch, record refusals and end runs
ok 7 - broker process: launch ops authorize role.launch, record refusals and end runs
---
duration_ms: 154.315753
type: 'test'
...
1..7
# tests 7
# suites 0
# pass 7
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 330.303398
@@ -0,0 +1,154 @@
TAP version 13
# Subtest: row 281 T2: a fire with host grants on two hosts and a Gitea grant answers with a job, then revokes all three
ok 1 - row 281 T2: a fire with host grants on two hosts and a Gitea grant answers with a job, then revokes all three
---
duration_ms: 271.519558
type: 'test'
...
# Subtest: row 281 T3 (sage-2575): a delete with grants takes two requests: the first starts the job, the next completes
ok 2 - row 281 T3 (sage-2575): a delete with grants takes two requests: the first starts the job, the next completes
---
duration_ms: 224.418472
type: 'test'
...
# Subtest: row 281 T3b (Q2): a delete whose job refuses on host B; the retry refuses grant-revoke-failed and revokes only B and Gitea
ok 3 - row 281 T3b (Q2): a delete whose job refuses on host B; the retry refuses grant-revoke-failed and revokes only B and Gitea
---
duration_ms: 202.901281
type: 'test'
...
# Subtest: row 281 T3b: B cleared by hand with hosts.revoke; the next delete starts a job for Gitea and the leftover line only
ok 4 - row 281 T3b: B cleared by hand with hosts.revoke; the next delete starts a job for Gitea and the leftover line only
---
duration_ms: 210.347558
type: 'test'
...
# Subtest: row 281 T3c (sage-2575 condition 4): a delete of an instance with no grant completes in one request
ok 5 - row 281 T3c (sage-2575 condition 4): a delete of an instance with no grant completes in one request
---
duration_ms: 56.202657
type: 'test'
...
# Subtest: row 281 T4: host B unreachable in a fire: the job refuses, A stays revoked, B and Gitea untouched; a repeat completes
ok 6 - row 281 T4: host B unreachable in a fire: the job refuses, A stays revoked, B and Gitea untouched; a repeat completes
---
duration_ms: 200.876573
type: 'test'
...
# Subtest: row 281 T4b (Q1): a line a manual hosts.revoke left on C is removed by the fire, with its close
ok 7 - row 281 T4b (Q1): a line a manual hosts.revoke left on C is removed by the fire, with its close
---
duration_ms: 89.157186
type: 'test'
...
# Subtest: row 281 T4b (Q1): with C unreachable, the fire completes and names the line in grantsLeft
ok 8 - row 281 T4b (Q1): with C unreachable, the fire completes and names the line in grantsLeft
---
duration_ms: 95.460034
type: 'test'
...
# Subtest: row 281 T5: Gitea's admin token can't be checked: the job refuses with the Gitea grant intact
ok 9 - row 281 T5: Gitea's admin token can't be checked: the job refuses with the Gitea grant intact
---
duration_ms: 125.981553
type: 'test'
...
# Subtest: row 281 T5b (N1): a failed token DELETE refuses gitea-left; the repeat retries only this agent's entries
ok 10 - row 281 T5b (N1): a failed token DELETE refuses gitea-left; the repeat retries only this agent's entries
---
duration_ms: 290.884497
type: 'test'
...
# Subtest: row 281 T6 (sage-2574): a host decision approved before the fire and run after it ends revoked, with nothing applied
ok 11 - row 281 T6 (sage-2574): a host decision approved before the fire and run after it ends revoked, with nothing applied
---
duration_ms: 61.321628
type: 'test'
...
# Subtest: row 281 T6b (sage-2574): a Gitea decision approved before the fire and run after it ends revoked before any Gitea write
ok 12 - row 281 T6b (sage-2574): a Gitea decision approved before the fire and run after it ends revoked before any Gitea write
---
duration_ms: 78.290059
type: 'test'
...
# Subtest: row 281 T6c: a host executor in flight aborts and ends revoked; a Gitea executor in flight is awaited and leaves no token
ok 13 - row 281 T6c: a host executor in flight aborts and ends revoked; a Gitea executor in flight is awaited and leaves no token
---
duration_ms: 244.379957
type: 'test'
...
# Subtest: row 281 T6d (B1): undecided host and Gitea decisions are in the set, and approved after the fire both end revoked
ok 14 - row 281 T6d (B1): undecided host and Gitea decisions are in the set, and approved after the fire both end revoked
---
duration_ms: 98.546111
type: 'test'
...
# Subtest: row 281 T6e (B1): a grant raise refuses instance-fired while firing and after the fire, goes through after a rehire, and refuses grant-revoke-running during a delete job
ok 15 - row 281 T6e (B1): a grant raise refuses instance-fired while firing and after the fire, goes through after a rehire, and refuses grant-revoke-running during a delete job
---
duration_ms: 107.127915
type: 'test'
...
# Subtest: row 281 T7: an instance with no grant fires as today, synchronously, with the same events
ok 16 - row 281 T7: an instance with no grant fires as today, synchronously, with the same events
---
duration_ms: 56.10589
type: 'test'
...
# Subtest: row 281 T9 (B3): one step G per agent; the manual verbs refuse while it runs, and sweep names it running
ok 17 - row 281 T9 (B3): one step G per agent; the manual verbs refuse while it runs, and sweep names it running
---
duration_ms: 219.333857
type: 'test'
...
# Subtest: row 281 T10 (B2): the fire and the delete answer while their jobs are held, and the broker answers other verbs
ok 18 - row 281 T10 (B2): the fire and the delete answer while their jobs are held, and the broker answers other verbs
---
duration_ms: 187.536571
type: 'test'
...
# Subtest: row 281 T11 (C1): a fire's job completes after the chief's run ends and processing halts
ok 19 - row 281 T11 (C1): a fire's job completes after the chief's run ends and processing halts
---
duration_ms: 81.820486
type: 'test'
...
# Subtest: row 281 T12 (C1, N7): a step B refusal in the job is fire.failed, and the repeat runs B and C synchronously
ok 20 - row 281 T12 (C1, N7): a step B refusal in the job is fire.failed, and the repeat runs B and C synchronously
---
duration_ms: 75.368506
type: 'test'
...
# Subtest: row 281 T13 (N4): a restart records each held job interrupted once, with one message each; an ended job gets none
ok 21 - row 281 T13 (N4): a restart records each held job interrupted once, with one message each; an ended job gets none
---
duration_ms: 135.480277
type: 'test'
...
# Subtest: row 281 T14 (N1, sage-2653): a host removed under an undecided decision stops the fire on host-unknown; the human's no closes it, and the repeat fire has no job
ok 22 - row 281 T14 (N1, sage-2653): a host removed under an undecided decision stops the fire on host-unknown; the human's no closes it, and the repeat fire has no job
---
duration_ms: 61.217216
type: 'test'
...
# Subtest: row 239 T4: a refusal after the writer's revoke is named -revoked, in the job's fire.failed and notice, a synchronous fire and a delete
ok 23 - row 239 T4: a refusal after the writer's revoke is named -revoked, in the job's fire.failed and notice, a synchronous fire and a delete
---
duration_ms: 86.890748
type: 'test'
...
# Subtest: row 239 T4b: an unmarked step B refusal keeps its code, and the notice says nothing of the tokens
ok 24 - row 239 T4b: an unmarked step B refusal keeps its code, and the notice says nothing of the tokens
---
duration_ms: 74.32138
type: 'test'
...
1..24
# tests 24
# suites 0
# pass 24
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 3424.217118
@@ -0,0 +1,16 @@
TAP version 13
# Subtest: X-G3: on scratch 1.27.1, a grant makes the user, mints, forks, checks reach, writes the file, and revoke deletes the token
ok 1 - X-G3: on scratch 1.27.1, a grant makes the user, mints, forks, checks reach, writes the file, and revoke deletes the token
---
duration_ms: 11992.407797
type: 'test'
...
1..1
# tests 1
# suites 0
# pass 1
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 12077.514952
@@ -0,0 +1,310 @@
TAP version 13
# Subtest: versionAtLeast compares numbers and refuses a prerelease of 1.27.0
ok 1 - versionAtLeast compares numbers and refuses a prerelease of 1.27.0
---
duration_ms: 0.993112
type: 'test'
...
# Subtest: X-G1: a raise that fails a check refuses and stores nothing
ok 2 - X-G1: a raise that fails a check refuses and stores nothing
---
duration_ms: 65.144002
type: 'test'
...
# Subtest: X-G1: a creative role, a role without identity and a missing or due slot refuse at raise
ok 3 - X-G1: a creative role, a role without identity and a missing or due slot refuse at raise
---
duration_ms: 176.153604
type: 'test'
...
# Subtest: X-G1: the chief of staff refuses at raise, whatever its definition, identity and publish declare
ok 4 - X-G1: the chief of staff refuses at raise, whatever its definition, identity and publish declare
---
duration_ms: 37.039318
type: 'test'
...
# Subtest: X-G2: admin set refuses each failed check and writes nothing, then writes the slot once
ok 5 - X-G2: admin set refuses each failed check and writes nothing, then writes the slot once
---
duration_ms: 135.41468
type: 'test'
...
# Subtest: X-G3 to X-G8: an approve makes the user, mints the token, forks, checks reach and writes the file, record and grant.applied
ok 6 - X-G3 to X-G8: an approve makes the user, mints the token, forks, checks reach and writes the file, record and grant.applied
---
duration_ms: 103.900914
type: 'test'
...
# Subtest: X-G4: a user this stack did not make, an admin, a disabled user and a remade user each refuse
ok 7 - X-G4: a user this stack did not make, an admin, a disabled user and a remade user each refuse
---
duration_ms: 314.051809
type: 'test'
...
# Subtest: X-G6 and X-G8: the user and mint steps are written before their calls, and each result after its call
ok 8 - X-G6 and X-G8: the user and mint steps are written before their calls, and each result after its call
---
duration_ms: 102.418501
type: 'test'
...
# Subtest: X-G4: a fork by the seat user of another repository than the project refuses fork-foreign
ok 9 - X-G4: a fork by the seat user of another repository than the project refuses fork-foreign
---
duration_ms: 79.552914
type: 'test'
...
# Subtest: X-G5: a failure after the mint deletes the token, unloads nothing it did not load and leaves no file
ok 10 - X-G5: a failure after the mint deletes the token, unloads nothing it did not load and leaves no file
---
duration_ms: 124.288579
type: 'test'
...
# Subtest: X-G5: a token delete that fails is left at Gitea, shown by status and taken by sweep
ok 11 - X-G5: a token delete that fails is left at Gitea, shown by status and taken by sweep
---
duration_ms: 122.236446
type: 'test'
...
# Subtest: X-G5: a mint that fails deletes by name, and a refusal at step 0 leaves the decision unspent
ok 12 - X-G5: a mint that fails deletes by name, and a refusal at step 0 leaves the decision unspent
---
duration_ms: 147.015181
type: 'test'
...
# Subtest: X-G5: an agent held for an unknown token is refused at step 0 with no Gitea call
ok 13 - X-G5: an agent held for an unknown token is refused at step 0 with no Gitea call
---
duration_ms: 65.072391
type: 'test'
...
# Subtest: X-G5 and X-G9 (step 7): a rotation whose old-token delete fails stays applied with the old id left
ok 14 - X-G5 and X-G9 (step 7): a rotation whose old-token delete fails stays applied with the old id left
---
duration_ms: 168.88228
type: 'test'
...
# Subtest: X-G10: in a rotation the store file holds the new token before the old one is deleted
ok 15 - X-G10: in a rotation the store file holds the new token before the old one is deleted
---
duration_ms: 168.825604
type: 'test'
...
# Subtest: X-G6: a rotation cut before the rename settles back at once, and the old token stays live
ok 16 - X-G6: a rotation cut before the rename settles back at once, and the old token stays live
---
duration_ms: 177.890446
type: 'test'
...
# Subtest: X-G6: a rotation whose step 8 write fails is settle-pending, and a restart settles it forward
ok 17 - X-G6: a rotation whose step 8 write fails is settle-pending, and a restart settles it forward
---
duration_ms: 176.296589
type: 'test'
...
# Subtest: X-G6: a restart settles an open rotation back when the file still holds the old token
ok 18 - X-G6: a restart settles an open rotation back when the file still holds the old token
---
duration_ms: 137.42724
type: 'test'
...
# Subtest: X-G6: a restart settles an open rotation forward when the file holds the new token
ok 19 - X-G6: a restart settles an open rotation forward when the file holds the new token
---
duration_ms: 116.849781
type: 'test'
...
# Subtest: X-G6: a 401 on the file token loses the grant: both tokens go, the record goes and memory unloads
ok 20 - X-G6: a 401 on the file token loses the grant: both tokens go, the record goes and memory unloads
---
duration_ms: 136.599794
type: 'test'
...
# Subtest: X-G6: a 403, 404, 500, a hang and a dropped socket each leave the rotation settle-pending with nothing deleted
ok 21 - X-G6: a 403, 404, 500, a hang and a dropped socket each leave the rotation settle-pending with nothing deleted
---
duration_ms: 1009.05306
type: 'test'
...
# Subtest: X-G6: a file token no grant minted is held; the next restart says so again; a revoke clears it and takes both ids
ok 22 - X-G6: a file token no grant minted is held; the next restart says so again; a revoke clears it and takes both ids
---
duration_ms: 165.028255
type: 'test'
...
# Subtest: N9: a revoke of an open rotation, then a restart: no settle, no Gitea call and no message
ok 23 - N9: a revoke of an open rotation, then a restart: no settle, no Gitea call and no message
---
duration_ms: 137.431301
type: 'test'
...
# Subtest: N9: a 404 on a delete by id counts as done
ok 24 - N9: a 404 on a delete by id counts as done
---
duration_ms: 129.565786
type: 'test'
...
# Subtest: X-G6: a restart undoes each step a killed child left, and spends an approved unspent decision
ok 25 - X-G6: a restart undoes each step a killed child left, and spends an approved unspent decision
---
duration_ms: 409.592388
type: 'test'
...
# Subtest: X-G6: a restart with no admin slot leaves the user an orphan and the token left
ok 26 - X-G6: a restart with no admin slot leaves the user an orphan and the token left
---
duration_ms: 56.049391
type: 'test'
...
# Subtest: X-G7: a change to the definition, identity, publish remotes or admin slot after the raise ends decision-mismatch
ok 27 - X-G7: a change to the definition, identity, publish remotes or admin slot after the raise ends decision-mismatch
---
duration_ms: 119.347201
type: 'test'
...
# Subtest: X-G7 and X-G9: an admin rotate voids open decisions, and rotate --finish deletes what was left
ok 28 - X-G7 and X-G9: an admin rotate voids open decisions, and rotate --finish deletes what was left
---
duration_ms: 107.296891
type: 'test'
...
# Subtest: X-G9: a rotate whose name is taken refuses and writes nothing; remove takes the slot away
ok 29 - X-G9: a rotate whose name is taken refuses and writes nothing; remove takes the slot away
---
duration_ms: 65.99498
type: 'test'
...
# Subtest: X-G9: a slot past its rotate-by date refuses a run at step 0, leaving the decision unspent
ok 30 - X-G9: a slot past its rotate-by date refuses a run at step 0, leaving the decision unspent
---
duration_ms: 51.530121
type: 'test'
...
# Subtest: X-G11: run refuses every caller but the human, an unapproved, a spent and a busy decision
ok 31 - X-G11: run refuses every caller but the human, an unapproved, a spent and a busy decision
---
duration_ms: 102.722145
type: 'test'
...
# Subtest: kill switch (plan :16): while halted the chief still reads grants.status, and an agent grants.revoke refuses
ok 32 - kill switch (plan :16): while halted the chief still reads grants.status, and an agent grants.revoke refuses
---
duration_ms: 106.804233
type: 'test'
...
# Subtest: X-G11: a revoke while the executor runs aborts it and the grant ends revoked
ok 33 - X-G11: a revoke while the executor runs aborts it and the grant ends revoked
---
duration_ms: 105.633901
type: 'test'
...
# Subtest: X-G11: a revoke unloads memory and removes the file before its Gitea delete
ok 34 - X-G11: a revoke unloads memory and removes the file before its Gitea delete
---
duration_ms: 129.733108
type: 'test'
...
# Subtest: X-G11: a revoke during a rotation step 7 ends it revoked, and step 8 writes no record back
ok 35 - X-G11: a revoke during a rotation step 7 ends it revoked, and step 8 writes no record back
---
duration_ms: 156.370271
type: 'test'
...
# Subtest: X-G11: a revoke while a sweep settles a rotation, forward or back, ends it revoked with no record
ok 36 - X-G11: a revoke while a sweep settles a rotation, forward or back, ends it revoked with no record
---
duration_ms: 348.377983
type: 'test'
...
# Subtest: X-G11: a revoke during a settle whoami that finds a foreign token ends it revoked, not held
ok 37 - X-G11: a revoke during a settle whoami that finds a foreign token ends it revoked, not held
---
duration_ms: 174.861644
type: 'test'
...
# Subtest: X-G11: a revoke during a settle whoami that gets a 401 ends it revoked, not lost
ok 38 - X-G11: a revoke during a settle whoami that gets a 401 ends it revoked, not lost
---
duration_ms: 160.189925
type: 'test'
...
# Subtest: X-G12: a token that reaches wider than its forks fails with the repository named
ok 39 - X-G12: a token that reaches wider than its forks fails with the repository named
---
duration_ms: 406.656917
type: 'test'
...
# Subtest: X-G12: reach is paged by X-Total-Count and a count that does not add up refuses
ok 40 - X-G12: reach is paged by X-Total-Count and a count that does not add up refuses
---
duration_ms: 248.981956
type: 'test'
...
# Subtest: X-G13: an agent cannot record a grant event, and the trigger refuses one from any writer but the grant writer
ok 41 - X-G13: an agent cannot record a grant event, and the trigger refuses one from any writer but the grant writer
---
duration_ms: 43.223661
type: 'test'
...
# Subtest: X-G14: credentials delete fires the user: tokens go, login is prohibited, and grant.revoke.closed records it
ok 42 - X-G14: credentials delete fires the user: tokens go, login is prohibited, and grant.revoke.closed records it
---
duration_ms: 262.131509
type: 'test'
...
# Subtest: X-G14: a fire whose token delete or login PATCH fails lands it in serviceLeft
ok 43 - X-G14: a fire whose token delete or login PATCH fails lands it in serviceLeft
---
duration_ms: 135.20833
type: 'test'
...
# Subtest: X-G14: a fire whose user is gone or remade skips the fire steps and says why
ok 44 - X-G14: a fire whose user is gone or remade skips the fire steps and says why
---
duration_ms: 272.641505
type: 'test'
...
# Subtest: X-G14: a sweep retries a fire only for the user it fired: a remade or gone user is skipped and named
ok 45 - X-G14: a sweep retries a fire only for the user it fired: a remade or gone user is skipped and named
---
duration_ms: 347.659833
type: 'test'
...
# Subtest: X-G14: a revoke Gitea cannot reach stays open, and a restart closes it
ok 46 - X-G14: a revoke Gitea cannot reach stays open, and a restart closes it
---
duration_ms: 138.206945
type: 'test'
...
# Subtest: row 281 T8: a tester grants.revoke refuses tester-dev-only once bus.tester is off; the human revoke keeps its records and starts no job
ok 47 - row 281 T8: a tester grants.revoke refuses tester-dev-only once bus.tester is off; the human revoke keeps its records and starts no job
---
duration_ms: 129.669912
type: 'test'
...
# Subtest: X-G15: look-alike commit steps outside the grant writer are ignored at start, by revoke and by status
ok 48 - X-G15: look-alike commit steps outside the grant writer are ignored at start, by revoke and by status
---
duration_ms: 135.849488
type: 'test'
...
# Subtest: X-G15: a look-alike spend under another kind with the grant writer pair is not an open grant
ok 49 - X-G15: a look-alike spend under another kind with the grant writer pair is not an open grant
---
duration_ms: 47.432816
type: 'test'
...
# Subtest: status lists the slot, users, grants and nothing secret, and every grants verb needs service gitea
ok 50 - status lists the slot, users, grants and nothing secret, and every grants verb needs service gitea
---
duration_ms: 113.321647
type: 'test'
...
1..50
# tests 50
# suites 0
# pass 50
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 8467.002792
@@ -0,0 +1,40 @@
TAP version 13
# Subtest: 3j copy migrates to 3k: every row kept, and sqlite_master gains only the two tables and their keys
ok 1 - 3j copy migrates to 3k: every row kept, and sqlite_master gains only the two tables and their keys
---
duration_ms: 89.459024
type: 'test'
...
# Subtest: a 3j→3k step that fails partway leaves the store at 3j with every row and the schema intact
ok 2 - a 3j→3k step that fails partway leaves the store at 3j with every row and the schema intact
---
duration_ms: 91.221183
type: 'test'
...
# Subtest: the 3j engine refuses a migrated store, migrating or not, and leaves it as it was
ok 3 - the 3j engine refuses a migrated store, migrating or not, and leaves it as it was
---
duration_ms: 88.209221
type: 'test'
...
# Subtest: gitea_users: one user per business and agent, an id above 0, a 16-hex nonce and a real decision
ok 4 - gitea_users: one user per business and agent, an id above 0, a 16-hex nonce and a real decision
---
duration_ms: 11.809605
type: 'test'
...
# Subtest: gitea_grants: one grant per agent, a projects array, a token id above 0, and only for a recorded user
ok 5 - gitea_grants: one grant per agent, a projects array, a token id above 0, and only for a recorded user
---
duration_ms: 12.340308
type: 'test'
...
1..5
# tests 5
# suites 0
# pass 5
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 369.424097
@@ -0,0 +1,154 @@
TAP version 13
# Subtest: G1, A1: only the chief raises a grant, and a refused raise stores nothing and runs no keyscan
ok 1 - G1, A1: only the chief raises a grant, and a refused raise stores nothing and runs no keyscan
---
duration_ms: 43.290782
type: 'test'
...
# Subtest: G1: grant goes only with credential.mint, row a takes only host-enroll, and E1 refuses each bad field
ok 2 - G1: grant goes only with credential.mint, row a takes only host-enroll, and E1 refuses each bad field
---
duration_ms: 47.259817
type: 'test'
...
# Subtest: G5, A5, A6: the scanned key set must equal the requested set, or host-key-mismatch and nothing stored
ok 3 - G5, A5, A6: the scanned key set must equal the requested set, or host-key-mismatch and nothing stored
---
duration_ms: 32.998123
type: 'test'
...
# Subtest: G4 (host-enroll block, M1): the broker appends the keys, fingerprints and sudo line, and the cap counts the block
ok 4 - G4 (host-enroll block, M1): the broker appends the keys, fingerprints and sudo line, and the cap counts the block
---
duration_ms: 27.343232
type: 'test'
...
# Subtest: G6, X1: the human's cli yes starts enrollment, which writes the record, the key file and the events in order
ok 5 - G6, X1: the human's cli yes starts enrollment, which writes the record, the key file and the events in order
---
duration_ms: 50.094997
type: 'test'
...
# Subtest: A2, A4: a credential.mint without grant, and a no, start nothing
ok 6 - A2, A4: a credential.mint without grant, and a no, start nothing
---
duration_ms: 240.665869
type: 'test'
...
# Subtest: A3, X1: a resolve by the tester or an agent starts nothing
ok 7 - A3, X1: a resolve by the tester or an agent starts nothing
---
duration_ms: 241.250779
type: 'test'
...
# Subtest: G6 (duckworth-0081 B3): a withdraw by the chief or the human, and an arbiter resolve, start nothing
ok 8 - G6 (duckworth-0081 B3): a withdraw by the chief or the human, and an arbiter resolve, start nothing
---
duration_ms: 241.688714
type: 'test'
...
# Subtest: G10 (duckworth-0081 B1): a second start for a spent decision refuses decision-consumed, and an unresolved or agent-resolved one not-authorized
ok 9 - G10 (duckworth-0081 B1): a second start for a spent decision refuses decision-consumed, and an unresolved or agent-resolved one not-authorized
---
duration_ms: 51.200834
type: 'test'
...
# Subtest: A8, S1: two approved enrollments for one host: the second ends host-enrolled and the pin stays
ok 10 - A8, S1: two approved enrollments for one host: the second ends host-enrolled and the pin stays
---
duration_ms: 69.960016
type: 'test'
...
# Subtest: A9: the hosts primary key refuses a second record for (business, host)
ok 11 - A9: the hosts primary key refuses a second record for (business, host)
---
duration_ms: 26.029538
type: 'test'
...
# Subtest: X3: a failure at step 2 deletes the record again and ends grant.failed, with no key file
ok 12 - X3: a failure at step 2 deletes the record again and ends grant.failed, with no key file
---
duration_ms: 45.771992
type: 'test'
...
# Subtest: A10, X3: at start a resolved, unspent enrollment is spent and ends interrupted, and never runs late
ok 13 - A10, X3: at start a resolved, unspent enrollment is spent and ends interrupted, and never runs late
---
duration_ms: 27.031698
type: 'test'
...
# Subtest: X3: at start an enrollment that stopped after its registry step loses its record and key file
ok 14 - X3: at start an enrollment that stopped after its registry step loses its record and key file
---
duration_ms: 49.174071
type: 'test'
...
# Subtest: G24 first sentence, M2, A12: tags are mosaic- and 32 hex, and differ by business, agent and host
ok 15 - G24 first sentence, M2, A12: tags are mosaic- and 32 hex, and differ by business, agent and host
---
duration_ms: 0.29412
type: 'test'
...
# Subtest: E4: hosts.check sets the record ready and records grant.host.checked; a non-zero list leaves it pending
ok 16 - E4: hosts.check sets the record ready and records grant.host.checked; a non-zero list leaves it pending
---
duration_ms: 51.694048
type: 'test'
...
# Subtest: G20 (duckworth-0081 B3): the human's hosts.check marks the host ready, and the reader refuses
ok 17 - G20 (duckworth-0081 B3): the human's hosts.check marks the host ready, and the reader refuses
---
duration_ms: 47.764066
type: 'test'
...
# Subtest: G18 (duckworth-0081 B2), broker half: a check refused host-key-mismatch leaves the host pending-install with no grant.host.checked
ok 18 - G18 (duckworth-0081 B2), broker half: a check refused host-key-mismatch leaves the host pending-install with no grant.host.checked
---
duration_ms: 48.010953
type: 'test'
...
# Subtest: E4: a check whose installer fingerprint differs from the record refuses host-changed
ok 19 - E4: a check whose installer fingerprint differs from the record refuses host-changed
---
duration_ms: 47.86067
type: 'test'
...
# Subtest: E4, G21: hosts.remove is the human's or the tester's, deletes the key and the record, and records grant.host.removed
ok 20 - E4, G21: hosts.remove is the human's or the tester's, deletes the key and the record, and records grant.host.removed
---
duration_ms: 49.888318
type: 'test'
...
# Subtest: G21, F1, F2, M4, A22: hosts.remove refuses host-line-left on a guarded hostLineLeft, and ignores look-alikes
ok 21 - G21, F1, F2, M4, A22: hosts.remove refuses host-line-left on a guarded hostLineLeft, and ignores look-alikes
---
duration_ms: 49.738619
type: 'test'
...
# Subtest: hosts.remove refuses host-in-use while a grant record names the host
ok 22 - hosts.remove refuses host-in-use while a grant record names the host
---
duration_ms: 48.695475
type: 'test'
...
# Subtest: the grant writer refuses a body outside section 7's shape
ok 23 - the grant writer refuses a body outside section 7's shape
---
duration_ms: 22.397218
type: 'test'
...
# Subtest: recordEvent refuses reserved-event for a grant.* action or operation
ok 24 - recordEvent refuses reserved-event for a grant.* action or operation
---
duration_ms: 22.146496
type: 'test'
...
1..24
# tests 24
# suites 0
# pass 24
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 1660.480589
@@ -0,0 +1,262 @@
TAP version 13
# Subtest: row 280: an occupied TCP port is attempted, refused, and retried with our sshd
ok 1 - row 280: an occupied TCP port is attempted, refused, and retried with our sshd
---
duration_ms: 84.233313
type: 'test'
...
# Subtest: row 280: every injected picker sample is unprivileged and outside the ephemeral range
ok 2 - row 280: every injected picker sample is unprivileged and outside the ephemeral range
---
duration_ms: 0.339333
type: 'test'
...
# Subtest: G7: an Approve installs the tagged line, logs in with the new key, and writes the key file, record and grant.applied
ok 3 - G7: an Approve installs the tagged line, logs in with the new key, and writes the key file, record and grant.applied
---
duration_ms: 661.10899
type: 'test'
...
# Subtest: G7: a commands change on a live grant updates the record in one transaction and keeps the key and line
ok 4 - G7: a commands change on a live grant updates the record in one transaction and keeps the key and line
---
duration_ms: 550.346061
type: 'test'
...
# Subtest: G8: a failure at install or verify removes the line and leaves no record, key file or reference
ok 5 - G8: a failure at install or verify removes the line and leaves no record, key file or reference
---
duration_ms: 1522.222707
type: 'test'
...
# Subtest: G8: a failed remove adds hostLineLeft and tells the human to sweep
ok 6 - G8: a failed remove adds hostLineLeft and tells the human to sweep
---
duration_ms: 627.20238
type: 'test'
...
# Subtest: G8: a failure in step 5 before commit unlinks the key file, drops the reference and removes the line
ok 7 - G8: a failure in step 5 before commit unlinks the key file, drops the reference and removes the line
---
duration_ms: 635.691634
type: 'test'
...
# Subtest: G8: a store fault in the commit transaction ends host-failed with no record, key file, reference or line
ok 8 - G8: a store fault in the commit transaction ends host-failed with no record, key file, reference or line
---
duration_ms: 672.231136
type: 'test'
...
# Subtest: G8: a failed step 1 check spends the decision and runs nothing remote
ok 9 - G8: a failed step 1 check spends the decision and runs nothing remote
---
duration_ms: 81.813124
type: 'test'
...
# Subtest: G9: a registry, definition or commands change between raise and Approve ends decision-mismatch before any remote step
ok 10 - G9: a registry, definition or commands change between raise and Approve ends decision-mismatch before any remote step
---
duration_ms: 521.064038
type: 'test'
...
# Subtest: G9: an agent no longer a role or no longer declaring host ends with its code, spent
ok 11 - G9: an agent no longer a role or no longer declaring host ends with its code, spent
---
duration_ms: 72.738203
type: 'test'
...
# Subtest: G10: a second start refuses decision-consumed, and an unresolved or agent-resolved decision not-authorized, writing nothing
ok 12 - G10: a second start refuses decision-consumed, and an unresolved or agent-resolved decision not-authorized, writing nothing
---
duration_ms: 497.413394
type: 'test'
...
# Subtest: G15: no event, message or decision holds the private key
ok 13 - G15: no event, message or decision holds the private key
---
duration_ms: 507.641407
type: 'test'
...
# Subtest: G23: a revoke during install ends grant.failed revoked with no key file, no grant and no line
ok 14 - G23: a revoke during install ends grant.failed revoked with no key file, no grant and no line
---
duration_ms: 525.432258
type: 'test'
...
# Subtest: G23 (row 249): an add that writes after an abort's remove leaves hostLineLeft until the sweep
ok 15 - G23 (row 249): an add that writes after an abort's remove leaves hostLineLeft until the sweep
---
duration_ms: 863.594858
type: 'test'
...
# Subtest: G23 (row 249): an add that writes after a timed-out install's remove leaves hostLineLeft until the sweep
ok 16 - G23 (row 249): an add that writes after a timed-out install's remove leaves hostLineLeft until the sweep
---
duration_ms: 863.543575
type: 'test'
...
# Subtest: G23: a revoke recorded after the raise and before the start ends step 1 revoked, and a held slot ends host-busy
ok 17 - G23: a revoke recorded after the raise and before the start ends step 1 revoked, and a held slot ends host-busy
---
duration_ms: 499.460894
type: 'test'
...
# Subtest: G24: names at 64 characters with . and _ give distinct tags of the fixed length
ok 18 - G24: names at 64 characters with . and _ give distinct tags of the fixed length
---
duration_ms: 0.375905
type: 'test'
...
# Subtest: G11: a restart after install removes the line, then ends interrupted with the tag, holding the slot until then
ok 19 - G11: a restart after install removes the line, then ends interrupted with the tag, holding the slot until then
---
duration_ms: 212.63299
type: 'test'
...
# Subtest: G11: a restart after a new key's commit, with the key file written, ends with no key file, record, reference or line
ok 20 - G11: a restart after a new key's commit, with the key file written, ends with no key file, record, reference or line
---
duration_ms: 220.600676
type: 'test'
...
# Subtest: G11: a restart after a commands change's commit leaves the record as it was and asks nothing of the host
ok 21 - G11: a restart after a commands change's commit leaves the record as it was and asks nothing of the host
---
duration_ms: 494.476505
type: 'test'
...
# Subtest: G11 (B2): a restart before step 1, spent or not yet spent, ends interrupted and nothing runs later
ok 22 - G11 (B2): a restart before step 1, spent or not yet spent, ends interrupted and nothing runs later
---
duration_ms: 68.990695
type: 'test'
...
# Subtest: G11: a remote undo that fails ends interrupted with hostLineLeft and the sweep hint
ok 23 - G11: a remote undo that fails ends interrupted with hostLineLeft and the sweep hint
---
duration_ms: 279.634006
type: 'test'
...
# Subtest: G11: a restart leaves a finished grant alone, and the reconcile adds nothing for it
ok 24 - G11: a restart leaves a finished grant alone, and the reconcile adds nothing for it
---
duration_ms: 508.376373
type: 'test'
...
# Subtest: N1 (G27): the start sweep unlinks host.<id> files with no record in loaded businesses only, and refuses a store dir that is not private
ok 25 - N1 (G27): the start sweep unlinks host.<id> files with no record in loaded businesses only, and refuses a store dir that is not private
---
duration_ms: 6.14849
type: 'test'
...
# Subtest: G12: the human's hosts.revoke deletes the record, the key file, the reference and the line, with a closed marker
ok 26 - G12: the human's hosts.revoke deletes the record, the key file, the reference and the line, with a closed marker
---
duration_ms: 652.787646
type: 'test'
...
# Subtest: G12 (N4): a revoke with no record still removes the computed tag's line, with granted false; bad args refuse
ok 27 - G12 (N4): a revoke with no record still removes the computed tag's line, with granted false; bad args refuse
---
duration_ms: 210.268204
type: 'test'
...
# Subtest: G13: a revoke during install aborts the executor, which ends revoked, and the line goes
ok 28 - G13: a revoke during install aborts the executor, which ends revoked, and the line goes
---
duration_ms: 559.328925
type: 'test'
...
# Subtest: G26: the human, the assistant and the tester revoke; the chief and a pm refuse; sweep is the human's or the tester's
ok 29 - G26: the human, the assistant and the tester revoke; the chief and a pm refuse; sweep is the human's or the tester's
---
duration_ms: 501.042445
type: 'test'
...
# Subtest: row 281 T8: a tester hosts.revoke refuses tester-dev-only once bus.tester is off, and a human revoke writes no job records
ok 30 - row 281 T8: a tester hosts.revoke refuses tester-dev-only once bus.tester is off, and a human revoke writes no job records
---
duration_ms: 654.224941
type: 'test'
...
# Subtest: G27: a restart after step 1 sweeps the key file and runs step 3 once the bus is up; status shows the revoke until then
ok 31 - G27: a restart after step 1 sweeps the key file and runs step 3 once the bus is up; status shows the revoke until then
---
duration_ms: 651.50552
type: 'test'
...
# Subtest: G27: after step 2 with the host down, the restart closes the marker with hostLineLeft; a marker without a revoke id is not reopened
ok 32 - G27: after step 2 with the host down, the restart closes the marker with hostLineLeft; a marker without a revoke id is not reopened
---
duration_ms: 931.747122
type: 'test'
...
# Subtest: G27: a key file a revoke could not unlink is reported left and goes at the next start
ok 33 - G27: a key file a revoke could not unlink is reported left and goes at the next start
---
duration_ms: 653.518165
type: 'test'
...
# Subtest: G28: a commands change, then a revoke, then a restart leave no record, key, reference or line
ok 34 - G28: a commands change, then a revoke, then a restart leave no record, key, reference or line
---
duration_ms: 690.305558
type: 'test'
...
# Subtest: G24 (B4): hosts.sweep removes only this business's recorded tags no live grant holds, and records what it left
ok 35 - G24 (B4): hosts.sweep removes only this business's recorded tags no live grant holds, and records what it left
---
duration_ms: 946.174823
type: 'test'
...
# Subtest: G12: the local steps finish before the host step, so a host that hangs leaves the agent no access
ok 36 - G12: the local steps finish before the host step, so a host that hangs leaves the agent no access
---
duration_ms: 680.963024
type: 'test'
...
# Subtest: G23 (X5): a revoke right after the spend reaches the executor's claim, so the grant ends revoked
ok 37 - G23 (X5): a revoke right after the spend reaches the executor's claim, so the grant ends revoked
---
duration_ms: 212.576713
type: 'test'
...
# Subtest: G23 (X5): a revoke that lands as verify returns ends revoked with no record, key file or line
ok 38 - G23 (X5): a revoke that lands as verify returns ends revoked with no record, key file or line
---
duration_ms: 672.317381
type: 'test'
...
# Subtest: G13: a revoke whose host remove fails still drops the record and key, and reports the line left for a sweep
ok 39 - G13: a revoke whose host remove fails still drops the record and key, and reports the line left for a sweep
---
duration_ms: 656.630346
type: 'test'
...
# Subtest: G22: enroll, check, grant, host.run, a commands change the next host.run uses, and a revoke that kills a run in flight
ok 40 - G22: enroll, check, grant, host.run, a commands change the next host.run uses, and a revoke that kills a run in flight
---
duration_ms: 1175.25132
type: 'test'
...
# Subtest: mos-1163: a grant whose agent became a creative role after the raise ends host-creative-role at step 1, spent, with nothing remote
ok 41 - mos-1163: a grant whose agent became a creative role after the raise ends host-creative-role at step 1, spent, with nothing remote
---
duration_ms: 64.37628
type: 'test'
...
# Subtest: sage-1908: once the agent of an applied grant is a creative role, host.run refuses host-creative-role, runs nothing remote and keeps the record
ok 42 - sage-1908: once the agent of an applied grant is a creative role, host.run refuses host-creative-role, runs nothing remote and keeps the record
---
duration_ms: 511.702438
type: 'test'
...
1..42
# tests 42
# suites 0
# pass 42
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 21492.237126
@@ -0,0 +1,70 @@
TAP version 13
# Subtest: G1 (host): only the chief raises a host grant, a grant on any other action refuses, and nothing is stored
ok 1 - G1 (host): only the chief raises a host grant, a grant on any other action refuses, and nothing is stored
---
duration_ms: 30.222106
type: 'test'
...
# Subtest: G1, R4: the grant takes exactly method, agent, host, commands and rotateBy, and an unknown method refuses
ok 2 - G1, R4: the grant takes exactly method, agent, host, commands and rotateBy, and an unknown method refuses
---
duration_ms: 32.837987
type: 'test'
...
# Subtest: row 236 (\#1742): a gitea grant on a broker with no Gitea path refuses gitea-not-configured, and nothing is stored
ok 3 - row 236 (\#1742): a gitea grant on a broker with no Gitea path refuses gitea-not-configured, and nothing is stored
---
duration_ms: 19.718511
type: 'test'
...
# Subtest: G2: an agent whose definition lacks host refuses host-not-declared, and an unknown agent unknown-role
ok 4 - G2: an agent whose definition lacks host refuses host-not-declared, and an unknown agent unknown-role
---
duration_ms: 23.378767
type: 'test'
...
# Subtest: mos-1163: a grant whose agent is a creative role refuses host-creative-role, even when its definition declares host
ok 5 - mos-1163: a grant whose agent is a creative role refuses host-creative-role, even when its definition declares host
---
duration_ms: 18.498151
type: 'test'
...
# Subtest: G3: wildcard, shell, empty and other 210 D6 argv prefixes refuse invalid-request
ok 6 - G3: wildcard, shell, empty and other 210 D6 argv prefixes refuse invalid-request
---
duration_ms: 38.953131
type: 'test'
...
# Subtest: R4 rotateBy (sage-1782): a real calendar day after today UTC, or invalid-request
ok 7 - R4 rotateBy (sage-1782): a real calendar day after today UTC, or invalid-request
---
duration_ms: 29.945428
type: 'test'
...
# Subtest: G19: a grant naming a host that is pending-install refuses host-not-ready, and an unknown host host-unknown
ok 8 - G19: a grant naming a host that is pending-install refuses host-not-ready, and an unknown host host-unknown
---
duration_ms: 24.624288
type: 'test'
...
# Subtest: R4, G5: the raise routes to the human and its event body binds the eight fields with their hashes
ok 9 - R4, G5: the raise routes to the human and its event body binds the eight fields with their hashes
---
duration_ms: 19.595559
type: 'test'
...
# Subtest: G4 (host block): the broker appends the host, each prefix, the rotate date and new key or change
ok 10 - G4 (host block): the broker appends the host, each prefix, the rotate date and new key or change
---
duration_ms: 33.966769
type: 'test'
...
1..10
# tests 10
# suites 0
# pass 10
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 359.892808
@@ -0,0 +1,46 @@
TAP version 13
# Subtest: 3i copy migrates to 3j: every row kept, and sqlite_master gains only the two tables, their keys and the guard
ok 1 - 3i copy migrates to 3j: every row kept, and sqlite_master gains only the two tables, their keys and the guard
---
duration_ms: 76.579993
type: 'test'
...
# Subtest: a 3i→3j step that fails partway leaves the store at 3i with every row and the schema intact
ok 2 - a 3i→3j step that fails partway leaves the store at 3i with every row and the schema intact
---
duration_ms: 91.070005
type: 'test'
...
# Subtest: the 3i engine refuses a migrated store, migrating or not, and leaves it as it was
ok 3 - the 3i engine refuses a migrated store, migrating or not, and leaves it as it was
---
duration_ms: 82.739993
type: 'test'
...
# Subtest: A22b, sage-1703: a session-written grant.* row from before the step survives it, and the grant readers ignore it
ok 4 - A22b, sage-1703: a session-written grant.* row from before the step survives it, and the grant readers ignore it
---
duration_ms: 75.799197
type: 'test'
...
# Subtest: the guard: a grant.* action or operation on action.allowed needs the (NULL, grant) actor
ok 5 - the guard: a grant.* action or operation on action.allowed needs the (NULL, grant) actor
---
duration_ms: 14.297081
type: 'test'
...
# Subtest: hosts: one record per business and host, a ready host has its installer and check, grants need the host
ok 6 - hosts: one record per business and host, a ready host has its installer and check, grants need the host
---
duration_ms: 11.715868
type: 'test'
...
1..6
# tests 6
# suites 0
# pass 6
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 434.285818
@@ -0,0 +1,17 @@
TAP version 13
# organization: {"event":"reload-needs-restart","business":"demo"}
# Subtest: row 298 runtime: human scope approval writes the file and organization history at the supplied revision
ok 1 - row 298 runtime: human scope approval writes the file and organization history at the supplied revision
---
duration_ms: 67.117012
type: 'test'
...
1..1
# tests 1
# suites 0
# pass 1
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 175.452624
@@ -0,0 +1,94 @@
TAP version 13
# Subtest: row 298 (Q3): only the human at the cli reads or sets the scope; agents, the tester, a reader and the Console refuse
ok 1 - row 298 (Q3): only the human at the cli reads or sets the scope; agents, the tester, a reader and the Console refuse
---
duration_ms: 69.719988
type: 'test'
...
# Subtest: row 298 (Q1): organization.set and limits.set refuse a grantScope key, and nothing is written
ok 2 - row 298 (Q1): organization.set and limits.set refuse a grantScope key, and nothing is written
---
duration_ms: 45.413372
type: 'test'
...
# Subtest: row 298 (Q3): the human verb writes the scope and a grant.scope record with the human proof and both sha256
ok 3 - row 298 (Q3): the human verb writes the scope and a grant.scope record with the human proof and both sha256
---
duration_ms: 48.028148
type: 'test'
...
# Subtest: row 298 (Q4): an in-scope Gitea grant is issued with no inbox item, logged with 236 records, and revocable
ok 4 - row 298 (Q4): an in-scope Gitea grant is issued with no inbox item, logged with 236 records, and revocable
---
duration_ms: 149.52373
type: 'test'
...
# Subtest: row 298: an out-of-scope Gitea grant waits for the human, whose Approve still issues it
ok 5 - row 298: an out-of-scope Gitea grant waits for the human, whose Approve still issues it
---
duration_ms: 114.79696
type: 'test'
...
# Subtest: row 298: with no scope, a bad scope or an unreadable file, an in-scope-looking grant waits
ok 6 - row 298: with no scope, a bad scope or an unreadable file, an in-scope-looking grant waits
---
duration_ms: 140.626999
type: 'test'
...
# Subtest: row 298 (Q6): a chief-of-staff instance that is not launch.by never raises in scope
ok 7 - row 298 (Q6): a chief-of-staff instance that is not launch.by never raises in scope
---
duration_ms: 48.396881
type: 'test'
...
# Subtest: row 298 (Q5): a scope narrowed between the raise and the spend ends the grant scope-changed
ok 8 - row 298 (Q5): a scope narrowed between the raise and the spend ends the grant scope-changed
---
duration_ms: 70.178854
type: 'test'
...
# Subtest: row 298 (Q2): an in-scope host grant is spent with no Approve; ls never covers lsblk, nor a scope command extra arguments
ok 9 - row 298 (Q2): an in-scope host grant is spent with no Approve; ls never covers lsblk, nor a scope command extra arguments
---
duration_ms: 75.917567
type: 'test'
...
# Subtest: row 298 (Q5): a host scope narrowed before the spend ends scope-changed
ok 10 - row 298 (Q5): a host scope narrowed before the spend ends scope-changed
---
duration_ms: 68.537493
type: 'test'
...
# Subtest: row 298 Q4: missing scope evidence or a bad scope digest cannot authorize execution
ok 11 - row 298 Q4: missing scope evidence or a bad scope digest cannot authorize execution
---
duration_ms: 89.47811
type: 'test'
...
# Subtest: row 298 T4/T8: an in-scope host grant issues, records and revokes through the existing executor
ok 12 - row 298 T4/T8: an in-scope host grant issues, records and revokes through the existing executor
---
duration_ms: 73.632785
type: 'test'
...
# Subtest: row 298 T6: host enrollment stays open for human Approve even with both methods in scope
ok 13 - row 298 T6: host enrollment stays open for human Approve even with both methods in scope
---
duration_ms: 47.902233
type: 'test'
...
# Subtest: row 298: scope without an organization revision never closes automatically
ok 14 - row 298: scope without an organization revision never closes automatically
---
duration_ms: 48.110426
type: 'test'
...
1..14
# tests 14
# suites 0
# pass 14
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 1178.912887
@@ -0,0 +1,88 @@
TAP version 13
# Subtest: REQ-WAIT-1: the broker hard waits are exactly the list, and match the business vocabulary
ok 1 - REQ-WAIT-1: the broker hard waits are exactly the list, and match the business vocabulary
---
duration_ms: 1.029503
type: 'test'
...
# Subtest: REQ-WAIT-2: a business granting a hard wait at either class is refused; the actions that left are grantable
ok 2 - REQ-WAIT-2: a business granting a hard wait at either class is refused; the actions that left are grantable
---
duration_ms: 19.394396
type: 'test'
...
# Subtest: REQ-DEC-2: every hard wait goes to the human, cited or not, and the arbiter cannot resolve it
ok 3 - REQ-DEC-2: every hard wait goes to the human, cited or not, and the arbiter cannot resolve it
---
duration_ms: 407.134845
type: 'test'
...
# Subtest: REQ-DEC-2: a gated raise citing the current spec goes to the arbiter for its domain; uncited, to the human
ok 4 - REQ-DEC-2: a gated raise citing the current spec goes to the arbiter for its domain; uncited, to the human
---
duration_ms: 168.556027
type: 'test'
...
# Subtest: REQ-DEC-2: an arbiter-approved cited gated decision authorizes the raiser, and the human cannot resolve it
ok 5 - REQ-DEC-2: an arbiter-approved cited gated decision authorizes the raiser, and the human cannot resolve it
---
duration_ms: 48.673479
type: 'test'
...
# Subtest: REQ-DEC-2: a cited merge raised by merge-gate goes to the technical arbiter; a merge raised without the grant routes by citation
ok 6 - REQ-DEC-2: a cited merge raised by merge-gate goes to the technical arbiter; a merge raised without the grant routes by citation
---
duration_ms: 62.672514
type: 'test'
...
# Subtest: REQ-DEC-2: a stale or unconfirmed citation refuses without a decision; an arbiter raising its own goes to the human
ok 7 - REQ-DEC-2: a stale or unconfirmed citation refuses without a decision; an arbiter raising its own goes to the human
---
duration_ms: 95.467172
type: 'test'
...
# Subtest: Q169: the chief of staff's end of the assistant stops every thread run; its own run and another ender's are refused
ok 8 - Q169: the chief of staff's end of the assistant stops every thread run; its own run and another ender's are refused
---
duration_ms: 47.899568
type: 'test'
...
# Subtest: Q169: a revoke of the assistant the chief of staff raises goes to the human, cited or not, and no arbiter resolves it
ok 9 - Q169: a revoke of the assistant the chief of staff raises goes to the human, cited or not, and no arbiter resolves it
---
duration_ms: 113.752003
type: 'test'
...
# Subtest: Q169: another role's cited revoke of the assistant, resolved by an arbiter, is refused
ok 10 - Q169: another role's cited revoke of the assistant, resolved by an arbiter, is refused
---
duration_ms: 61.450425
type: 'test'
...
# Subtest: Q169: a revoke of the assistant citing a decision the human resolved stops its thread run
ok 11 - Q169: a revoke of the assistant citing a decision the human resolved stops its thread run
---
duration_ms: 51.39323
type: 'test'
...
# Subtest: Q169: a cited revoke of a role not in END_PROTECTED still goes to the arbiter, and executes
ok 12 - Q169: a cited revoke of a role not in END_PROTECTED still goes to the arbiter, and executes
---
duration_ms: 50.786581
type: 'test'
...
# Subtest: Q169: a role granted role.revoke at either class still sends a revoke of the assistant to the human
ok 13 - Q169: a role granted role.revoke at either class still sends a revoke of the assistant to the human
---
duration_ms: 65.766422
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 13
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 1270.793796
@@ -0,0 +1,166 @@
TAP version 13
# Subtest: row 280: an occupied TCP port is attempted, refused, and retried with our sshd
ok 1 - row 280: an occupied TCP port is attempted, refused, and retried with our sshd
---
duration_ms: 86.72061
type: 'test'
...
# Subtest: row 280: every injected picker sample is unprivileged and outside the ephemeral range
ok 2 - row 280: every injected picker sample is unprivileged and outside the ephemeral range
---
duration_ms: 0.336822
type: 'test'
...
# Subtest: the executor tests need sshd, ssh, ssh-agent, ssh-add, ssh-keygen and setpriv: a missing one fails, never skips
ok 3 - the executor tests need sshd, ssh, ssh-agent, ssh-add, ssh-keygen and setpriv: a missing one fails, never skips
---
duration_ms: 0.116342
type: 'test'
...
# Subtest: T3: organization.set, limits.set and instances.set refuse hosts, and the writer never runs
ok 4 - T3: organization.set, limits.set and instances.set refuse hosts, and the writer never runs
---
duration_ms: 32.598932
type: 'test'
...
# Subtest: T4: the value check takes one unencrypted ed25519 key and nothing else
ok 5 - T4: the value check takes one unencrypted ed25519 key and nothing else
---
duration_ms: 199.716466
type: 'test'
...
# Subtest: T5 to T8: registry, grant, argv shape and allowlist refusals
ok 6 - T5 to T8: registry, grant, argv shape and allowlist refusals
---
duration_ms: 521.196367
type: 'test'
...
# Subtest: T9: under 1.7 every call needs a decision bound to its host, argv and stdin, spent once
ok 7 - T9: under 1.7 every call needs a decision bound to its host, argv and stdin, spent once
---
duration_ms: 296.725978
type: 'test'
...
# Subtest: T10, T11: argv reaches sudo unchanged after sudo -n --
ok 8 - T10, T11: argv reaches sudo unchanged after sudo -n --
---
duration_ms: 265.557823
type: 'test'
...
# Subtest: T12, T13: exit code passes through, the timeout kills the group, output is capped
ok 9 - T12, T13: exit code passes through, the timeout kills the group, output is capped
---
duration_ms: 1490.959926
type: 'test'
...
# Subtest: T14: a host key not in the registry refuses and nothing runs
ok 10 - T14: a host key not in the registry refuses and nothing runs
---
duration_ms: 178.341381
type: 'test'
...
# Subtest: G18: hosts.check with a wrong pin refuses host-key-mismatch and runs nothing on the host
ok 11 - G18: hosts.check with a wrong pin refuses host-key-mismatch and runs nothing on the host
---
duration_ms: 317.766831
type: 'test'
...
# Subtest: N3: a remote exit 255 that prints the pin refusal text is the command result, and an ssh failure keeps its message
ok 12 - N3: a remote exit 255 that prints the pin refusal text is the command result, and an ssh failure keeps its message
---
duration_ms: 289.494208
type: 'test'
...
# Subtest: T15: ssh reads no config file and no user known_hosts
ok 13 - T15: ssh reads no config file and no user known_hosts
---
duration_ms: 269.54208
type: 'test'
...
# Subtest: T16, T17: key material in output or stdin refuses credential-leak, and no event holds it
ok 14 - T16, T17: key material in output or stdin refuses credential-leak, and no event holds it
---
duration_ms: 601.092393
type: 'test'
...
# Subtest: T18, T19, T20: one call at a time, no key in any argv or env, and nothing left after
ok 15 - T18, T19, T20: one call at a time, no key in any argv or env, and nothing left after
---
duration_ms: 4648.633835
type: 'test'
...
# Subtest: T21: revoke kills the call in flight, and the next call refuses
ok 16 - T21: revoke kills the call in flight, and the next call refuses
---
duration_ms: 295.363959
type: 'test'
...
# Subtest: T22: events carry host, address, user and argv in clear, and sizes and hashes only
ok 17 - T22: events carry host, address, user and argv in clear, and sizes and hashes only
---
duration_ms: 262.958685
type: 'test'
...
# Subtest: T24: no literal gitea and vikunja kind list outside vocabulary.mjs, and the credential use sites are known
ok 18 - T24: no literal gitea and vikunja kind list outside vocabulary.mjs, and the credential use sites are known
---
duration_ms: 17.681448
type: 'test'
...
# Subtest: T25: no role definition lists host.sudo while it is a hard wait
ok 19 - T25: no role definition lists host.sudo while it is a hard wait
---
duration_ms: 0.472588
type: 'test'
...
# Subtest: T27: the bus child dying takes ssh and ssh-agent with it
ok 20 - T27: the bus child dying takes ssh and ssh-agent with it
---
duration_ms: 313.589659
type: 'test'
...
# Subtest: T27: ssh-add -t drops the key from an agent the test keeps alive
ok 21 - T27: ssh-add -t drops the key from an agent the test keeps alive
---
duration_ms: 3554.796534
type: 'test'
...
# Subtest: N2: a hung ssh-add is killed at its limit or on abort, and nothing is left running
ok 22 - N2: a hung ssh-add is killed at its limit or on abort, and nothing is left running
---
duration_ms: 425.147853
type: 'test'
...
# Subtest: T27: the start sweep keeps a live bus dir and kills only a matching live process
ok 23 - T27: the start sweep keeps a live bus dir and kills only a matching live process
---
duration_ms: 26.648991
type: 'test'
...
# Subtest: T27: the bus start sweeps <configDir>/secrets/run before it listens, and a stray entry stops the start
ok 24 - T27: the bus start sweeps <configDir>/secrets/run before it listens, and a stray entry stops the start
---
duration_ms: 49.434378
type: 'test'
...
# Subtest: M3: host.run refuses host-not-granted unless the grant record has an approved, spent host grant
ok 25 - M3: host.run refuses host-not-granted unless the grant record has an approved, spent host grant
---
duration_ms: 139.457427
type: 'test'
...
# Subtest: M3: a host_grants record gives Credentials a store reference at start, and a restart reads its key
ok 26 - M3: a host_grants record gives Credentials a store reference at start, and a restart reads its key
---
duration_ms: 98.437944
type: 'test'
...
1..26
# tests 26
# suites 0
# pass 26
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 14505.572071
@@ -0,0 +1,46 @@
TAP version 13
# Subtest: G16: the writer refuses each user, tag and key the design names, before any key file
ok 1 - G16: the writer refuses each user, tag and key the design names, before any key file
---
duration_ms: 1955.505179
type: 'test'
...
# Subtest: G16: from= comes from the host file, a privileged user skips the group and sudo checks, and the line is exact
ok 2 - G16: from= comes from the host file, a privileged user skips the group and sudo checks, and the line is exact
---
duration_ms: 503.650032
type: 'test'
...
# Subtest: G16: list shows tagged lines only, and add and remove never touch a line outside the tag pattern
ok 3 - G16: list shows tagged lines only, and add and remove never touch a line outside the tag pattern
---
duration_ms: 253.063447
type: 'test'
...
# Subtest: G25: the writer refuses a symlinked dir or user file, a group-writable dir and an odd tmp, and writes 0644
ok 4 - G25: the writer refuses a symlinked dir or user file, a group-writable dir and an odd tmp, and writes 0644
---
duration_ms: 363.332708
type: 'test'
...
# Subtest: G16: mosaic-keys passes the three requests to the writer through sudo and refuses anything else without it
ok 5 - G16: mosaic-keys passes the three requests to the writer through sudo and refuses anything else without it
---
duration_ms: 63.308266
type: 'test'
...
# Subtest: E3: the sudoers line and the sshd drop-in are the design lines and parse
ok 6 - E3: the sudoers line and the sshd drop-in are the design lines and parse
---
duration_ms: 12.536171
type: 'test'
...
1..6
# tests 6
# suites 0
# pass 6
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 3207.523128
@@ -0,0 +1,34 @@
TAP version 13
# Subtest: human proof binds CLI entry, process start and nonce; agents and incomplete ancestry refuse
ok 1 - human proof binds CLI entry, process start and nonce; agents and incomplete ancestry refuse
---
duration_ms: 1.387596
type: 'test'
...
# Subtest: process reader gets own kernel identity without exposing environment values
ok 2 - process reader gets own kernel identity without exposing environment values
---
duration_ms: 0.424386
type: 'test'
...
# Subtest: EACCES ancestor environments skip only markers; commands and registered launches still refuse
ok 3 - EACCES ancestor environments skip only markers; commands and registered launches still refuse
---
duration_ms: 0.548357
type: 'test'
...
# Subtest: real pid 1 remains inspectable when its environment is protected
ok 4 - real pid 1 remains inspectable when its environment is protected
---
duration_ms: 0.222025
type: 'test'
...
1..4
# tests 4
# suites 0
# pass 4
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 54.190651
@@ -0,0 +1,30 @@
TAP version 13
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# Subtest: row 165: instances and instances.set refuse every non-human session but the tester, the chief of staff included, and pass the verified actor
ok 1 - row 165: instances and instances.set refuse every non-human session but the tester, the chief of staff included, and pass the verified actor
---
duration_ms: 33.874028
type: 'test'
...
# Subtest: row 165 runtime: an add and a change reach the organization file with the human as actor; each refusal keeps the bytes and logs nothing
ok 2 - row 165 runtime: an add and a change reach the organization file with the human as actor; each refusal keeps the bytes and logs nothing
---
duration_ms: 119.895174
type: 'test'
...
# Subtest: row 194 T12: agent and reader sessions refuse veto.set; the tester gets add and change but not delete or veto.set; the human passes the hook for each listed verb
ok 3 - row 194 T12: agent and reader sessions refuse veto.set; the tester gets add and change but not delete or veto.set; the human passes the hook for each listed verb
---
duration_ms: 23.508596
type: 'test'
...
1..3
# tests 3
# suites 0
# pass 3
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 258.81023
@@ -0,0 +1,40 @@
TAP version 13
# Subtest: system Python is a resolved root-owned ELF, never a shim or home interpreter
ok 1 - system Python is a resolved root-owned ELF, never a shim or home interpreter
---
duration_ms: 1.934039
type: 'test'
...
# Subtest: real system interpreter is available and safely inspected
ok 2 - real system interpreter is available and safely inspected
---
duration_ms: 18.926583
type: 'test'
...
# Subtest: restart receipt appends actual replacement identity and refuses unsafe files
ok 3 - restart receipt appends actual replacement identity and refuses unsafe files
---
duration_ms: 2.627052
type: 'test'
...
# Subtest: activation gate compares fresh startup receipt to the current interpreter identity
ok 4 - activation gate compares fresh startup receipt to the current interpreter identity
---
duration_ms: 1.278684
type: 'test'
...
# Subtest: non-regular startup receipt refuses promptly without waiting on a FIFO peer
ok 5 - non-regular startup receipt refuses promptly without waiting on a FIFO peer
---
duration_ms: 27.588406
type: 'test'
...
1..5
# tests 5
# suites 0
# pass 5
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 98.09596
@@ -0,0 +1,118 @@
TAP version 13
# Subtest: REQ-DEC-2: a merge-gate raise its arbiter resolved lands through the host op: checkLand answers the facts and a ticket, records nothing, and recordLand spends the decision once
ok 1 - REQ-DEC-2: a merge-gate raise its arbiter resolved lands through the host op: checkLand answers the facts and a ticket, records nothing, and recordLand spends the decision once
---
duration_ms: 36.588915
type: 'test'
...
# Subtest: checkLand refuses on the decision and the review
ok 2 - checkLand refuses on the decision and the review
---
duration_ms: 33.674416
type: 'test'
...
# Subtest: REQ-LAND-1: a gated merge decision refuses not-authorized, cited and approved by the arbiter or uncited and approved by the human
ok 3 - REQ-LAND-1: a gated merge decision refuses not-authorized, cited and approved by the arbiter or uncited and approved by the human
---
duration_ms: 83.354839
type: 'test'
...
# Subtest: REQ-LAND-1: a within-role merge grant refuses not-authorized at the land
ok 4 - REQ-LAND-1: a within-role merge grant refuses not-authorized at the land
---
duration_ms: 22.631904
type: 'test'
...
# Subtest: a cross-role merge that routes to the human, because merge-gate is its own arbiter, lands on the human's CLI answer
ok 5 - a cross-role merge that routes to the human, because merge-gate is its own arbiter, lands on the human's CLI answer
---
duration_ms: 25.496459
type: 'test'
...
# Subtest: a merge option with no first line refuses no-subject, as land-work does
ok 6 - a merge option with no first line refuses no-subject, as land-work does
---
duration_ms: 23.900985
type: 'test'
...
# Subtest: checkLand refuses with land-work's codes past the authority check, and a decision raised for refactor never lands
ok 7 - checkLand refuses with land-work's codes past the authority check, and a decision raised for refactor never lands
---
duration_ms: 60.41266
type: 'test'
...
# Subtest: a ticket outlives the run that asked, and recordLand checks the task again
ok 8 - a ticket outlives the run that asked, and recordLand checks the task again
---
duration_ms: 28.068033
type: 'test'
...
# Subtest: two tickets on one decision: the first recordLand lands, the second refuses decision-consumed and records nothing
ok 9 - two tickets on one decision: the first recordLand lands, the second refuses decision-consumed and records nothing
---
duration_ms: 27.616875
type: 'test'
...
# Subtest: landRefused files the code on the task, tells the role only with notify, and ends the ticket
ok 10 - landRefused files the code on the task, tells the role only with notify, and ends the ticket
---
duration_ms: 27.21367
type: 'test'
...
# Subtest: landHeld is true only for an approved, unspent cross-role merge decision this role raised for a task in this thread
ok 11 - landHeld is true only for an approved, unspent cross-role merge decision this role raised for a task in this thread
---
duration_ms: 26.668436
type: 'test'
...
# Subtest: landHolders lists a merge decision exactly while landHeld is true for its non-thread instance, in decision order
ok 12 - landHolders lists a merge decision exactly while landHeld is true for its non-thread instance, in decision order
---
duration_ms: 37.138953
type: 'test'
...
# Subtest: landHolders leaves out a thread instance's decision, even one raised before its role became one
ok 13 - landHolders leaves out a thread instance's decision, even one raised before its role became one
---
duration_ms: 22.438369
type: 'test'
...
# Subtest: landRelease releases the holding run by land-relaunch once it has asked message.receive and nothing delivered to it is unread, and waiting messages go to the next holder
ok 14 - landRelease releases the holding run by land-relaunch once it has asked message.receive and nothing delivered to it is unread, and waiting messages go to the next holder
---
duration_ms: 34.032962
type: 'test'
...
# Subtest: a landing run started after the resolution passes checkLand for its held decision before any message.receive, and lands it
ok 15 - a landing run started after the resolution passes checkLand for its held decision before any message.receive, and lands it
---
duration_ms: 27.760937
type: 'test'
...
# Subtest: the bus process answers landHolders and landRelease from their own lines, not as credentialStatus
ok 16 - the bus process answers landHolders and landRelease from their own lines, not as credentialStatus
---
duration_ms: 134.74686
type: 'test'
...
# Subtest: usage.begin with a decision id needs it held for the run's instance, usage.end needs the begin, and the limit checks see the landing turn
ok 17 - usage.begin with a decision id needs it held for the run's instance, usage.end needs the begin, and the limit checks see the landing turn
---
duration_ms: 33.789151
type: 'test'
...
# Subtest: no run may write the action.allowed for git.merge.protected itself
ok 18 - no run may write the action.allowed for git.merge.protected itself
---
duration_ms: 16.411938
type: 'test'
...
1..18
# tests 18
# suites 0
# pass 18
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 789.39976
@@ -0,0 +1,58 @@
TAP version 13
# Subtest: a message to a stopped role sends launch.by one notice, and the result says so
ok 1 - a message to a stopped role sends launch.by one notice, and the result says so
---
duration_ms: 25.835391
type: 'test'
...
# Subtest: a message to a role outside launch.instances says so in its result and in the notice
ok 2 - a message to a role outside launch.instances says so in its result and in the notice
---
duration_ms: 18.604298
type: 'test'
...
# Subtest: a message to a running role sends no notice and its result is unchanged
ok 3 - a message to a running role sends no notice and its result is unchanged
---
duration_ms: 13.025474
type: 'test'
...
# Subtest: a re-route at a claim, a release and claim, and a broker restart send no second notice
ok 4 - a re-route at a claim, a release and claim, and a broker restart send no second notice
---
duration_ms: 19.762766
type: 'test'
...
# Subtest: a run launched but not yet claimed counts as no holder
ok 5 - a run launched but not yet claimed counts as no holder
---
duration_ms: 12.46569
type: 'test'
...
# Subtest: no notice for a message to launch.by, from it, a refused one from a tester, to the human, or in a thread to a thread instance
ok 6 - no notice for a message to launch.by, from it, a refused one from a tester, to the human, or in a thread to a thread instance
---
duration_ms: 25.170526
type: 'test'
...
# Subtest: a business with no launch block tells nobody and says there is no launcher
ok 7 - a business with no launch block tells nobody and says there is no launcher
---
duration_ms: 10.740537
type: 'test'
...
# Subtest: the notice sender stays internal: no role is named _bus and no caller can send as it or to it
ok 8 - the notice sender stays internal: no role is named _bus and no caller can send as it or to it
---
duration_ms: 30.515636
type: 'test'
...
1..8
# tests 8
# suites 0
# pass 8
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 238.838053
@@ -0,0 +1,28 @@
TAP version 13
# Subtest: row 302 a run threadIdle released answers launcher-released on receive, state, read and send, logs each, and claims nothing again
ok 1 - row 302 a run threadIdle released answers launcher-released on receive, state, read and send, logs each, and claims nothing again
---
duration_ms: 42.884687
type: 'test'
...
# Subtest: row 302 with a run launcher-released, a run that lost its claim another way still answers not-holder
ok 2 - row 302 with a run launcher-released, a run that lost its claim another way still answers not-holder
---
duration_ms: 30.416458
type: 'test'
...
# Subtest: row 302 a run landRelease released answers launcher-released, and claims nothing again
ok 3 - row 302 a run landRelease released answers launcher-released, and claims nothing again
---
duration_ms: 31.926716
type: 'test'
...
1..3
# tests 3
# suites 0
# pass 3
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 187.778823
@@ -0,0 +1,46 @@
TAP version 13
# Subtest: C2-03a library.sync: every agent, the tester and a reader are refused before the adapter runs
ok 1 - C2-03a library.sync: every agent, the tester and a reader are refused before the adapter runs
---
duration_ms: 18.809299
type: 'test'
...
# Subtest: C2-03a library.sync: the human fetches, accept passes through, and a held sync is a recorded refusal
ok 2 - C2-03a library.sync: the human fetches, accept passes through, and a held sync is a recorded refusal
---
duration_ms: 16.128008
type: 'test'
...
# Subtest: C2-03a library.sync: a LibraryError keeps its code and a host without sync is not configured
ok 3 - C2-03a library.sync: a LibraryError keeps its code and a host without sync is not configured
---
duration_ms: 22.831234
type: 'test'
...
# Subtest: C2-03a runtime: a librarySync from a boot config, with no function, is refused
ok 4 - C2-03a runtime: a librarySync from a boot config, with no function, is refused
---
duration_ms: 1.164045
type: 'test'
...
# Subtest: C2-03a runtime: the timer syncs each entry with a user at start and on each tick, logs codes only, and stops on close
ok 5 - C2-03a runtime: the timer syncs each entry with a user at start and on each tick, logs codes only, and stops on close
---
duration_ms: 539.769997
type: 'test'
...
# Subtest: row 254 human-cli: library.sync outlasts the 5 s client default, and library.status does not
ok 6 - row 254 human-cli: library.sync outlasts the 5 s client default, and library.status does not
---
duration_ms: 6077.612028
type: 'test'
...
1..6
# tests 6
# suites 0
# pass 6
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 6793.098387
@@ -0,0 +1,46 @@
TAP version 13
# Subtest: C2-04 M4: both verbs reject every agent before arguments or adapter access
ok 1 - C2-04 M4: both verbs reject every agent before arguments or adapter access
---
duration_ms: 34.532465
type: 'test'
...
# Subtest: C2-04 bus: human reads validate keys and return adapter results without path leakage
ok 2 - C2-04 bus: human reads validate keys and return adapter results without path leakage
---
duration_ms: 13.9518
type: 'test'
...
# Subtest: C2-04 socket: each async library verb resolves its result rather than serializing {}
ok 3 - C2-04 socket: each async library verb resolves its result rather than serializing {}
---
duration_ms: 71.717328
type: 'test'
...
# Subtest: C2-04 runtime: protectedRoots skips library but retains real code-root credential protection
ok 4 - C2-04 runtime: protectedRoots skips library but retains real code-root credential protection
---
duration_ms: 102.755164
type: 'test'
...
# Subtest: C2-04 runtime: unsafe existing mirror refuses boot and never publishes a socket
ok 5 - C2-04 runtime: unsafe existing mirror refuses boot and never publishes a socket
---
duration_ms: 23.522113
type: 'test'
...
# Subtest: C2-04 runtime: real library adapters reach the socket and lock waits leave other bus reads responsive
ok 6 - C2-04 runtime: real library adapters reach the socket and lock waits leave other bus reads responsive
---
duration_ms: 205.694746
type: 'test'
...
1..6
# tests 6
# suites 0
# pass 6
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 563.805395
@@ -0,0 +1,59 @@
TAP version 13
# organization: {"event":"reload-needs-restart","business":"demo"}
# Subtest: T20 fire: a revoke that fails stops the fire with the file unchanged; one that succeeds revokes, keeps the directory and names the services outside the store
ok 1 - T20 fire: a revoke that fails stops the fire with the file unchanged; one that succeeds revokes, keeps the directory and names the services outside the store
---
duration_ms: 88.783422
type: 'test'
...
# Subtest: T20 fire: an instance already delisted still has its tokens revoked and the file is left alone
ok 2 - T20 fire: an instance already delisted still has its tokens revoked and the file is left alone
---
duration_ms: 50.606633
type: 'test'
...
# Subtest: T20 fire: with no entry in the running bus, a token on disk refuses and an empty store goes on
ok 3 - T20 fire: with no entry in the running bus, a token on disk refuses and an empty store goes on
---
duration_ms: 54.539356
type: 'test'
...
# Subtest: T20 delete: a revoke that fails keeps the file; one that succeeds clears the store, deletes, and names the tracker bot
ok 4 - T20 delete: a revoke that fails keeps the file; one that succeeds clears the store, deletes, and names the tracker bot
---
duration_ms: 69.390859
type: 'test'
...
# Subtest: T20 delete: with no entry in the running bus, a token file is cleared and the delete goes on; a file reference refuses
ok 5 - T20 delete: with no entry in the running bus, a token file is cleared and the delete goes on; a file reference refuses
---
duration_ms: 53.604096
type: 'test'
...
# Subtest: T21 delete: a write between the raise and the take makes the delete refuse revision-conflict before it revokes anything
ok 6 - T21 delete: a write between the raise and the take makes the delete refuse revision-conflict before it revokes anything
---
duration_ms: 54.846039
type: 'test'
...
# Subtest: row 281 T1 fire: a host.<id> or granted gitea file in the store refuses step B credential-revoke-failed, file unchanged
ok 7 - row 281 T1 fire: a host.<id> or granted gitea file in the store refuses step B credential-revoke-failed, file unchanged
---
duration_ms: 54.13066
type: 'test'
...
# Subtest: row 281 T1 start: a host grant record whose key file is gone starts and reads not-issued
ok 8 - row 281 T1 start: a host grant record whose key file is gone starts and reads not-issued
---
duration_ms: 52.43513
type: 'test'
...
1..8
# tests 8
# suites 0
# pass 8
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 598.673464
@@ -0,0 +1,88 @@
TAP version 13
# Subtest: row 194 T12: agent and reader sessions refuse the lifecycle verbs before any effect; the tester gets launch, end and the request read, never regenerate
ok 1 - row 194 T12: agent and reader sessions refuse the lifecycle verbs before any effect; the tester gets launch, end and the request read, never regenerate
---
duration_ms: 36.805553
type: 'test'
...
# Subtest: row 194 V2 and V4 at the verb: the request is open, by the human, with a human.input; thread, retired, unknown and revoked refuse with no event
ok 2 - row 194 V2 and V4 at the verb: the request is open, by the human, with a human.input; thread, retired, unknown and revoked refuse with no event
---
duration_ms: 20.97007
type: 'test'
...
# Subtest: row 194 D1.1 take: a request is taken once, closes once, and lifecycleRequests lists only what is not closed
ok 3 - row 194 D1.1 take: a request is taken once, closes once, and lifecycleRequests lists only what is not closed
---
duration_ms: 15.743079
type: 'test'
...
# Subtest: row 194 D1.1 take: a launch.revoke after the request closes it launch-revoked, and a request past 60 s closes request-expired
ok 4 - row 194 D1.1 take: a launch.revoke after the request closes it launch-revoked, and a request past 60 s closes request-expired
---
duration_ms: 17.83732
type: 'test'
...
# Subtest: row 194 T15 (bus): while halted, launch and regenerate refuse processing-halted at the verb and at the take, hire and fire refuse, terminate goes; an unreadable switch refuses with its code
ok 5 - row 194 T15 (bus): while halted, launch and regenerate refuse processing-halted at the verb and at the take, hire and fire refuse, terminate goes; an unreadable switch refuses with its code
---
duration_ms: 27.33388
type: 'test'
...
# Subtest: row 194 T12a: the tester launches and ends on its own business with actor tester; bus.tester off in the file refuses the call and the take tester-off
ok 6 - row 194 T12a: the tester launches and ends on its own business with actor tester; bus.tester off in the file refuses the call and the take tester-off
---
duration_ms: 23.619105
type: 'test'
...
# Subtest: row 194 V3 terminate: claims revoked, open requests cancelled, bound runs named, taken requests listed; nothing at all answers not-held
ok 7 - row 194 V3 terminate: claims revoked, open requests cancelled, bound runs named, taken requests listed; nothing at all answers not-held
---
duration_ms: 26.637455
type: 'test'
...
# Subtest: row 194 V3 terminate of a thread instance: the human ends every thread, the tester only its own
ok 8 - row 194 V3 terminate of a thread instance: the human ends every thread, the tester only its own
---
duration_ms: 19.564192
type: 'test'
...
# Subtest: row 194 T6 V5 order at the verb: the writer's named refusals, then instance-running, instance-starting, the last-listed refusal and the revision
ok 9 - row 194 T6 V5 order at the verb: the writer's named refusals, then instance-running, instance-starting, the last-listed refusal and the revision
---
duration_ms: 29.26284
type: 'test'
...
# Subtest: row 194 V5: an open launch past its 60 s is not starting, as it can only close request-expired
ok 10 - row 194 V5: an open launch past its 60 s is not starting, as it can only close request-expired
---
duration_ms: 12.09276
type: 'test'
...
# Subtest: row 194 V5 after the take: lifecycleDelete re-checks running and starting, then commits through the writer with the human as actor
ok 11 - row 194 V5 after the take: lifecycleDelete re-checks running and starting, then commits through the writer with the human as actor
---
duration_ms: 20.822909
type: 'test'
...
# Subtest: row 194 V5 retry: a retired name deletes again only after workspace-rename-failed, and that request commits nothing
ok 12 - row 194 V5 retry: a retired name deletes again only after workspace-rename-failed, and that request commits nothing
---
duration_ms: 18.478586
type: 'test'
...
# Subtest: row 194 V5 runtime: a delete request, the take and lifecycleDelete commit the file with retired, log the human and reload so the name no longer binds
ok 13 - row 194 V5 runtime: a delete request, the take and lifecycleDelete commit the file with retired, log the human and reload so the name no longer binds
---
duration_ms: 128.114406
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 13
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 475.014609
@@ -0,0 +1,106 @@
TAP version 13
# Subtest: REQ-LIMIT-3 limitLeaves finds every limit object and skips the agent numbers
ok 1 - REQ-LIMIT-3 limitLeaves finds every limit object and skips the agent numbers
---
duration_ms: 1.279942
type: 'test'
...
# Subtest: REQ-LIMIT-3 limitLeaves takes token limits at schema depth only, whatever their names
ok 2 - REQ-LIMIT-3 limitLeaves takes token limits at schema depth only, whatever their names
---
duration_ms: 0.188287
type: 'test'
...
# Subtest: REQ-LIMIT-3 with no check switched on a launch is allowed, a turn never stops, and every limit is not enforced
ok 3 - REQ-LIMIT-3 with no check switched on a launch is allowed, a turn never stops, and every limit is not enforced
---
duration_ms: 13.449709
type: 'test'
...
# Subtest: REQ-LIMIT-3 a fixture check that refuses refuses the launch and stops the turn, logged with the limit and the count
ok 4 - REQ-LIMIT-3 a fixture check that refuses refuses the launch and stops the turn, logged with the limit and the count
---
duration_ms: 13.36592
type: 'test'
...
# Subtest: REQ-LIMIT-3 a report that omits a limit shows it not enforced; a counted entry and a reason come through
ok 5 - REQ-LIMIT-3 a report that omits a limit shows it not enforced; a counted entry and a reason come through
---
duration_ms: 11.995207
type: 'test'
...
# Subtest: REQ-LIMIT-4 each check gets the business, a copy of the limits, the subject, the records and the time
ok 6 - REQ-LIMIT-4 each check gets the business, a copy of the limits, the subject, the records and the time
---
duration_ms: 16.847287
type: 'test'
...
# Subtest: REQ-LIMIT-4 fail closed: a throw refuses, stops and fails the report, naming the check and the code
ok 7 - REQ-LIMIT-4 fail closed: a throw refuses, stops and fails the report, naming the check and the code
---
duration_ms: 12.592307
type: 'test'
...
# Subtest: REQ-LIMIT-4 fail closed: a malformed answer, a promise, a rejected promise, a non-boolean or a bad hit is malformed-answer
ok 8 - REQ-LIMIT-4 fail closed: a malformed answer, a promise, a rejected promise, a non-boolean or a bad hit is malformed-answer
---
duration_ms: 14.569999
type: 'test'
...
# Subtest: REQ-LIMIT-4 fail closed: a check switched on but not loaded refuses, stops and fails every limit as not-loaded
ok 9 - REQ-LIMIT-4 fail closed: a check switched on but not loaded refuses, stops and fails every limit as not-loaded
---
duration_ms: 10.917135
type: 'test'
...
# Subtest: REQ-LIMIT-4 state(), never-loaded case: before any load the report shows not enforced, or not-loaded for a switched-on check
ok 10 - REQ-LIMIT-4 state(), never-loaded case: before any load the report shows not enforced, or not-loaded for a switched-on check
---
duration_ms: 9.490498
type: 'test'
...
# Subtest: REQ-LIMIT-4 state(), first-load-refused case: a check refused on its first load is not-loaded in mayLaunch, mustStop and report
ok 11 - REQ-LIMIT-4 state(), first-load-refused case: a check refused on its first load is not-loaded in mayLaunch, mustStop and report
---
duration_ms: 10.415123
type: 'test'
...
# Subtest: REQ-LIMIT-4 fail closed: an unreadable organization file refuses and stops with check null; the report throws
ok 12 - REQ-LIMIT-4 fail closed: an unreadable organization file refuses and stops with check null; the report throws
---
duration_ms: 10.061642
type: 'test'
...
# Subtest: REQ-LIMIT-4 fail closed: unreadable records refuse and stop with check null and fail the report
ok 13 - REQ-LIMIT-4 fail closed: unreadable records refuse and stop with check null and fail the report
---
duration_ms: 0.432421
type: 'test'
...
# Subtest: REQ-LIMIT-3 the shipped token-limit, through the real loader, counts known records only since the limit was set
ok 14 - REQ-LIMIT-3 the shipped token-limit, through the real loader, counts known records only since the limit was set
---
duration_ms: 22.846723
type: 'test'
...
# Subtest: REQ-LIMIT-3 a token limit for a provider named limit is counted and refuses, beside an agent limit of the same name
ok 15 - REQ-LIMIT-3 a token limit for a provider named limit is counted and refuses, beside an agent limit of the same name
---
duration_ms: 9.658881
type: 'test'
...
# Subtest: REQ-LIMIT-3 core reaches limit checks only through the plug-in loader
ok 16 - REQ-LIMIT-3 core reaches limit checks only through the plug-in loader
---
duration_ms: 1.016701
type: 'test'
...
1..16
# tests 16
# suites 0
# pass 16
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 231.276327
@@ -0,0 +1,40 @@
TAP version 13
# Subtest: REQ-LIMIT-4 a role run at its limit stops at the end of its turn: RESULT and read land first, the claim is revoked by limit-check
ok 1 - REQ-LIMIT-4 a role run at its limit stops at the end of its turn: RESULT and read land first, the claim is revoked by limit-check
---
duration_ms: 32.150647
type: 'test'
...
# Subtest: REQ-LIMIT-4 the stop also lands on state; a run with no stop ends without a limit
ok 2 - REQ-LIMIT-4 the stop also lands on state; a run with no stop ends without a limit
---
duration_ms: 32.281556
type: 'test'
...
# Subtest: REQ-LIMIT-4 fail closed: a mustStop throw or a malformed answer stops the run, naming the bus and the code
ok 3 - REQ-LIMIT-4 fail closed: a mustStop throw or a malformed answer stops the run, naming the bus and the code
---
duration_ms: 79.939409
type: 'test'
...
# Subtest: REQ-LIMIT-4 a thread run at its limit is released with the reason, and its end record names the limit
ok 4 - REQ-LIMIT-4 a thread run at its limit is released with the reason, and its end record names the limit
---
duration_ms: 20.75732
type: 'test'
...
# Subtest: REQ-LIMIT-4 a broker with no limit checks configured never stops a run
ok 5 - REQ-LIMIT-4 a broker with no limit checks configured never stops a run
---
duration_ms: 14.916524
type: 'test'
...
1..5
# tests 5
# suites 0
# pass 5
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 255.509779
@@ -0,0 +1,46 @@
TAP version 13
# limits: {"event":"limit-reached","business":"demo","check":"token-limit","export":"mayLaunch","subject":{"instance":"coder","provider":"zai","model":"glm-5.3-flash","account":null},"path":["tokens","instances","coder"],"limit":0,"count":0,"unknownTurns":0}
# organization: {"event":"reload-needs-restart","business":"demo"}
# usage: {"event":"usage-unknown","business":"demo","run":"run1","instance":"coder","turn":"e38fa3e5-3498-45d2-919f-18d1646e4b6a","source":"@none","code":"baseline-unknown"}
# limits: {"event":"limit-reached","business":"demo","check":"token-limit","export":"mustStop","subject":{"instance":"coder","provider":"zai","model":"glm-5.3-flash","account":null},"path":["tokens","instances","coder"],"limit":0,"count":0,"unknownTurns":1}
# usage: {"event":"usage-unknown","business":"demo","run":"run1","instance":"coder","turn":"fcf2b115-abb0-48d8-bf7a-73d6d4899c9d","source":"@none","code":"baseline-unknown"}
# Subtest: REQ-LIMIT-3 REQ-LIMIT-4 runtime: limits carries the token count, mayLaunch refuses at the limit, a reset moves since
# organization: {"event":"reload-needs-restart","business":"demo"}
ok 1 - REQ-LIMIT-3 REQ-LIMIT-4 runtime: limits carries the token count, mayLaunch refuses at the limit, a reset moves since
---
duration_ms: 137.280622
type: 'test'
...
# Subtest: REQ-LIMIT-3 runtime: with no limit check switched on, the limit shows not enforced and every launch is allowed
ok 2 - REQ-LIMIT-3 runtime: with no limit check switched on, the limit shows not enforced and every launch is allowed
---
duration_ms: 35.670316
type: 'test'
...
# Subtest: REQ-LIMIT-4 runtime: the broker asks the shipped token-limit after a turn, and the run at its limit stops on its next receive
ok 3 - REQ-LIMIT-4 runtime: the broker asks the shipped token-limit after a turn, and the run at its limit stops on its next receive
---
duration_ms: 48.214458
type: 'test'
...
# Subtest: REQ-LIMIT-4 runtime: with no usage source a turn is unknown, counts zero and stops nothing under a limit of 1
ok 4 - REQ-LIMIT-4 runtime: with no usage source a turn is unknown, counts zero and stops nothing under a limit of 1
---
duration_ms: 47.345605
type: 'test'
...
# Subtest: REQ-LIMIT-3 runtime: switching a limit check on with plugins.set loads it without a launch or a turn
ok 5 - REQ-LIMIT-3 runtime: switching a limit check on with plugins.set loads it without a launch or a turn
---
duration_ms: 65.017203
type: 'test'
...
1..5
# tests 5
# suites 0
# pass 5
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 375.410031
@@ -0,0 +1,30 @@
TAP version 13
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# Subtest: limits binds actor from human proof and rejects role, reader, a tester set and forged actor
ok 1 - limits binds actor from human proof and rejects role, reader, a tester set and forged actor
---
duration_ms: 20.917794
type: 'test'
...
# Subtest: runtime wires verified human settings to the actual shared file writer and actor receipt
ok 2 - runtime wires verified human settings to the actual shared file writer and actor receipt
---
duration_ms: 101.845678
type: 'test'
...
# Subtest: uncertain organization receipts leave bus startup and reads alone but refuse writes until reconciled
ok 3 - uncertain organization receipts leave bus startup and reads alone but refuse writes until reconciled
---
duration_ms: 53.765707
type: 'test'
...
1..3
# tests 3
# suites 0
# pass 3
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 251.817766
@@ -0,0 +1,28 @@
TAP version 13
# Subtest: within-role sends cite an open gated launch decision without spending it or naming it in grants
ok 1 - within-role sends cite an open gated launch decision without spending it or naming it in grants
---
duration_ms: 26.66
type: 'test'
...
# Subtest: missing and foreign-business citations refuse and roll back message and grant
ok 2 - missing and foreign-business citations refuse and roll back message and grant
---
duration_ms: 17.748971
type: 'test'
...
# Subtest: cross-role sends still need a matching resolved decision and consume it once
ok 3 - cross-role sends still need a matching resolved decision and consume it once
---
duration_ms: 23.512535
type: 'test'
...
1..3
# tests 3
# suites 0
# pass 3
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 141.955036
@@ -0,0 +1,46 @@
TAP version 13
# Subtest: trail on a hidden message id answers exactly as on an unknown id, for the owner, a reader and the tester
ok 1 - trail on a hidden message id answers exactly as on an unknown id, for the owner, a reader and the tester
---
duration_ms: 30.46557
type: 'test'
...
# Subtest: replies on a hidden message id answers exactly as on an unknown id, for the owner, a reader and the tester
ok 2 - replies on a hidden message id answers exactly as on an unknown id, for the owner, a reader and the tester
---
duration_ms: 23.470221
type: 'test'
...
# Subtest: trail on a decision keeps the decision and drops the user thread messages, their deliveries and their events
ok 3 - trail on a decision keeps the decision and drops the user thread messages, their deliveries and their events
---
duration_ms: 34.362181
type: 'test'
...
# Subtest: replies leaves out other users thread messages and still fills a page
ok 4 - replies leaves out other users thread messages and still fills a page
---
duration_ms: 177.88772
type: 'test'
...
# Subtest: messages in the business human and tester threads are not hidden (row 177 unchanged)
ok 5 - messages in the business human and tester threads are not hidden (row 177 unchanged)
---
duration_ms: 36.082327
type: 'test'
...
# Subtest: governance pin: the owner sees decisions, inbox entries, claims, tasks and project files, but not the user messages
ok 6 - governance pin: the owner sees decisions, inbox entries, claims, tasks and project files, but not the user messages
---
duration_ms: 99.237636
type: 'test'
...
1..6
# tests 6
# suites 0
# pass 6
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 476.200395
@@ -0,0 +1,34 @@
TAP version 13
# Subtest: messages pages all human messages newest first without writes; read state is history
ok 1 - messages pages all human messages newest first without writes; read state is history
---
duration_ms: 310.007058
type: 'test'
...
# Subtest: messages refuses role callers, invalid paging and cursors outside this human feed
ok 2 - messages refuses role callers, invalid paging and cursors outside this human feed
---
duration_ms: 25.833777
type: 'test'
...
# Subtest: views messages passes only its paging arguments through
ok 3 - views messages passes only its paging arguments through
---
duration_ms: 0.251497
type: 'test'
...
# Subtest: messages isolates businesses even with a valid foreign cursor
ok 4 - messages isolates businesses even with a valid foreign cursor
---
duration_ms: 17.936793
type: 'test'
...
1..4
# tests 4
# suites 0
# pass 4
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 465.514975
@@ -0,0 +1,88 @@
TAP version 13
# Subtest: the assistant sends to the user and to the chief of staff only
ok 1 - the assistant sends to the user and to the chief of staff only
---
duration_ms: 34.79863
type: 'test'
...
# Subtest: an assistant send to any other role, or to the tester, is refused and logged
ok 2 - an assistant send to any other role, or to the tester, is refused and logged
---
duration_ms: 30.495085
type: 'test'
...
# Subtest: only the user and the chief of staff may send to the assistant; the tester is refused by default
ok 3 - only the user and the chief of staff may send to the assistant; the tester is refused by default
---
duration_ms: 32.853869
type: 'test'
...
# Subtest: REQ-ASSIST-2 REQ-THREAD-1 thread.send to an instance that does not hear from the user is refused and stores nothing
ok 4 - REQ-ASSIST-2 REQ-THREAD-1 thread.send to an instance that does not hear from the user is refused and stores nothing
---
duration_ms: 31.535305
type: 'test'
...
# Subtest: a sender-side list alone refuses a send to a role that has no list
ok 5 - a sender-side list alone refuses a send to a role that has no list
---
duration_ms: 28.749226
type: 'test'
...
# Subtest: a target-side list alone refuses a send from a role that has no list
ok 6 - a target-side list alone refuses a send from a role that has no list
---
duration_ms: 28.733572
type: 'test'
...
# Subtest: the sender list is checked before the target list
ok 7 - the sender list is checked before the target list
---
duration_ms: 25.884246
type: 'test'
...
# Subtest: roles without the field behave exactly as before
ok 8 - roles without the field behave exactly as before
---
duration_ms: 37.134168
type: 'test'
...
# Subtest: a business with no role definitions at all is unlimited
ok 9 - a business with no role definitions at all is unlimited
---
duration_ms: 33.602113
type: 'test'
...
# Subtest: a malformed messaging field refuses at boot
ok 10 - a malformed messaging field refuses at boot
---
duration_ms: 12.275319
type: 'test'
...
# Subtest: the assistant's review.request to a reviewer is refused and logged, even with an approved decision
ok 11 - the assistant's review.request to a reviewer is refused and logged, even with an approved decision
---
duration_ms: 29.91565
type: 'test'
...
# Subtest: a review.verdict to the assistant from a role outside its receiveFrom is refused and logged
ok 12 - a review.verdict to the assistant from a role outside its receiveFrom is refused and logged
---
duration_ms: 33.693279
type: 'test'
...
# Subtest: review requests and verdicts between roles without the field are unchanged
ok 13 - review requests and verdicts between roles without the field are unchanged
---
duration_ms: 28.006421
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 13
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 473.157104
@@ -0,0 +1,16 @@
TAP version 13
# Subtest: 3f copy migrates to 3g preserving every old column/row, with an empty instance_names and null to_name
ok 1 - 3f copy migrates to 3g preserving every old column/row, with an empty instance_names and null to_name
---
duration_ms: 84.065877
type: 'test'
...
1..1
# tests 1
# suites 0
# pass 1
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 154.030914
@@ -0,0 +1,52 @@
TAP version 13
# Subtest: REQ-MSG-2: the chief of staff names an instance under its within-role grant, and the write is logged
ok 1 - REQ-MSG-2: the chief of staff names an instance under its within-role grant, and the write is logged
---
duration_ms: 28.06074
type: 'test'
...
# Subtest: REQ-MSG-2: the human names an instance through the CLI
ok 2 - REQ-MSG-2: the human names an instance through the CLI
---
duration_ms: 16.255956
type: 'test'
...
# Subtest: REQ-MSG-2: a role without the grant, or holding it cross-role, is refused not-authorized
ok 3 - REQ-MSG-2: a role without the grant, or holding it cross-role, is refused not-authorized
---
duration_ms: 19.785067
type: 'test'
...
# Subtest: REQ-MSG-2: a name is unique in the business and is never an instance key or a role name
ok 4 - REQ-MSG-2: a name is unique in the business and is never an instance key or a role name
---
duration_ms: 33.047298
type: 'test'
...
# Subtest: REQ-MSG-2: a send by name reaches the instance and records both; a send by instance key is unchanged
ok 5 - REQ-MSG-2: a send by name reaches the instance and records both; a send by instance key is unchanged
---
duration_ms: 28.181095
type: 'test'
...
# Subtest: REQ-MSG-2: an instance key beats a name that equals it, as when a later instance takes the key
ok 6 - REQ-MSG-2: an instance key beats a name that equals it, as when a later instance takes the key
---
duration_ms: 18.813022
type: 'test'
...
# Subtest: REQ-MSG-2: a role name beats a name that equals it, as when a later definition takes the word (sage-0590)
ok 7 - REQ-MSG-2: a role name beats a name that equals it, as when a later definition takes the word (sage-0590)
---
duration_ms: 19.505504
type: 'test'
...
1..7
# tests 7
# suites 0
# pass 7
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 237.328149
@@ -0,0 +1,34 @@
TAP version 13
# Subtest: proof receives actual peer, cap traffic never invokes helper and transient cap disconnects
ok 1 - proof receives actual peer, cap traffic never invokes helper and transient cap disconnects
---
duration_ms: 5.859437
type: 'test'
...
# Subtest: proof helper error and disconnect during verification never dispatch or bind
ok 2 - proof helper error and disconnect during verification never dispatch or bind
---
duration_ms: 1.339241
type: 'test'
...
# Subtest: Client receives explicit proof refusal codes without dispatch, not outcome-unknown
ok 3 - Client receives explicit proof refusal codes without dispatch, not outcome-unknown
---
duration_ms: 36.986006
type: 'test'
...
# Subtest: asynchronous proof calls release their transient session on success, failure and timeout
ok 4 - asynchronous proof calls release their transient session on success, failure and timeout
---
duration_ms: 28.183558
type: 'test'
...
1..4
# tests 4
# suites 0
# pass 4
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 124.581919
@@ -0,0 +1,40 @@
TAP version 13
# Subtest: T2 eight proof callers and a racing copier bind the exact accepted socket, which survives helper exit
ok 1 - T2 eight proof callers and a racing copier bind the exact accepted socket, which survives helper exit
---
duration_ms: 231.080155
type: 'test'
...
# Subtest: helper output and failures fail closed including unsafe gid
ok 2 - helper output and failures fail closed including unsafe gid
---
duration_ms: 1.571377
type: 'test'
...
# Subtest: helper timeout, capacity and shutdown refuse without leaving children
ok 3 - helper timeout, capacity and shutdown refuse without leaving children
---
duration_ms: 25.605223
type: 'test'
...
# Subtest: missing or non-regular peer helper refuses at construction before opening the bus
ok 4 - missing or non-regular peer helper refuses at construction before opening the bus
---
duration_ms: 0.229484
type: 'test'
...
# Subtest: shutdown waits for killed helper close before returning
ok 5 - shutdown waits for killed helper close before returning
---
duration_ms: 4.636361
type: 'test'
...
1..5
# tests 5
# suites 0
# pass 5
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 339.234434
@@ -0,0 +1,32 @@
TAP version 13
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# Subtest: plugins and plugins.set refuse every non-human session and a forged actor, and pass only the patch with the verified actor
ok 1 - plugins and plugins.set refuse every non-human session and a forged actor, and pass only the patch with the verified actor
---
duration_ms: 22.612905
type: 'test'
...
# Subtest: runtime: the switch changes the organization file, the receipt carries the actor, and a bad shape, an unknown module and a stale revision are refused with nothing written
ok 2 - runtime: the switch changes the organization file, the receipt carries the actor, and a bad shape, an unknown module and a stale revision are refused with nothing written
---
duration_ms: 108.012818
type: 'test'
...
# Subtest: vikunja:19/309 through the broker, a patch switches the kinds it names and keeps the rest; null removes one kind and is trailed
ok 3 - vikunja:19/309 through the broker, a patch switches the kinds it names and keeps the rest; null removes one kind and is trailed
---
duration_ms: 49.129294
type: 'test'
...
1..3
# tests 3
# suites 0
# pass 3
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 263.61252
@@ -0,0 +1,40 @@
TAP version 13
# Subtest: principal binds kernel peer PID and uid, maps owner, and never takes identity or role from body
ok 1 - principal binds kernel peer PID and uid, maps owner, and never takes identity or role from body
---
duration_ms: 1.509967
type: 'test'
...
# Subtest: user requires its own nonce and full walk plus immediate same-tree Console parent
ok 2 - user requires its own nonce and full walk plus immediate same-tree Console parent
---
duration_ms: 0.437537
type: 'test'
...
# Subtest: tester deliberately admits agent parents but rejects managed runs and another nonce
ok 3 - tester deliberately admits agent parents but rejects managed runs and another nonce
---
duration_ms: 0.273773
type: 'test'
...
# Subtest: human leaf identity is reread after walking the parents
ok 4 - human leaf identity is reread after walking the parents
---
duration_ms: 0.148839
type: 'test'
...
# Subtest: console requires its own wrapper, nonce and serve parent, and a configured owner from the spawn env
ok 5 - console requires its own wrapper, nonce and serve parent, and a configured owner from the spawn env
---
duration_ms: 1.148782
type: 'test'
...
1..5
# tests 5
# suites 0
# pass 5
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 64.904422
@@ -0,0 +1,58 @@
TAP version 13
# Subtest: broker process binds trusted launches, offers reader capabilities, refuses human mutation, closes cleanly
ok 1 - broker process binds trusted launches, offers reader capabilities, refuses human mutation, closes cleanly
---
duration_ms: 161.572972
type: 'test'
...
# Subtest: startup token refusal returns safe code without value or partial listening broker
ok 2 - startup token refusal returns safe code without value or partial listening broker
---
duration_ms: 112.859322
type: 'test'
...
# Subtest: loaded fixture token is absent from socket replies and SQLite, including refusal evidence
ok 3 - loaded fixture token is absent from socket replies and SQLite, including refusal evidence
---
duration_ms: 142.142863
type: 'test'
...
# Subtest: killed broker leaves an explicit stale lock; another process cannot silently reclaim it
ok 4 - killed broker leaves an explicit stale lock; another process cannot silently reclaim it
---
duration_ms: 224.894609
type: 'test'
...
# Subtest: trusted host registers later launches; socket clients never have a registration verb
ok 5 - trusted host registers later launches; socket clients never have a registration verb
---
duration_ms: 139.659084
type: 'test'
...
# Subtest: REQ-LIMIT-4 the broker process answers the launcher's mayLaunch op with the limits' awaited decision
ok 6 - REQ-LIMIT-4 the broker process answers the launcher's mayLaunch op with the limits' awaited decision
---
duration_ms: 133.493971
type: 'test'
...
# Subtest: runtime excludes declared project roots even when host supplies no repoRoots
ok 7 - runtime excludes declared project roots even when host supplies no repoRoots
---
duration_ms: 104.676199
type: 'test'
...
# Subtest: a refused launch binding leaves the broker and existing capabilities alive; bad protocol stops it
ok 8 - a refused launch binding leaves the broker and existing capabilities alive; bad protocol stops it
---
duration_ms: 145.496456
type: 'test'
...
1..8
# tests 8
# suites 0
# pass 8
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 1218.038025
@@ -0,0 +1,22 @@
TAP version 13
# Subtest: real runtime injects the coordinator, stops its workload and mirrors stable stop events across restart
ok 1 - real runtime injects the coordinator, stops its workload and mirrors stable stop events across restart
---
duration_ms: 156.282049
type: 'test'
...
# Subtest: invalid state still starts the control bus and human halt then resume repairs it
ok 2 - invalid state still starts the control bus and human halt then resume repairs it
---
duration_ms: 60.548241
type: 'test'
...
1..2
# tests 2
# suites 0
# pass 2
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 332.681231
@@ -0,0 +1,16 @@
TAP version 13
# Subtest: processing halt and resume extend only the socket timeout while ordinary status retains the explicit timeout
ok 1 - processing halt and resume extend only the socket timeout while ordinary status retains the explicit timeout
---
duration_ms: 182.715715
type: 'test'
...
1..1
# tests 1
# suites 0
# pass 1
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 240.016751
@@ -0,0 +1,16 @@
TAP version 13
# Subtest: a root halt aborts the active search-source signal before the normal web deadline
ok 1 - a root halt aborts the active search-source signal before the normal web deadline
---
duration_ms: 32.155923
type: 'test'
...
1..1
# tests 1
# suites 0
# pass 1
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 99.327303
@@ -0,0 +1,94 @@
TAP version 13
# Subtest: processing.halt refuses agent reader and tester before any transition
ok 1 - processing.halt refuses agent reader and tester before any transition
---
duration_ms: 23.023763
type: 'test'
...
# Subtest: processing.resume refuses agent reader and tester before any transition
ok 2 - processing.resume refuses agent reader and tester before any transition
---
duration_ms: 15.057262
type: 'test'
...
# Subtest: human halt and clear each have one event with verified actor; launch.restore cannot clear
ok 3 - human halt and clear each have one event with verified actor; launch.restore cannot clear
---
duration_ms: 17.662175
type: 'test'
...
# Subtest: all ordinary work verbs refuse before dispatch while pure reads remain available
ok 4 - all ordinary work verbs refuse before dispatch while pure reads remain available
---
duration_ms: 30.303465
type: 'test'
...
# Subtest: task web authorization and bind paths refuse before external work
ok 5 - task web authorization and bind paths refuse before external work
---
duration_ms: 15.58056
type: 'test'
...
# Subtest: recordEvent cannot forge processing.halt
ok 6 - recordEvent cannot forge processing.halt
---
duration_ms: 11.112097
type: 'test'
...
# Subtest: recordEvent cannot forge processing.resume
ok 7 - recordEvent cannot forge processing.resume
---
duration_ms: 11.498006
type: 'test'
...
# Subtest: recordEvent cannot forge processing.stop
ok 8 - recordEvent cannot forge processing.stop
---
duration_ms: 10.989846
type: 'test'
...
# Subtest: recordTask poll cannot forge a processing action through its kinds filter
ok 9 - recordTask poll cannot forge a processing action through its kinds filter
---
duration_ms: 11.243507
type: 'test'
...
# Subtest: recordTask self cannot forge a processing action through its kinds filter
ok 10 - recordTask self cannot forge a processing action through its kinds filter
---
duration_ms: 11.308024
type: 'test'
...
# Subtest: spec read remains a read but cannot release new write work after an await
ok 11 - spec read remains a read but cannot release new write work after an await
---
duration_ms: 14.69766
type: 'test'
...
# Subtest: the real socket awaits halt and resume beyond the ordinary idle deadline
ok 12 - the real socket awaits halt and resume beyond the ordinary idle deadline
---
duration_ms: 53.82092
type: 'test'
...
# Subtest: a malformed processing reader never silently admits agent work
ok 13 - a malformed processing reader never silently admits agent work
---
duration_ms: 15.472924
type: 'test'
...
# Subtest: halt refuses the newly landed host executor path before credentials or effects
ok 14 - halt refuses the newly landed host executor path before credentials or effects
---
duration_ms: 13.132101
type: 'test'
...
1..14
# tests 14
# suites 0
# pass 14
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 333.325086
@@ -0,0 +1,34 @@
TAP version 13
# Subtest: D1: committed write with a failed receipt refuses outcome-unknown without action.allowed
ok 1 - D1: committed write with a failed receipt refuses outcome-unknown without action.allowed
---
duration_ms: 21.832477
type: 'test'
...
# Subtest: D2: spec.read refuses without content if its role is released during the read
ok 2 - D2: spec.read refuses without content if its role is released during the read
---
duration_ms: 14.149694
type: 'test'
...
# Subtest: D3: spec.read secret check refuses flagged content without content
ok 3 - D3: spec.read secret check refuses flagged content without content
---
duration_ms: 12.975497
type: 'test'
...
# Subtest: D3: spec.read secret check refuses flagged subject without content
ok 4 - D3: spec.read secret check refuses flagged subject without content
---
duration_ms: 12.392189
type: 'test'
...
1..4
# tests 4
# suites 0
# pass 4
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 139.620503
@@ -0,0 +1,58 @@
TAP version 13
# Subtest: a human lists, opens and saves; the save is one commit by the business human
ok 1 - a human lists, opens and saves; the save is one commit by the business human
---
duration_ms: 103.952872
type: 'test'
...
# Subtest: an agent and a reader refuse every file verb and nothing is written
ok 2 - an agent and a reader refuse every file verb and nothing is written
---
duration_ms: 40.348399
type: 'test'
...
# Subtest: a stale base refuses stale-base and writes nothing
ok 3 - a stale base refuses stale-base and writes nothing
---
duration_ms: 67.043723
type: 'test'
...
# Subtest: paths outside the spec and docs refuse, as do unknown projects, missing files and odd arguments
ok 4 - paths outside the spec and docs refuse, as do unknown projects, missing files and odd arguments
---
duration_ms: 55.563705
type: 'test'
...
# Subtest: without a project adapter the file verbs refuse project-not-configured
ok 5 - without a project adapter the file verbs refuse project-not-configured
---
duration_ms: 26.421856
type: 'test'
...
# Subtest: on the socket a save may carry 1 MiB of text; every other request keeps the 64 KiB limit
ok 6 - on the socket a save may carry 1 MiB of text; every other request keeps the 64 KiB limit
---
duration_ms: 227.12954
type: 'test'
...
# Subtest: a request that names the save verb first and another verb last is refused at 64 KiB
ok 7 - a request that names the save verb first and another verb last is refused at 64 KiB
---
duration_ms: 56.66452
type: 'test'
...
# Subtest: two saves racing for one repository make one commit
ok 8 - two saves racing for one repository make one commit
---
duration_ms: 140.365249
type: 'test'
...
1..8
# tests 8
# suites 0
# pass 8
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 795.184899
@@ -0,0 +1,28 @@
TAP version 13
# Subtest: Broker keeps the sandbox client import closure: only the listed imports, no lazy project import
ok 1 - Broker keeps the sandbox client import closure: only the listed imports, no lazy project import
---
duration_ms: 2.009533
type: 'test'
...
# Subtest: without a trusted project adapter all three async paths refuse project-not-configured
ok 2 - without a trusted project adapter all three async paths refuse project-not-configured
---
duration_ms: 39.853331
type: 'test'
...
# Subtest: real startBroker injects the project adapter for socket reads and bound-author record writes
ok 3 - real startBroker injects the project adapter for socket reads and bound-author record writes
---
duration_ms: 179.965907
type: 'test'
...
1..3
# tests 3
# suites 0
# pass 3
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 330.164652
@@ -0,0 +1,88 @@
TAP version 13
# Subtest: a raise with no recorded push refuses no-push; a raise binds the latest push and shows it
ok 1 - a raise with no recorded push refuses no-push; a raise binds the latest push and shows it
---
duration_ms: 28.668868
type: 'test'
...
# Subtest: happy path: the fork is the upstream repo under the agent's own user, the destination is host-built
ok 2 - happy path: the fork is the upstream repo under the agent's own user, the destination is host-built
---
duration_ms: 25.211352
type: 'test'
...
# Subtest: a hard wait: no decision refuses, and a decision for another task refuses
ok 3 - a hard wait: no decision refuses, and a decision for another task refuses
---
duration_ms: 22.021857
type: 'test'
...
# Subtest: r4 B4: approve while the latest push is A, push B, publish refuses decision-mismatch
ok 4 - r4 B4: approve while the latest push is A, push B, publish refuses decision-mismatch
---
duration_ms: 44.293723
type: 'test'
...
# Subtest: grant and fork refusals
ok 5 - grant and fork refusals
---
duration_ms: 40.544735
type: 'test'
...
# Subtest: remote-not-fork, compared without case, and remote-host-mismatch, at push
ok 6 - remote-not-fork, compared without case, and remote-host-mismatch, at push
---
duration_ms: 80.353441
type: 'test'
...
# Subtest: two agents granted one project each get their own fork
ok 7 - two agents granted one project each get their own fork
---
duration_ms: 40.657106
type: 'test'
...
# Subtest: the request cannot name the fork, the user or the destination
ok 8 - the request cannot name the fork, the user or the destination
---
duration_ms: 19.203863
type: 'test'
...
# Subtest: one decision, one open publish: a second ticket refuses publish-busy, whatever its branch
ok 9 - one decision, one open publish: a second ticket refuses publish-busy, whatever its branch
---
duration_ms: 48.998582
type: 'test'
...
# Subtest: publishRefused files the code on the task's trail and drops the ticket
ok 10 - publishRefused files the code on the task's trail and drops the ticket
---
duration_ms: 21.718099
type: 'test'
...
# Subtest: git.push.remote is in neither ROUTED list and no shipped role grants it
ok 11 - git.push.remote is in neither ROUTED list and no shipped role grants it
---
duration_ms: 0.695681
type: 'test'
...
# Subtest: runtime: withGitea keys from the open ticket only, and the store root is the organization dir
ok 12 - runtime: withGitea keys from the open ticket only, and the store root is the organization dir
---
duration_ms: 96.048518
type: 'test'
...
# Subtest: the bus process answers the publish ops from their own lines, not launch-op-refused
ok 13 - the bus process answers the publish ops from their own lines, not launch-op-refused
---
duration_ms: 143.048521
type: 'test'
...
1..13
# tests 13
# suites 0
# pass 13
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 693.173626
@@ -0,0 +1,79 @@
TAP version 13
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# Subtest: T14 a create goes live with no restart: the new instance binds at once and the answer says restart false
ok 1 - T14 a create goes live with no restart: the new instance binds at once and the answer says restart false
---
duration_ms: 69.238239
type: 'test'
...
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# organization: {"event":"reload-needs-restart","business":"demo"}
# Subtest: T14 every committed verb reloads once, limits.set, routes.set, plugins.set and veto.set included, and a refused one does not
ok 2 - T14 every committed verb reloads once, limits.set, routes.set, plugins.set and veto.set included, and a refused one does not
---
duration_ms: 79.403588
type: 'test'
...
# Subtest: T14 a definition change on a running instance refuses instance-running; a vars change still goes live
ok 3 - T14 a definition change on a running instance refuses instance-running; a vars change still goes live
---
duration_ms: 59.954374
type: 'test'
...
# Subtest: T14 a file whose credential references differ from the boot copy is not reloaded and the write answers restart true
ok 4 - T14 a file whose credential references differ from the boot copy is not reloaded and the write answers restart true
---
duration_ms: 44.154579
type: 'test'
...
# Subtest: T14 a date-only change to a credential reference still reloads: row 199 issue rewrites the date outside the reload
ok 5 - T14 a date-only change to a credential reference still reloads: row 199 issue rewrites the date outside the reload
---
duration_ms: 43.4104
type: 'test'
...
# Subtest: T19 a credentialed create answers restart true; issue works only after a restart, and a later vars change goes live
ok 6 - T19 a credentialed create answers restart true; issue works only after a restart, and a later vars change goes live
---
duration_ms: 91.282961
type: 'test'
...
# Subtest: T14 after a refused reload veto.set, instance.hire and instance.fire answer restart true, and a fire of a name kept since refuses before step A
ok 7 - T14 after a refused reload veto.set, instance.hire and instance.fire answer restart true, and a fire of a name kept since refuses before step A
---
duration_ms: 97.367656
type: 'test'
...
# Subtest: T14 a file whose project root differs from the boot copy is not reloaded, because the Credentials store protects the boot roots
ok 8 - T14 a file whose project root differs from the boot copy is not reloaded, because the Credentials store protects the boot roots
---
duration_ms: 44.078514
type: 'test'
...
# organization: {"event":"reload-needs-restart","business":"demo"}
# Subtest: T14 a file whose library mapping differs from the boot copy is not reloaded, because the mirror is ensured at start
ok 9 - T14 a file whose library mapping differs from the boot copy is not reloaded, because the mirror is ensured at start
---
duration_ms: 181.685261
type: 'test'
...
# Subtest: T14 reloadBusiness refuses an unknown business, a changed human and a document the boot check refuses
ok 10 - T14 reloadBusiness refuses an unknown business, a changed human and a document the boot check refuses
---
duration_ms: 9.782089
type: 'test'
...
1..10
# tests 10
# suites 0
# pass 10
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 834.628431
@@ -0,0 +1,52 @@
TAP version 13
# Subtest: a reply is listed for human and reader sessions, and its delivery rows are unchanged
ok 1 - a reply is listed for human and reader sessions, and its delivery rows are unchanged
---
duration_ms: 42.263501
type: 'test'
...
# Subtest: the reply still reaches the human message.receive (mosaic talk) after the Console showed it
ok 2 - the reply still reaches the human message.receive (mosaic talk) after the Console showed it
---
duration_ms: 19.227119
type: 'test'
...
# Subtest: a message with no reply gives an empty list
ok 3 - a message with no reply gives an empty list
---
duration_ms: 14.810148
type: 'test'
...
# Subtest: replies come oldest first and stop at REPLIES
ok 4 - replies come oldest first and stop at REPLIES
---
duration_ms: 71.506472
type: 'test'
...
# Subtest: an id that names no message in the business refuses message-not-found, and the refusal is recorded
ok 5 - an id that names no message in the business refuses message-not-found, and the refusal is recorded
---
duration_ms: 26.280546
type: 'test'
...
# Subtest: strict arguments; a role session gets human-required
ok 6 - strict arguments; a role session gets human-required
---
duration_ms: 30.106167
type: 'test'
...
# Subtest: views passes replies through as one call with the id
ok 7 - views passes replies through as one call with the id
---
duration_ms: 0.192008
type: 'test'
...
1..7
# tests 7
# suites 0
# pass 7
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 280.849724
@@ -0,0 +1,28 @@
TAP version 13
# Subtest: requirements returns the committed list to a holding role session, and no one else
ok 1 - requirements returns the committed list to a holding role session, and no one else
---
duration_ms: 31.793626
type: 'test'
...
# Subtest: the PM's prd.approve with no task, when no id fits, reaches the human's Inbox
ok 2 - the PM's prd.approve with no task, when no id fits, reaches the human's Inbox
---
duration_ms: 14.954772
type: 'test'
...
# Subtest: the PM's non-blocking role.revoke with no task reaches the human's Inbox
ok 3 - the PM's non-blocking role.revoke with no task reaches the human's Inbox
---
duration_ms: 14.811794
type: 'test'
...
1..3
# tests 3
# suites 0
# pass 3
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 139.051397
@@ -0,0 +1,58 @@
TAP version 13
# Subtest: a push is recorded as the action.allowed for git.push.working on the task, and only the host records one
ok 1 - a push is recorded as the action.allowed for git.push.working on the task, and only the host records one
---
duration_ms: 34.584538
type: 'test'
...
# Subtest: review.request names the latest pushed commit and sends the reviewer a REVIEW-REQUEST
ok 2 - review.request names the latest pushed commit and sends the reviewer a REVIEW-REQUEST
---
duration_ms: 22.262232
type: 'test'
...
# Subtest: review.request says which run holds the reviewer role, or null, and a null request waits for a claim
ok 3 - review.request says which run holds the reviewer role, or null, and a null request waits for a claim
---
duration_ms: 23.904478
type: 'test'
...
# Subtest: review.request refuses a commit that isn't the latest push, a non-reviewer and a role without the action
ok 4 - review.request refuses a commit that isn't the latest push, a non-reviewer and a role without the action
---
duration_ms: 34.834645
type: 'test'
...
# Subtest: reviewFetch answers only the addressed reviewer, for the request it cites
ok 5 - reviewFetch answers only the addressed reviewer, for the request it cites
---
duration_ms: 21.947407
type: 'test'
...
# Subtest: review.verdict answers one request once, to the role that asked
ok 6 - review.verdict answers one request once, to the role that asked
---
duration_ms: 24.354013
type: 'test'
...
# Subtest: task.close on a pushed task needs an approve verdict for the latest push
ok 7 - task.close on a pushed task needs an approve verdict for the latest push
---
duration_ms: 33.616062
type: 'test'
...
# Subtest: a refusal the host decided is filed on the task it names, and only a task ref counts
ok 8 - a refusal the host decided is filed on the task it names, and only a task ref counts
---
duration_ms: 20.816729
type: 'test'
...
1..8
# tests 8
# suites 0
# pass 8
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 298.726038
@@ -0,0 +1,28 @@
TAP version 13
# Subtest: row 306 T1: a run the timer sweep ended answers thread-revoked on every claim-needing call, logged, and its claim still refuses run-revoked
ok 1 - row 306 T1: a run the timer sweep ended answers thread-revoked on every claim-needing call, logged, and its claim still refuses run-revoked
---
duration_ms: 41.055678
type: 'test'
...
# Subtest: row 306 T1: a user's request and access.reload end the run the same way, and it answers thread-revoked
ok 2 - row 306 T1: a user's request and access.reload end the run the same way, and it answers thread-revoked
---
duration_ms: 44.860557
type: 'test'
...
# Subtest: row 306 T2: after the sweep, a run the human stopped and a run the limit stop ended still answer not-holder
ok 3 - row 306 T2: after the sweep, a run the human stopped and a run the limit stop ended still answer not-holder
---
duration_ms: 30.412064
type: 'test'
...
1..3
# tests 3
# suites 0
# pass 3
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 195.584834
@@ -0,0 +1,118 @@
TAP version 13
# Subtest: room.open sorts all threaded instances, creates defaults, and reuses caller-owned threads
ok 1 - room.open sorts all threaded instances, creates defaults, and reuses caller-owned threads
---
duration_ms: 31.775375
type: 'test'
...
# Subtest: room.open preflights instance collisions atomically
ok 2 - room.open preflights instance collisions atomically
---
duration_ms: 15.518549
type: 'test'
...
# Subtest: room.open preflights owner collisions atomically
ok 3 - room.open preflights owner collisions atomically
---
duration_ms: 14.332923
type: 'test'
...
# Subtest: room verbs require the human, and none is a tester verb
ok 4 - room verbs require the human, and none is a tester verb
---
duration_ms: 19.958754
type: 'test'
...
# Subtest: room verbs refuse missing projects and zero member businesses
ok 5 - room verbs refuse missing projects and zero member businesses
---
duration_ms: 29.696528
type: 'test'
...
# Subtest: send/read refuse a missing canonical member without effects
ok 6 - send/read refuse a missing canonical member without effects
---
duration_ms: 15.926384
type: 'test'
...
# Subtest: send/read refuse a foreign-owner canonical member without effects
ok 7 - send/read refuse a foreign-owner canonical member without effects
---
duration_ms: 16.434549
type: 'test'
...
# Subtest: send/read refuse a wrong-instance canonical member without effects
ok 8 - send/read refuse a wrong-instance canonical member without effects
---
duration_ms: 16.918037
type: 'test'
...
# Subtest: room.send targets a key, broadcasts without tags, and preserves original text and ordinary route/input rows
ok 9 - room.send targets a key, broadcasts without tags, and preserves original text and ordinary route/input rows
---
duration_ms: 17.814984
type: 'test'
...
# Subtest: current display names and repeated tags resolve once; a replaced display name is unknown
ok 10 - current display names and repeated tags resolve once; a replaced display name is unknown
---
duration_ms: 17.472042
type: 'test'
...
# Subtest: a legacy name colliding with another member key is ambiguous; its own key resolves once
ok 11 - a legacy name colliding with another member key is ambiguous; its own key resolves once
---
duration_ms: 17.262645
type: 'test'
...
# Subtest: unknown or non-member addressees and tags-only bodies leave no message effects
ok 12 - unknown or non-member addressees and tags-only bodies leave no message effects
---
duration_ms: 21.598657
type: 'test'
...
# Subtest: messaging denial on the last target rolls back the entire broadcast; allowed subset still works
ok 13 - messaging denial on the last target rolls back the entire broadcast; allowed subset still works
---
duration_ms: 16.127696
type: 'test'
...
# Subtest: a clearing last member fences the whole send; another active target still accepts
ok 14 - a clearing last member fences the whole send; another active target still accepts
---
duration_ms: 19.289109
type: 'test'
...
# Subtest: room.read groups one send, pages by the last grouped id, and rejects foreign or absent cursors
ok 15 - room.read groups one send, pages by the last grouped id, and rejects foreign or absent cursors
---
duration_ms: 30.606877
type: 'test'
...
# Subtest: room.read keeps identical sends at the same timestamp separate and includes every session
ok 16 - room.read keeps identical sends at the same timestamp separate and includes every session
---
duration_ms: 31.092162
type: 'test'
...
# Subtest: room.read defaults and caps the number of merged entries, not recipient rows
ok 17 - room.read defaults and caps the number of merged entries, not recipient rows
---
duration_ms: 480.013343
type: 'test'
...
# Subtest: room.read includes an agent reply with its thread and instance without merging it with human rows
ok 18 - room.read includes an agent reply with its thread and instance without merging it with human rows
---
duration_ms: 21.740174
type: 'test'
...
1..18
# tests 18
# suites 0
# pass 18
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 914.031453
@@ -0,0 +1,35 @@
TAP version 13
# organization: {"event":"reload-needs-restart","business":"demo"}
# Subtest: row 65: routes and routes.set refuse every non-human session, the chief of staff included, the tester may read and set, and each passes the verified actor
ok 1 - row 65: routes and routes.set refuse every non-human session, the chief of staff included, the tester may read and set, and each passes the verified actor
---
duration_ms: 37.521939
type: 'test'
...
# Subtest: row 65: a new launch binds only on a switched-on harness with a module name, and a run an earlier broker bound binds again after its harness is switched off
ok 2 - row 65: a new launch binds only on a switched-on harness with a module name, and a run an earlier broker bound binds again after its harness is switched off
---
duration_ms: 22.751488
type: 'test'
...
# Subtest: row 65 runtime: harnessLevels answers each module in the tree, and null for a name with no module
ok 3 - row 65 runtime: harnessLevels answers each module in the tree, and null for a name with no module
---
duration_ms: 39.956296
type: 'test'
...
# Subtest: row 65 runtime: routes and routes.set reach the organization file with the human as actor, a new bind reads plugins.harness, and each refusal keeps the bytes and logs nothing
ok 4 - row 65 runtime: routes and routes.set reach the organization file with the human as actor, a new bind reads plugins.harness, and each refusal keeps the bytes and logs nothing
---
duration_ms: 82.354035
type: 'test'
...
1..4
# tests 4
# suites 0
# pass 4
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 260.356604
@@ -0,0 +1,16 @@
TAP version 13
# Subtest: v3b prototype refusals, views and append-only mutations
ok 1 - v3b prototype refusals, views and append-only mutations
---
duration_ms: 87.89136
type: 'test'
...
1..1
# tests 1
# suites 0
# pass 1
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 145.658922
@@ -0,0 +1,124 @@
TAP version 13
# Subtest: T4 D7: a clear of a held default session fences it, drains at the next receive, retires at the exit proof and moves the default
ok 1 - T4 D7: a clear of a held default session fences it, drains at the next receive, retires at the exit proof and moves the default
---
duration_ms: 54.508957
type: 'test'
...
# Subtest: T4 D7: an unheld session drains at accept, its proof is run null, and a non-default clear leaves the default
ok 2 - T4 D7: an unheld session drains at accept, its proof is run null, and a non-default clear leaves the default
---
duration_ms: 18.397177
type: 'test'
...
# Subtest: T4 D7: a run that ends before its next receive drains at its end, with its generation
ok 3 - T4 D7: a run that ends before its next receive drains at its end, with its generation
---
duration_ms: 18.266643
type: 'test'
...
# Subtest: T4 D7: a run whose turn is running (delivered, unread) stays clearing; uncertain is recorded once and nothing more
ok 4 - T4 D7: a run whose turn is running (delivered, unread) stays clearing; uncertain is recorded once and nothing more
---
duration_ms: 26.045674
type: 'test'
...
# Subtest: T4 D7 B1: undelivered inputs are cancelled with receipts at accept, never delivered to the successor, and a routed reply is cancelled at arrival
ok 5 - T4 D7 B1: undelivered inputs are cancelled with receipts at accept, never delivered to the successor, and a routed reply is cancelled at arrival
---
duration_ms: 29.431696
type: 'test'
...
# Subtest: T4 D7: repeat, conflict, a second op, a stale revision, confirm and a halt
ok 6 - T4 D7: repeat, conflict, a second op, a stale revision, confirm and a halt
---
duration_ms: 27.538524
type: 'test'
...
# Subtest: T4 Q4: the successor takes <old>-N, the next N free, and a bound name stays taken
ok 7 - T4 Q4: the successor takes <old>-N, the next N free, and a bound name stays taken
---
duration_ms: 22.033958
type: 'test'
...
# Subtest: T4 D8: the successor start is held, refused or started, each report on its own counter
ok 8 - T4 D8: the successor start is held, refused or started, each report on its own counter
---
duration_ms: 21.251845
type: 'test'
...
# Subtest: T4 D7 N4: a halt at retirement waits and writes nothing; retirement goes once processing resumes
ok 9 - T4 D7 N4: a halt at retirement waits and writes nothing; retirement goes once processing resumes
---
duration_ms: 16.89197
type: 'test'
...
# Subtest: T4 sage-2828: a cancel before retirement makes the session active again, keeps the claim and the cancelled messages, and never makes the successor
ok 10 - T4 sage-2828: a cancel before retirement makes the session active again, keeps the claim and the cancelled messages, and never makes the successor
---
duration_ms: 27.506819
type: 'test'
...
# Subtest: T4 sage-2828 sage-2830: a cancel after retirement ends the startup only, and a later thread-only send makes the successor pending as new input
ok 11 - T4 sage-2828 sage-2830: a cancel after retirement ends the startup only, and a later thread-only send makes the successor pending as new input
---
duration_ms: 20.601528
type: 'test'
...
# Subtest: T4 N4: a user's thread whose grant is gone by retirement ends the clear failed, writes no successor, and leaves the session as it was
ok 12 - T4 N4: a user's thread whose grant is gone by retirement ends the clear failed, writes no successor, and leaves the session as it was
---
duration_ms: 20.163945
type: 'test'
...
# Subtest: T4 N4: a user's thread whose grant is live at retirement retires the session and makes its successor
ok 13 - T4 N4: a user's thread whose grant is live at retirement retires the session and makes its successor
---
duration_ms: 20.944212
type: 'test'
...
# Subtest: T4 sage-2828: a cancel after the successor started refuses session-clear-complete
ok 14 - T4 sage-2828: a cancel after the successor started refuses session-clear-complete
---
duration_ms: 18.476664
type: 'test'
...
# Subtest: T4 B2: a run bound to a clearing session refuses its claim, and claims again once the clear is cancelled
ok 15 - T4 B2: a run bound to a clearing session refuses its claim, and claims again once the clear is cancelled
---
duration_ms: 20.468844
type: 'test'
...
# Subtest: T4 mos-1325: the tester clears its own thread; its clear, cancel and operation on a human-owned thread refuse thread-not-owned and write nothing
ok 16 - T4 mos-1325: the tester clears its own thread; its clear, cancel and operation on a human-owned thread refuse thread-not-owned and write nothing
---
duration_ms: 23.509779
type: 'test'
...
# Subtest: T4 schema: session_ops and message_cancels are append-only, and a second open clear of a session is refused below the broker
ok 17 - T4 schema: session_ops and message_cancels are append-only, and a second open clear of a session is refused below the broker
---
duration_ms: 16.595941
type: 'test'
...
# Subtest: T4 schema: a 3m store migrates to 3n, session_ops and message_cancels are new and empty, and every other row stays as it was
ok 18 - T4 schema: a 3m store migrates to 3n, session_ops and message_cancels are new and empty, and every other row stays as it was
---
duration_ms: 89.755863
type: 'test'
...
# Subtest: T4 schema: the 3m engine refuses a 3n store, migrating or not, and leaves it as it was
ok 19 - T4 schema: the 3m engine refuses a 3n store, migrating or not, and leaves it as it was
---
duration_ms: 162.257714
type: 'test'
...
1..19
# tests 19
# suites 0
# pass 19
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 741.114792
@@ -0,0 +1,34 @@
TAP version 13
# Subtest: session.list rows carry the reader count for each session, with its store identity
ok 1 - session.list rows carry the reader count for each session, with its store identity
---
duration_ms: 24.17514
type: 'test'
...
# Subtest: a legacy session is asked for with legacy true
ok 2 - a legacy session is asked for with legacy true
---
duration_ms: 14.46435
type: 'test'
...
# Subtest: without a reader the count is unknown, never 0; a reader that throws is store-unreadable
ok 3 - without a reader the count is unknown, never 0; a reader that throws is store-unreadable
---
duration_ms: 24.270704
type: 'test'
...
# Subtest: compactions must be a function
ok 4 - compactions must be a function
---
duration_ms: 8.532818
type: 'test'
...
1..4
# tests 4
# suites 0
# pass 4
# fail 0
# cancelled 0
# skipped 0
# todo 0
# duration_ms 143.855978
Loaded 100 of 726 files, more files were not shown because too many files have changed in this diff. Show more