Agent host access with sudo through the credential store (Vikunja #424, Q183/Q184, chained on row 199) #1707

Closed
opened 2026-10-20 20:09:53 +00:00 by jarvis · 7 comments
Contributor

Jason ruled Q184 ("Q5: by 10.27"), relayed by Mos in mos-1067. An agent asks for a host credential by name, the stack checks a grant for that agent and host and does the ssh and sudo for it, the agent never sees the key, and only agents with a grant can do it.

Brief: docs/plans/2026-10-20_host-credentials.md. Owner Gizmoduck, reviewer Duckworth, gate owner Sage. Chained on row 199 (#1697), whose approved r6 is not reopened (megavolt-0019). PRD text: REQ-CRED-3, PRD 1.7 or 1.8.

Filed by Sage (jarvis).

Jason ruled Q184 ("Q5: by 10.27"), relayed by Mos in mos-1067. An agent asks for a host credential by name, the stack checks a grant for that agent and host and does the ssh and sudo for it, the agent never sees the key, and only agents with a grant can do it. Brief: docs/plans/2026-10-20_host-credentials.md. Owner Gizmoduck, reviewer Duckworth, gate owner Sage. Chained on row 199 (#1697), whose approved r6 is not reopened (megavolt-0019). PRD text: REQ-CRED-3, PRD 1.7 or 1.8. Filed by Sage (jarvis).
Author
Contributor

Review request for queue row 210, round 1: Agent host access with sudo through the credential store: grant per agent and host, the stack does ssh and sudo, the agent never sees the key (#1707, Vikunja #424, Q183/Q184, due 10-27; chained on row 199's candidate)

  • Owner: gizmoduck
  • Reviewers: duckworth
  • Gate: Duckworth approves DESIGN.md, then the manifest; bus, business, cli suites and every scripts/test-*.sh green on Sage's gate; the mutants killed (sage)
  • Brief: docs/plans/2026-10-20_host-credentials.md § Brief: agent host access with sudo through the credential store (#424) @33c2d2aa9047
  • Candidate: commit 455964f23d69397b196b9f1feb54e8d333b532df

Check a prospective commit against it with scripts/mosaic queue review verify-commit 210 REF.

Post your verdict as a comment here, then record it:

scripts/mosaic queue review record 210 --verdict approve|changes --comment COMMENT_ID --candidate 455964f23d69397b196b9f1feb54e8d333b532df --op OP --by SEAT
<!-- mosaic-queue-op: sage-210-request-1 --> <!-- mosaic-queue-round: row=210 round=1 candidate=455964f23d69397b196b9f1feb54e8d333b532df --> Review request for queue row 210, round 1: Agent host access with sudo through the credential store: grant per agent and host, the stack does ssh and sudo, the agent never sees the key (#1707, Vikunja #424, Q183/Q184, due 10-27; chained on row 199's candidate) - Owner: gizmoduck - Reviewers: duckworth - Gate: Duckworth approves DESIGN.md, then the manifest; bus, business, cli suites and every scripts/test-*.sh green on Sage's gate; the mutants killed (sage) - Brief: `docs/plans/2026-10-20_host-credentials.md` § Brief: agent host access with sudo through the credential store (#424) @33c2d2aa9047 - Candidate: commit `455964f23d69397b196b9f1feb54e8d333b532df` Check a prospective commit against it with `scripts/mosaic queue review verify-commit 210 REF`. Post your verdict as a comment here, then record it: ``` scripts/mosaic queue review record 210 --verdict approve|changes --comment COMMENT_ID --candidate 455964f23d69397b196b9f1feb54e8d333b532df --op OP --by SEAT ```
Author
Contributor

Sage gate, 2026-10-21, tree 92fac9904 (c8bc5cf4c plus 3cf63efb4, the r3 rebase of approved candidate 455964f23).

  • Mutants, 00:38 to 00:57Z: control passed, 52 of 53 killed. M22b (the store #inflight check, credentials.mjs:355) survived. It is equivalent in this tree: there is no await between the broker pre-check (broker.mjs:1741) and #inflight.set (credentials.mjs:358). Design M22 (T20) is killed as M22a. Row 235 makes that check the only guard, so it adds a store-level test and runs M22b again there (gizmoduck-0088).
  • Gate: stopped at pkg-bus, 497 pass, 1 fail.

B1, blocking. broker.mjs:7 imports validArgv, commandAllowed from business/src/hosts.mjs. broker.mjs is in RUNNER_FILES (seat/src/sandbox.mjs:50), but hosts.mjs and its imports errors.mjs and util.mjs are not mounted in the worker sandbox.

  • bus/tests/project-runtime.test.mjs:12, the broker import pin, fails.
  • seat/tests/sandbox.test.mjs: 6/4 on this tree, 10/0 on base c8bc5cf4c. The failures are the RUNNER_FILES walk plus three confined-session tests.

An r4 is needed (sage-1617). Duckworth reviews the r4 diff. I run all 53 mutants and the full gate again.

Sage gate, 2026-10-21, tree 92fac9904 (c8bc5cf4c plus 3cf63efb4, the r3 rebase of approved candidate 455964f23). - Mutants, 00:38 to 00:57Z: control passed, 52 of 53 killed. M22b (the store `#inflight` check, credentials.mjs:355) survived. It is equivalent in this tree: there is no await between the broker pre-check (broker.mjs:1741) and `#inflight.set` (credentials.mjs:358). Design M22 (T20) is killed as M22a. Row 235 makes that check the only guard, so it adds a store-level test and runs M22b again there (gizmoduck-0088). - Gate: stopped at pkg-bus, 497 pass, 1 fail. **B1, blocking.** broker.mjs:7 imports `validArgv, commandAllowed` from `business/src/hosts.mjs`. broker.mjs is in RUNNER_FILES (seat/src/sandbox.mjs:50), but hosts.mjs and its imports errors.mjs and util.mjs are not mounted in the worker sandbox. - `bus/tests/project-runtime.test.mjs:12`, the broker import pin, fails. - `seat/tests/sandbox.test.mjs`: 6/4 on this tree, 10/0 on base c8bc5cf4c. The failures are the RUNNER_FILES walk plus three confined-session tests. An r4 is needed (sage-1617). Duckworth reviews the r4 diff. I run all 53 mutants and the full gate again.
Author
Contributor

Review request for queue row 210, round 2: Agent host access with sudo through the credential store: grant per agent and host, the stack does ssh and sudo, the agent never sees the key (#1707, Vikunja #424, Q183/Q184, due 10-27; chained on row 199's candidate)

  • Owner: gizmoduck
  • Reviewers: duckworth
  • Gate: Duckworth approves DESIGN.md, then the manifest; bus, business, cli suites and every scripts/test-*.sh green on Sage's gate; the mutants killed (sage)
  • Brief: docs/plans/2026-10-20_host-credentials.md § Brief: agent host access with sudo through the credential store (#424) @33c2d2aa9047
  • Candidate: manifest 0ed4d5350a163003b0a0662e83e99f7e7f75ab000f31035159e676d5577bb3ef

The manifest:

8fa8a321933e75315babe21f49ba434a61dbeffbfcfded6933ebfaf6c73d3aee  packages/business/src/business.mjs
e72f0898b5f373c5a76d4c41fbe504904f55e18b183768260a6423510625683e  packages/business/src/credentials.mjs
6339bf85c946a41a5cbe8e94d51b264e298a9d16900e5dfe46b01b803e76ca41  packages/business/src/hosts.mjs
ab5f7dc38a2ca5978b02d257068f4f82706db847cf0d6400f7cd548f8f6abe43  packages/business/src/resolve.mjs
636916b9868b3a3e7f962894cbfa1e91629b5713a568f55f4716f942dbcd4910  packages/business/src/role.mjs
77c432e879f8611a077feb2fb7c9b67e826ade558e41dcf01433fc2cdab2e0fa  packages/business/src/vocabulary.mjs
6a2c9b371fc9236bb0730ed108cbd770e9487b8ba733dbebccd11891ccba6f17  packages/business/tests/hard-waits.test.mjs
9ef8b8be3c290f072e7c943b176a1ec688fda03fab4ba114d31213caf2216e42  packages/business/tests/hosts.test.mjs
fcaf50728e4599e5f10875f01c22b03610044b634c999830ef9684ef74cc62f3  packages/bus/src/broker.mjs
ff927da3cf22fbacc9ace77b2e8b803bffc2953fb58cf7ab4e5f6f6493732996  packages/bus/src/business.mjs
27d2ae155a2919788d7ad02da10a7056c23f5b71228e9af406b1b8aa0de55efc  packages/bus/src/credentials.mjs
86b4321dd436b97e389101873197dbab95b3d2202e5ef7da712c4978f4f9159f  packages/bus/src/credential-verbs.mjs
5d227edec1d33cb58607fae4e43784a0decc8aaf55cad6bc4318cec4eda6fbea  packages/bus/src/host-run.mjs
3721190045a4f114d67c9c7d32a448cf3d5dbbc6d4554dbc348e9f6fd428b5dc  packages/bus/src/runtime.mjs
3ef86e4f0b77cc513bdd58ec7eb984ceb02af6625f39d1be5254f2c0b0e99734  packages/bus/src/server.mjs
58e45b7a0d0118be8827bd71d1a427ff84d0ecac46c22adece36dec36e6d521d  packages/bus/tests/hard-waits.test.mjs
28ad8ce2a29722768820ad916273f2100eb79281255c6a3689964cd24564237c  packages/bus/tests/host-run.test.mjs
be4e1eb88b689e8e4f859de75218af151feae8dce2c1409b726cb9c3dcd5ffe9  packages/bus/tests/spec-fixtures.mjs
19755f7bb002d8455990c5dc7c458e64aeb95252ec7231a2ed2fd9c638fcb511  packages/cli/src/credentials.mjs
152a3e57f7241db45bf8262fbf86ee029cf3b98f0d75503990abd46ac151a4b2  packages/cli/tests/credentials.test.mjs
bdf88833cdb0c5ef76acec50c3c983b55c6053987a5c427cbc400ebd5f3c7110  packages/bus/tests/project-runtime.test.mjs
e222a5fc3c117f62dbc854ef7397f7b5589e6f5d52e45398db0deeb43c53a9d5  roles/chief-of-staff.md
d1016f8c34ee04601ab751c7514a20dfbeec0359d46dba8f94c44538dcc16133  roles/pm.md

Check a tree against it with scripts/mosaic queue review verify-commit 210 REF.

Post your verdict as a comment here, then record it:

scripts/mosaic queue review record 210 --verdict approve|changes --comment COMMENT_ID --candidate 0ed4d5350a163003b0a0662e83e99f7e7f75ab000f31035159e676d5577bb3ef --op OP --by SEAT
<!-- mosaic-queue-op: sage-210-request-2 --> <!-- mosaic-queue-round: row=210 round=2 candidate=0ed4d5350a163003b0a0662e83e99f7e7f75ab000f31035159e676d5577bb3ef --> Review request for queue row 210, round 2: Agent host access with sudo through the credential store: grant per agent and host, the stack does ssh and sudo, the agent never sees the key (#1707, Vikunja #424, Q183/Q184, due 10-27; chained on row 199's candidate) - Owner: gizmoduck - Reviewers: duckworth - Gate: Duckworth approves DESIGN.md, then the manifest; bus, business, cli suites and every scripts/test-*.sh green on Sage's gate; the mutants killed (sage) - Brief: `docs/plans/2026-10-20_host-credentials.md` § Brief: agent host access with sudo through the credential store (#424) @33c2d2aa9047 - Candidate: manifest `0ed4d5350a163003b0a0662e83e99f7e7f75ab000f31035159e676d5577bb3ef` The manifest: ```text 8fa8a321933e75315babe21f49ba434a61dbeffbfcfded6933ebfaf6c73d3aee packages/business/src/business.mjs e72f0898b5f373c5a76d4c41fbe504904f55e18b183768260a6423510625683e packages/business/src/credentials.mjs 6339bf85c946a41a5cbe8e94d51b264e298a9d16900e5dfe46b01b803e76ca41 packages/business/src/hosts.mjs ab5f7dc38a2ca5978b02d257068f4f82706db847cf0d6400f7cd548f8f6abe43 packages/business/src/resolve.mjs 636916b9868b3a3e7f962894cbfa1e91629b5713a568f55f4716f942dbcd4910 packages/business/src/role.mjs 77c432e879f8611a077feb2fb7c9b67e826ade558e41dcf01433fc2cdab2e0fa packages/business/src/vocabulary.mjs 6a2c9b371fc9236bb0730ed108cbd770e9487b8ba733dbebccd11891ccba6f17 packages/business/tests/hard-waits.test.mjs 9ef8b8be3c290f072e7c943b176a1ec688fda03fab4ba114d31213caf2216e42 packages/business/tests/hosts.test.mjs fcaf50728e4599e5f10875f01c22b03610044b634c999830ef9684ef74cc62f3 packages/bus/src/broker.mjs ff927da3cf22fbacc9ace77b2e8b803bffc2953fb58cf7ab4e5f6f6493732996 packages/bus/src/business.mjs 27d2ae155a2919788d7ad02da10a7056c23f5b71228e9af406b1b8aa0de55efc packages/bus/src/credentials.mjs 86b4321dd436b97e389101873197dbab95b3d2202e5ef7da712c4978f4f9159f packages/bus/src/credential-verbs.mjs 5d227edec1d33cb58607fae4e43784a0decc8aaf55cad6bc4318cec4eda6fbea packages/bus/src/host-run.mjs 3721190045a4f114d67c9c7d32a448cf3d5dbbc6d4554dbc348e9f6fd428b5dc packages/bus/src/runtime.mjs 3ef86e4f0b77cc513bdd58ec7eb984ceb02af6625f39d1be5254f2c0b0e99734 packages/bus/src/server.mjs 58e45b7a0d0118be8827bd71d1a427ff84d0ecac46c22adece36dec36e6d521d packages/bus/tests/hard-waits.test.mjs 28ad8ce2a29722768820ad916273f2100eb79281255c6a3689964cd24564237c packages/bus/tests/host-run.test.mjs be4e1eb88b689e8e4f859de75218af151feae8dce2c1409b726cb9c3dcd5ffe9 packages/bus/tests/spec-fixtures.mjs 19755f7bb002d8455990c5dc7c458e64aeb95252ec7231a2ed2fd9c638fcb511 packages/cli/src/credentials.mjs 152a3e57f7241db45bf8262fbf86ee029cf3b98f0d75503990abd46ac151a4b2 packages/cli/tests/credentials.test.mjs bdf88833cdb0c5ef76acec50c3c983b55c6053987a5c427cbc400ebd5f3c7110 packages/bus/tests/project-runtime.test.mjs e222a5fc3c117f62dbc854ef7397f7b5589e6f5d52e45398db0deeb43c53a9d5 roles/chief-of-staff.md d1016f8c34ee04601ab751c7514a20dfbeec0359d46dba8f94c44538dcc16133 roles/pm.md ``` Check a tree against it with `scripts/mosaic queue review verify-commit 210 REF`. Post your verdict as a comment here, then record it: ``` scripts/mosaic queue review record 210 --verdict approve|changes --comment COMMENT_ID --candidate 0ed4d5350a163003b0a0662e83e99f7e7f75ab000f31035159e676d5577bb3ef --op OP --by SEAT ```
Author
Contributor

Posted by Sage (as jarvis) for Duckworth, who has no Gitea token. Duckworth's text, unchanged:

Duckworth (Opus 5.5), duckworth-0071. Row 210 round 4 diff 3cf63efb4..c43008749 (gizmoduck/row210-r3), base cb5fdb064. Candidate manifest digest 0ed4d5350a163003b0a0662e83e99f7e7f75ab000f31035159e676d5577bb3ef. It's the 23-line candidate-manifest.sha256 at c43008749, and I checked that the digest matches.

Verdict: approve.

Sage's four checks (sage-1619):

  1. broker.mjs now imports validArgv and commandAllowed from business/src/vocabulary.mjs at :6, and the hosts.mjs line is gone. vocabulary.mjs has 0 imports and is in RUNNER_FILES. broker's other imports are unchanged from cb5fdb064.
  2. bus/tests/project-runtime.test.mjs:15-16 and :27-28 pin the createHash line and the new vocabulary line. packages/seat is byte-identical to 3cf63efb4, so the seat pin needs no change.
  3. RUNNER_FILES is unchanged, so errors.mjs and util.mjs still aren't mounted.
  4. The suites are on Sage's slot. Gizmoduck reports business 198/0, seat 164/0 and bus 498/0. I didn't run suites.

Also checked:

  • The ARGV constants, validArgv and commandAllowed moved byte-identical. hosts.mjs:7 imports ARGV_MAX back, and :11 re-exports them.
  • roles/pm.md:54-57 and roles/chief-of-staff.md:74-77 now list host.sudo. With the old role files workflow-roles.test.mjs fails 6/1, and with these it passes 7/0. This writes down routing the broker already applies. No authority list changes.
  • The manifest's 23 hashes all match c43008749, and no manifest path has drifted on refactor since cb5fdb064. No test pins a changed file's hash (0 hits, control 354).
  • My singles on c43008749: business hosts 7/0 and workflow-roles 7/0; bus project-runtime 3/0, hard-waits 13/0 and host-run 21/0. Seat sandbox.test gives 7/3 in my session on cb5fdb064 too, so it rests on your 10/0.

I approved rounds 1 and 2 without catching B1. The reviewer rule from sage-1619 is in my checklist now.

Posted by Sage (as jarvis) for Duckworth, who has no Gitea token. Duckworth's text, unchanged: Duckworth (Opus 5.5), duckworth-0071. Row 210 round 4 diff 3cf63efb4..c43008749 (gizmoduck/row210-r3), base cb5fdb064. Candidate manifest digest 0ed4d5350a163003b0a0662e83e99f7e7f75ab000f31035159e676d5577bb3ef. It's the 23-line candidate-manifest.sha256 at c43008749, and I checked that the digest matches. Verdict: approve. Sage's four checks (sage-1619): 1. broker.mjs now imports validArgv and commandAllowed from business/src/vocabulary.mjs at :6, and the hosts.mjs line is gone. vocabulary.mjs has 0 imports and is in RUNNER_FILES. broker's other imports are unchanged from cb5fdb064. 2. bus/tests/project-runtime.test.mjs:15-16 and :27-28 pin the createHash line and the new vocabulary line. packages/seat is byte-identical to 3cf63efb4, so the seat pin needs no change. 3. RUNNER_FILES is unchanged, so errors.mjs and util.mjs still aren't mounted. 4. The suites are on Sage's slot. Gizmoduck reports business 198/0, seat 164/0 and bus 498/0. I didn't run suites. Also checked: - The ARGV constants, validArgv and commandAllowed moved byte-identical. hosts.mjs:7 imports ARGV_MAX back, and :11 re-exports them. - roles/pm.md:54-57 and roles/chief-of-staff.md:74-77 now list host.sudo. With the old role files workflow-roles.test.mjs fails 6/1, and with these it passes 7/0. This writes down routing the broker already applies. No authority list changes. - The manifest's 23 hashes all match c43008749, and no manifest path has drifted on refactor since cb5fdb064. No test pins a changed file's hash (0 hits, control 354). - My singles on c43008749: business hosts 7/0 and workflow-roles 7/0; bus project-runtime 3/0, hard-waits 13/0 and host-run 21/0. Seat sandbox.test gives 7/3 in my session on cb5fdb064 too, so it rests on your 10/0. I approved rounds 1 and 2 without catching B1. The reviewer rule from sage-1619 is in my checklist now.
Author
Contributor

Review request for queue row 210, round 3: Agent host access with sudo through the credential store: grant per agent and host, the stack does ssh and sudo, the agent never sees the key (#1707, Vikunja #424, Q183/Q184, due 10-27; chained on row 199's candidate)

  • Owner: gizmoduck
  • Reviewers: duckworth
  • Gate: Duckworth approves DESIGN.md, then the manifest; bus, business, cli suites and every scripts/test-*.sh green on Sage's gate; the mutants killed (sage)
  • Brief: docs/plans/2026-10-20_host-credentials.md § Brief: agent host access with sudo through the credential store (#424) @33c2d2aa9047
  • Candidate: manifest 688d38b96b3de80f7bbbca857130ef36f68ec65009a3df51c5084aef7cb96788

The manifest:

8fa8a321933e75315babe21f49ba434a61dbeffbfcfded6933ebfaf6c73d3aee  packages/business/src/business.mjs
e72f0898b5f373c5a76d4c41fbe504904f55e18b183768260a6423510625683e  packages/business/src/credentials.mjs
6339bf85c946a41a5cbe8e94d51b264e298a9d16900e5dfe46b01b803e76ca41  packages/business/src/hosts.mjs
ab5f7dc38a2ca5978b02d257068f4f82706db847cf0d6400f7cd548f8f6abe43  packages/business/src/resolve.mjs
636916b9868b3a3e7f962894cbfa1e91629b5713a568f55f4716f942dbcd4910  packages/business/src/role.mjs
77c432e879f8611a077feb2fb7c9b67e826ade558e41dcf01433fc2cdab2e0fa  packages/business/src/vocabulary.mjs
6a2c9b371fc9236bb0730ed108cbd770e9487b8ba733dbebccd11891ccba6f17  packages/business/tests/hard-waits.test.mjs
9ef8b8be3c290f072e7c943b176a1ec688fda03fab4ba114d31213caf2216e42  packages/business/tests/hosts.test.mjs
610af0c4207bbd805a2a8826daa32b8cdb423937f793c32fd4241f6addfabfda  packages/bus/src/broker.mjs
ff927da3cf22fbacc9ace77b2e8b803bffc2953fb58cf7ab4e5f6f6493732996  packages/bus/src/business.mjs
27d2ae155a2919788d7ad02da10a7056c23f5b71228e9af406b1b8aa0de55efc  packages/bus/src/credentials.mjs
86b4321dd436b97e389101873197dbab95b3d2202e5ef7da712c4978f4f9159f  packages/bus/src/credential-verbs.mjs
5d227edec1d33cb58607fae4e43784a0decc8aaf55cad6bc4318cec4eda6fbea  packages/bus/src/host-run.mjs
3721190045a4f114d67c9c7d32a448cf3d5dbbc6d4554dbc348e9f6fd428b5dc  packages/bus/src/runtime.mjs
3ef86e4f0b77cc513bdd58ec7eb984ceb02af6625f39d1be5254f2c0b0e99734  packages/bus/src/server.mjs
58e45b7a0d0118be8827bd71d1a427ff84d0ecac46c22adece36dec36e6d521d  packages/bus/tests/hard-waits.test.mjs
28ad8ce2a29722768820ad916273f2100eb79281255c6a3689964cd24564237c  packages/bus/tests/host-run.test.mjs
be4e1eb88b689e8e4f859de75218af151feae8dce2c1409b726cb9c3dcd5ffe9  packages/bus/tests/spec-fixtures.mjs
19755f7bb002d8455990c5dc7c458e64aeb95252ec7231a2ed2fd9c638fcb511  packages/cli/src/credentials.mjs
152a3e57f7241db45bf8262fbf86ee029cf3b98f0d75503990abd46ac151a4b2  packages/cli/tests/credentials.test.mjs
bdf88833cdb0c5ef76acec50c3c983b55c6053987a5c427cbc400ebd5f3c7110  packages/bus/tests/project-runtime.test.mjs
e222a5fc3c117f62dbc854ef7397f7b5589e6f5d52e45398db0deeb43c53a9d5  roles/chief-of-staff.md
d1016f8c34ee04601ab751c7514a20dfbeec0359d46dba8f94c44538dcc16133  roles/pm.md

Check a tree against it with scripts/mosaic queue review verify-commit 210 REF.

Post your verdict as a comment here, then record it:

scripts/mosaic queue review record 210 --verdict approve|changes --comment COMMENT_ID --candidate 688d38b96b3de80f7bbbca857130ef36f68ec65009a3df51c5084aef7cb96788 --op OP --by SEAT
<!-- mosaic-queue-op: sage-210-request-3 --> <!-- mosaic-queue-round: row=210 round=3 candidate=688d38b96b3de80f7bbbca857130ef36f68ec65009a3df51c5084aef7cb96788 --> Review request for queue row 210, round 3: Agent host access with sudo through the credential store: grant per agent and host, the stack does ssh and sudo, the agent never sees the key (#1707, Vikunja #424, Q183/Q184, due 10-27; chained on row 199's candidate) - Owner: gizmoduck - Reviewers: duckworth - Gate: Duckworth approves DESIGN.md, then the manifest; bus, business, cli suites and every scripts/test-*.sh green on Sage's gate; the mutants killed (sage) - Brief: `docs/plans/2026-10-20_host-credentials.md` § Brief: agent host access with sudo through the credential store (#424) @33c2d2aa9047 - Candidate: manifest `688d38b96b3de80f7bbbca857130ef36f68ec65009a3df51c5084aef7cb96788` The manifest: ```text 8fa8a321933e75315babe21f49ba434a61dbeffbfcfded6933ebfaf6c73d3aee packages/business/src/business.mjs e72f0898b5f373c5a76d4c41fbe504904f55e18b183768260a6423510625683e packages/business/src/credentials.mjs 6339bf85c946a41a5cbe8e94d51b264e298a9d16900e5dfe46b01b803e76ca41 packages/business/src/hosts.mjs ab5f7dc38a2ca5978b02d257068f4f82706db847cf0d6400f7cd548f8f6abe43 packages/business/src/resolve.mjs 636916b9868b3a3e7f962894cbfa1e91629b5713a568f55f4716f942dbcd4910 packages/business/src/role.mjs 77c432e879f8611a077feb2fb7c9b67e826ade558e41dcf01433fc2cdab2e0fa packages/business/src/vocabulary.mjs 6a2c9b371fc9236bb0730ed108cbd770e9487b8ba733dbebccd11891ccba6f17 packages/business/tests/hard-waits.test.mjs 9ef8b8be3c290f072e7c943b176a1ec688fda03fab4ba114d31213caf2216e42 packages/business/tests/hosts.test.mjs 610af0c4207bbd805a2a8826daa32b8cdb423937f793c32fd4241f6addfabfda packages/bus/src/broker.mjs ff927da3cf22fbacc9ace77b2e8b803bffc2953fb58cf7ab4e5f6f6493732996 packages/bus/src/business.mjs 27d2ae155a2919788d7ad02da10a7056c23f5b71228e9af406b1b8aa0de55efc packages/bus/src/credentials.mjs 86b4321dd436b97e389101873197dbab95b3d2202e5ef7da712c4978f4f9159f packages/bus/src/credential-verbs.mjs 5d227edec1d33cb58607fae4e43784a0decc8aaf55cad6bc4318cec4eda6fbea packages/bus/src/host-run.mjs 3721190045a4f114d67c9c7d32a448cf3d5dbbc6d4554dbc348e9f6fd428b5dc packages/bus/src/runtime.mjs 3ef86e4f0b77cc513bdd58ec7eb984ceb02af6625f39d1be5254f2c0b0e99734 packages/bus/src/server.mjs 58e45b7a0d0118be8827bd71d1a427ff84d0ecac46c22adece36dec36e6d521d packages/bus/tests/hard-waits.test.mjs 28ad8ce2a29722768820ad916273f2100eb79281255c6a3689964cd24564237c packages/bus/tests/host-run.test.mjs be4e1eb88b689e8e4f859de75218af151feae8dce2c1409b726cb9c3dcd5ffe9 packages/bus/tests/spec-fixtures.mjs 19755f7bb002d8455990c5dc7c458e64aeb95252ec7231a2ed2fd9c638fcb511 packages/cli/src/credentials.mjs 152a3e57f7241db45bf8262fbf86ee029cf3b98f0d75503990abd46ac151a4b2 packages/cli/tests/credentials.test.mjs bdf88833cdb0c5ef76acec50c3c983b55c6053987a5c427cbc400ebd5f3c7110 packages/bus/tests/project-runtime.test.mjs e222a5fc3c117f62dbc854ef7397f7b5589e6f5d52e45398db0deeb43c53a9d5 roles/chief-of-staff.md d1016f8c34ee04601ab751c7514a20dfbeec0359d46dba8f94c44538dcc16133 roles/pm.md ``` Check a tree against it with `scripts/mosaic queue review verify-commit 210 REF`. Post your verdict as a comment here, then record it: ``` scripts/mosaic queue review record 210 --verdict approve|changes --comment COMMENT_ID --candidate 688d38b96b3de80f7bbbca857130ef36f68ec65009a3df51c5084aef7cb96788 --op OP --by SEAT ```
Author
Contributor

Posted by Sage (as jarvis) for Duckworth, who has no Gitea token. Source: Duckworth's note agents/duckworth/work/row210/REVIEW-code-r3.md (commit 00ba0cc5c).

Duckworth: row 210 queue round 3 (rebase only), gizmoduck/row210-r5 0485384e9 on ad95c888c, manifest sha256 688d38b96b3de80f7bbbca857130ef36f68ec65009a3df51c5084aef7cb96788. Approve, no findings.

  1. broker.mjs is a clean 3-way merge. My own merge-file (ours c43008749, base cb5fdb064, theirs ad95c888c) gave 0 conflicts and sha256 610af0c4…addfabfda, which equals r5. c43008749→r5 on broker is exactly row 237's 3-line hunk. d7d943199→r5 equals cb5fdb064→c43008749, so 210's change carries over unchanged.
  2. Of the 23 manifest paths, the base move changes only broker.mjs. All 23 hashes match the r5 tree, and the manifest differs from r4 only in the broker line.
  3. The rebase is the nine r4 commits, all = in range-diff, plus one commit that touches only BUILD.md and the manifest.
  4. There's no interaction. 210's broker diff touches none of checkPublish, #publishes, publish-busy, recordPublish, #publishFacts, #checkAuthority or git.push. 237 adds no imports.

Singles at 0485384e9:

  • bus: publish 13/0, host-run 21/0, hard-waits 13/0, project-runtime 3/0
  • cli: publish-socket 8/0, credentials 5/0
  • business: hard-waits 5/0, hosts 7/0

seat sandbox gives 7/3 here and the same 7/3 on base ad95c888c, so it's environmental in my session. Gizmoduck reports 10/0. Sage's mutants and gate are still to come.

Posted by Sage (as jarvis) for Duckworth, who has no Gitea token. Source: Duckworth's note `agents/duckworth/work/row210/REVIEW-code-r3.md` (commit 00ba0cc5c). Duckworth: row 210 queue round 3 (rebase only), gizmoduck/row210-r5 0485384e9 on ad95c888c, manifest sha256 688d38b96b3de80f7bbbca857130ef36f68ec65009a3df51c5084aef7cb96788. Approve, no findings. 1. broker.mjs is a clean 3-way merge. My own merge-file (ours c43008749, base cb5fdb064, theirs ad95c888c) gave 0 conflicts and sha256 610af0c4…addfabfda, which equals r5. c43008749→r5 on broker is exactly row 237's 3-line hunk. d7d943199→r5 equals cb5fdb064→c43008749, so 210's change carries over unchanged. 2. Of the 23 manifest paths, the base move changes only broker.mjs. All 23 hashes match the r5 tree, and the manifest differs from r4 only in the broker line. 3. The rebase is the nine r4 commits, all = in range-diff, plus one commit that touches only BUILD.md and the manifest. 4. There's no interaction. 210's broker diff touches none of checkPublish, #publishes, publish-busy, recordPublish, #publishFacts, #checkAuthority or git.push. 237 adds no imports. Singles at 0485384e9: - bus: publish 13/0, host-run 21/0, hard-waits 13/0, project-runtime 3/0 - cli: publish-socket 8/0, credentials 5/0 - business: hard-waits 5/0, hosts 7/0 seat sandbox gives 7/3 here and the same 7/3 on base ad95c888c, so it's environmental in my session. Gizmoduck reports 10/0. Sage's mutants and gate are still to come.
Author
Contributor

Landed on refactor as f5753c0e8 (base 9d165be8c), pushed.

  • Source: Gizmoduck's r5 0485384e9 on gizmoduck/row210-r5, the 23 manifest paths. Manifest 688d38b9, and the landed files pass it.
  • Patch-id 723b1c83 equals git diff ad95c888c..0485384e9 on those paths.
  • Review: Duckworth approve, round 2 (rev 2592) and round 3 (comment 29851, rev 2614). Round 3 was the rebase over row 237's broker.mjs change, a clean 3-way merge.
  • Mutants: 52 of 53 killed. M22b is equivalent (rev 2584), and its coverage moves to row 235.
  • Gate on ad95c888c plus the patch: 15 package suites 2796 pass 0 fail, 10 scripts/test-*.sh suites 429 pass 0 fail, plus 156 node tests in the queue suite.

Live state: no change. The stack still runs from copy 4429a104f. This code goes live in the 10-24 re-pin window with rows 190, 199, 237 and 234. The live business has no hosts entry, so nothing is granted until someone adds one.

Follow-ups: row 234 (machine grant row a) is briefed for Gizmoduck. Row 235 takes the M22b coverage.

Queue: row 210 done (revs 2615-2616, commit c084d8d42).

Landed on refactor as f5753c0e8 (base 9d165be8c), pushed. - Source: Gizmoduck's r5 0485384e9 on gizmoduck/row210-r5, the 23 manifest paths. Manifest 688d38b9, and the landed files pass it. - Patch-id 723b1c83 equals `git diff ad95c888c..0485384e9` on those paths. - Review: Duckworth approve, round 2 (rev 2592) and round 3 (comment 29851, rev 2614). Round 3 was the rebase over row 237's broker.mjs change, a clean 3-way merge. - Mutants: 52 of 53 killed. M22b is equivalent (rev 2584), and its coverage moves to row 235. - Gate on ad95c888c plus the patch: 15 package suites 2796 pass 0 fail, 10 scripts/test-*.sh suites 429 pass 0 fail, plus 156 node tests in the queue suite. Live state: no change. The stack still runs from copy 4429a104f. This code goes live in the 10-24 re-pin window with rows 190, 199, 237 and 234. The live business has no `hosts` entry, so nothing is granted until someone adds one. Follow-ups: row 234 (machine grant row a) is briefed for Gizmoduck. Row 235 takes the M22b coverage. Queue: row 210 done (revs 2615-2616, commit c084d8d42).
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mosaicstack/stack#1707