Carry a module on the tool runner only when the runner serves something of it, so a part on its own credential has one writer (issues 1329, 1338) #404

Merged
mesh-tools merged 3 commits from fix/1329-runner-carries-only-what-it-serves into main 2026-10-19 23:39:24 +00:00
Member

Issue 1329 (a fault against ADR 0436 §1 and ADR 0437 §4): every module without runs-as was carried by its machine's tool runner, which was then granted its buckets, streams, consumers and seat traffic. On novox the runner could write the teller's answers, the forge bridge's and the indexer's keys and the watchman's, and raise asks as mesh-delivery-teller.

  • internal/broker/users.go: a module is carried only when the runner serves something of it: the runtime module, a module with no account of its own, tools, a bundle the runtime loads (route-proxy's helper), a held seat, waits or a check.
  • Dropped from the runner: mesh-delivery-forge-bridge, -indexer, -teller, -watchman, -view (each keeps its own credential's grants). route-proxy stays carried (its loaded helper writes on the runner's account).
  • Tests: TestTheToolRunnerCarriesNoneOfTheDeliverysParts (manifests copied from mesh-delivery main 9c15112d), TestTheToolRunnerStillCarriesAModuleWithToolsAndItsOwnCredential, TestTheToolRunnerStillCarriesAModuleWhoseBundleItLoads; the gate's grant test no longer lets the runner write the teller's answers.
  • Issue 1338: the rollout tests wait for the plan look to return before their cleanups restore what it reads (a race that failed this branch's first try).

Live after delivery (1329/AC4): nats.nats_users shows novox.node-tools with no grant on KV_mesh-delivery-teller_answers; the parts keep running. Tried: build-1792452314954595620 pass (full suite).

Reviewed-by: review-1329@shanks at c07f604047

Issue 1329 (a fault against ADR 0436 §1 and ADR 0437 §4): every module without runs-as was carried by its machine's tool runner, which was then granted its buckets, streams, consumers and seat traffic. On novox the runner could write the teller's answers, the forge bridge's and the indexer's keys and the watchman's, and raise asks as mesh-delivery-teller. - internal/broker/users.go: a module is carried only when the runner serves something of it: the runtime module, a module with no account of its own, tools, a bundle the runtime loads (route-proxy's helper), a held seat, waits or a check. - Dropped from the runner: mesh-delivery-forge-bridge, -indexer, -teller, -watchman, -view (each keeps its own credential's grants). route-proxy stays carried (its loaded helper writes on the runner's account). - Tests: TestTheToolRunnerCarriesNoneOfTheDeliverysParts (manifests copied from mesh-delivery main 9c15112d), TestTheToolRunnerStillCarriesAModuleWithToolsAndItsOwnCredential, TestTheToolRunnerStillCarriesAModuleWhoseBundleItLoads; the gate's grant test no longer lets the runner write the teller's answers. - Issue 1338: the rollout tests wait for the plan look to return before their cleanups restore what it reads (a race that failed this branch's first try). Live after delivery (1329/AC4): nats.nats_users shows novox.node-tools with no grant on KV_mesh-delivery-teller_answers; the parts keep running. Tried: build-1792452314954595620 pass (full suite). Reviewed-by: review-1329@shanks at c07f604047be28350792ffed1a3ffb49237a3480
mesh-tools added 3 commits 2026-10-19 23:31:03 +00:00
Author
Member

Delivery novox/mesh-controller@c07f604047be — delivered since 2026-10-19T23:50:46Z

Delivery plan — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step

  • tier 0: mesh-controller, route-proxy
  • tier 1: build-agent
  • ace: receives route-proxy, build-agent
  • g14: receives build-agent
  • novox: receives mesh-controller, route-proxy, build-agent
  • shanks: receives build-agent
  • route-proxy provides route: its consumers are sent again after it
  • route-proxy keeps data (ADR 0233): what it holds is backed up before it moves
  • build-agent keeps data (ADR 0233): what it holds is backed up before it moves
  • grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before route-proxy, build-agent is judged on its first machine

Machines

  • mesh-controller on every machine running it: sent
  • route-proxy on every machine running it: sent
  • build-agent on every machine running it: sent

Transitions

  • 2026-10-19 23:31 (new) → proposed (announced): novox/mesh-controller#404's head announced
  • 2026-10-19 23:38 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit
  • 2026-10-19 23:38 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail
  • 2026-10-19 23:41 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move
  • 2026-10-19 23:41 published → delivering (go): its walk started: let go by this owner in its group's order, by a person, or on the controller's own path — not a failed walk that carried a later commit for it, after which it waits for a walk of its own commit
  • 2026-10-19 23:50 delivering → delivered (done): its walk is done, carrying its own commit: every machine of its deploy plan passed, or was left as its policy says

The commit's note under refs/notes/mesh-plan keeps every transition: git log --notes=mesh-plan.

<!-- mesh-delivery:view --> **Delivery** `novox/mesh-controller@c07f604047be` — **delivered** since 2026-10-19T23:50:46Z **Delivery plan** — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step - tier 0: mesh-controller, route-proxy - tier 1: build-agent - ace: receives route-proxy, build-agent - g14: receives build-agent - novox: receives mesh-controller, route-proxy, build-agent - shanks: receives build-agent - route-proxy provides route: its consumers are sent again after it - route-proxy keeps data (ADR 0233): what it holds is backed up before it moves - build-agent keeps data (ADR 0233): what it holds is backed up before it moves - grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before route-proxy, build-agent is judged on its first machine **Machines** - mesh-controller on every machine running it: sent - route-proxy on every machine running it: sent - build-agent on every machine running it: sent **Transitions** - 2026-10-19 23:31 (new) → proposed (announced): novox/mesh-controller#404's head announced - 2026-10-19 23:38 proposed → checked (checked): a verdict names this commit and the trunk's head as its trunk commit - 2026-10-19 23:38 checked → ready (accepted): the gate passed or warned, and the repository's own check did not fail - 2026-10-19 23:41 ready → published (merged): on the trunk its modules follow: merged there, and its walk opened — or nothing for a walk to move - 2026-10-19 23:41 published → delivering (go): its walk started: let go by this owner in its group's order, by a person, or on the controller's own path — not a failed walk that carried a later commit for it, after which it waits for a walk of its own commit - 2026-10-19 23:50 delivering → delivered (done): its walk is done, carrying its own commit: every machine of its deploy plan passed, or was left as its policy says The commit's note under `refs/notes/mesh-plan` keeps every transition: `git log --notes=mesh-plan`.
Author
Member

Merge check at c07f6040
Judged: head c07f604047be merged into trunk 70cb217601f9; read beside it: mesh-catalog c0880c4dc271, mesh-controller-main 70cb217601f9, mesh-host 2474bf28330f, mesh-tools 7412c5b6c9c5

  • mesh/merge-gate: PASS — every machine composes with the change as it did without (4 of 4 compose) (modules: build-agent, mesh-controller, route-proxy)
  • mesh/repo-check: PASS — its merge-check.sh passed

Delivery plan — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step

  • tier 0: mesh-controller, route-proxy
  • tier 1: build-agent
  • ace: receives route-proxy, build-agent
  • g14: receives build-agent
  • novox: receives mesh-controller, route-proxy, build-agent
  • shanks: receives build-agent
  • route-proxy provides route: its consumers are sent again after it
  • route-proxy keeps data (ADR 0233): what it holds is backed up before it moves
  • build-agent keeps data (ADR 0233): what it holds is backed up before it moves
  • grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before route-proxy, build-agent is judged on its first machine
  • read by no module's build: cmd/mesh-controller/away_integration_test.go, cmd/mesh-controller/rollout_events_test.go, cmd/mesh-controller/silent_mid_tier_integration_test.go, internal/broker/delivery_gate_grant_test.go, internal/broker/delivery_parts_grant_test.go, internal/broker/modstreams_test.go

Run by the build seat on shanks as build-1792452671800714772 (builds --log build-1792452671800714772).

MESH_STORE_EXAMPLE_PORT is "${seat:mesh-store:5432}", a placeholder nothing filled in — ignored; the port in MESH_STORE_EXAMPLE stands. The control plane composing this declaration is older than the manifest naming it: rebuild and push it
PASS
ok  	github.com/novox/mesh-controller/internal/store	3.692s
    testbus_test.go:22: judged against /var/lib/build-agent/workspace/check/mesh-catalog as cloned beside this check
PASS
ok  	github.com/novox/mesh-controller/internal/testbus	1.291s
PASS
ok  	github.com/novox/mesh-controller/internal/token	1.046s
ok  	github.com/novox/mesh-controller/cmd/mesh-controller	204s	(shard 1 of 8: 152 tests)
ok  	github.com/novox/mesh-controller/cmd/mesh-controller	140s	(shard 2 of 8: 152 tests)
ok  	github.com/novox/mesh-controller/cmd/mesh-controller	146s	(shard 3 of 8: 152 tests)
ok  	github.com/novox/mesh-controller/cmd/mesh-controller	130s	(shard 4 of 8: 152 tests)
ok  	github.com/novox/mesh-controller/cmd/mesh-controller	109s	(shard 5 of 8: 152 tests)
ok  	github.com/novox/mesh-controller/cmd/mesh-controller	65s	(shard 6 of 8: 152 tests)
ok  	github.com/novox/mesh-controller/cmd/mesh-controller	52s	(shard 7 of 8: 151 tests)
ok  	github.com/novox/mesh-controller/cmd/mesh-controller	102s	(shard 8 of 8: 151 tests)
ok  	github.com/novox/mesh-controller/internal/inventory	25s	(shard 1 of 4: 92 tests)
ok  	github.com/novox/mesh-controller/internal/inventory	29s	(shard 2 of 4: 92 tests)
ok  	github.com/novox/mesh-controller/internal/inventory	25s	(shard 3 of 4: 91 tests)
ok  	github.com/novox/mesh-controller/internal/inventory	26s	(shard 4 of 4: 91 tests)
ok  	github.com/novox/mesh-controller/internal/builder	26s	(shard 1 of 4: 57 tests)
ok  	github.com/novox/mesh-controller/internal/builder	36s	(shard 2 of 4: 56 tests)
ok  	github.com/novox/mesh-controller/internal/builder	25s	(shard 3 of 4: 56 tests)
ok  	github.com/novox/mesh-controller/internal/builder	24s	(shard 4 of 4: 56 tests)
ok  	github.com/novox/mesh-controller/internal/link	31s	(shard 1 of 4: 53 tests)
ok  	github.com/novox/mesh-controller/internal/link	23s	(shard 2 of 4: 53 tests)
ok  	github.com/novox/mesh-controller/internal/link	22s	(shard 3 of 4: 53 tests)
ok  	github.com/novox/mesh-controller/internal/link	18s	(shard 4 of 4: 52 tests)
integration level (the whole suite, tag integration): 3597 tests (6 skipped outside the shards), 208 s
nested module modules/build-agent:
ok  	build-agent	1.016s
nested module modules/route-proxy:
ok  	route-proxy/cmd/route-provider	1.015s
nested modules: 3 s
store tests, each run against the store:
  ./cmd/mesh-controller --- PASS: TestAStopWithoutAMergeWalksTheOthersAgain (0.28s)
  ./cmd/mesh-controller --- PASS: TestAStopWithoutAMergeEndsTheMergesThatContainIt (0.28s)
  ./cmd/mesh-controller --- PASS: TestAStopWalksTheOthersAgainInTheOpenBatch (0.27s)
  ./cmd/mesh-controller --- PASS: TestAStopNamesWhatStaysOnTheMachinesAndWhatStillCarriesIt (0.25s)
  ./cmd/mesh-controller --- PASS: TestAStopWithoutAMergeLeavesItOutOfABatch (0.23s)
  ./cmd/mesh-controller --- PASS: TestSavingPlansAndMovingMergesIsOneAct (0.21s)
  ./cmd/mesh-controller --- PASS: TestAPlanFollowedFromTheStoreAnswersWhenItMoves (2.03s)
  ./cmd/mesh-controller --- PASS: TestIssue969TheGateRaisesEachMachineAsItsEngineStatedItself (0.91s)
  ./cmd/mesh-controller --- PASS: TestNodeShowAndStatusReadTheLastSendFromTheStore (0.35s)
  ./cmd/mesh-controller --- PASS: TestTheConditionsVerbReadsTheLooksTheBucketNoLongerHolds (0.16s)
  ./cmd/mesh-controller --- PASS: TestAWalkLetGoAndStoppedByVerbsIsSaidStartedAndEnded (0.29s)
  ./cmd/mesh-controller --- PASS: TestAWalkStoppedOrClosedByAPersonIsSaidEndedStopped (0.30s)
  ./cmd/mesh-controller --- PASS: TestAWalkRetriedByAPersonIsSaidStartedAgain (0.23s)
  ./cmd/mesh-controller --- PASS: TestABacklogReleasedByAPersonIsSaidStarted (0.25s)
  ./cmd/mesh-controller --- PASS: TestAWalkEndedByCancelOrClearIsSaidEnded (0.26s)
  ./cmd/mesh-controller --- PASS: TestAWalkRestartedByARebuildIsSaidStarted (0.22s)
  ./cmd/mesh-controller --- PASS: TestAWalkStoppedByHandAndRetriedEndsFailedWhenItFailsAgain (0.25s)
  ./cmd/mesh-controller --- PASS: TestReplay237 (0.24s)
  ./cmd/mesh-controller --- PASS: TestAnUnassignThatLeavesItsNodeUnresolvedSaysSoOnceInItsAnswer (0.28s)
  ./cmd/mesh-controller --- PASS: TestAnUnassignThatLeavesItsNodeResolvedSaysNothingOfIt (0.26s)
  ./cmd/mesh-controller --- PASS: TestAnAssignThatLeavesItsNodeUnresolvedSaysOnlyThePlansRefusal (0.26s)
  ./cmd/mesh-controller --- PASS: TestADirectoryOwnersKeyIsRefusedThroughAVerb (0.29s)
  ./cmd/mesh-controller --- PASS: TestTheSendMakesNoValueForAnOutsideSecretNobodyGave (0.37s)
  ./cmd/mesh-controller --- PASS: TestAQuestionComposesWithoutAnOutsideSecretNobodyGave (0.36s)
  ./cmd/mesh-controller --- PASS: TestReplay201 (0.22s)
  ./cmd/mesh-controller --- PASS: TestARollbackWhoseSendWasRefusedIsCompletedByTheNextSend (0.20s)
  ./cmd/mesh-controller --- PASS: TestAGateJudgesTheOtherMovesBesideAKeptCore (0.21s)
  ./cmd/mesh-controller --- PASS: TestReplay401 (0.40s)
  ./cmd/mesh-controller --- PASS: TestReplay201ThePlansSend (0.28s)
  ./cmd/mesh-controller --- PASS: TestPlanAndNodeListAnOptionalRequirementLeftUnbound (0.36s)
  ./cmd/mesh-controller --- PASS: TestReplay340 (0.32s)
  ./cmd/mesh-controller --- PASS: TestOnlyATrustedFilesNamedKeyIsRefusedThroughAVerb (0.23s)
  ./cmd/mesh-controller --- PASS: TestReplay349 (0.26s)
  ./cmd/mesh-controller --- PASS: TestReplay348AFaultFromBeforeTheSendFailsNoGate (0.22s)
  ./cmd/mesh-controller --- PASS: TestReplay239AModuleNameIsNotTakenOverByAnotherRepository (0.17s)
  ./cmd/mesh-controller --- PASS: TestAWalkThatMovedNothingSaysWhichModulesMatchedWhatRuns (0.23s)
  ./cmd/mesh-controller --- PASS: TestAWalkWhoseEveryBuildCameOutTheSameIsDone (0.21s)
  ./cmd/mesh-controller --- PASS: TestReplay614ANewSDKPlansTheToolchainAndThenItsBundles (0.11s)
  ./cmd/mesh-controller --- PASS: TestOneAcceptForAProviderIsPlacedForEveryConsumer (0.62s)
  ./cmd/mesh-controller --- PASS: TestReplay164 (0.33s)
  ./cmd/mesh-controller --- PASS: TestAnApprovedLayerOpensTheWalkThatSendsIt (0.25s)
  ./cmd/mesh-controller --- PASS: TestASettingsWalkSendsOneMachineAtATimeEachJudged (0.24s)
  ./cmd/mesh-controller --- PASS: TestAFailedSettingsWalkStopsAndHoldsNothingBack (0.20s)
  ./cmd/mesh-controller --- PASS: TestASettingsWalkSendsTheLayerAloneEveryBuildKept (0.20s)
  ./cmd/mesh-controller --- PASS: TestASettingsWalkStopsBeforeADataMoveAndPassesOverAMachineAway (0.57s)
  ./cmd/mesh-controller --- PASS: TestACrossingSendSupersedesASettingsGate (0.20s)
  ./cmd/mesh-controller --- PASS: TestASettingsWalkFailsOnARefusalThatCannotClear (0.19s)
  ./cmd/mesh-controller --- PASS: TestAProviderElsewhereServesItsOwnComposedName (0.29s)
  ./cmd/mesh-controller --- PASS: TestAReusedCheckBuildIsRegisteredByItsDigestAndGatedAsABuiltOne (0.29s)
  ./cmd/mesh-controller --- PASS: TestTheMergeGateJudgesEachManifestAgainstTheListOfTheTree (6.09s)
  ./cmd/mesh-controller --- PASS: TestRegistrationPublishesTheNewestTrunkListAndJudgesEveryModuleAgainstIt (0.20s)
  ./cmd/mesh-controller --- PASS: TestADeclarationIsTheSameAfterPlacementMoves (0.43s)
  ./cmd/mesh-controller --- PASS: TestAReleaseSendsTheRestAtOnceAfterTheFirstPasses (0.27s)
  ./cmd/mesh-controller --- PASS: TestARestMachineThatFailsIsPutBackAloneAndTheOthersAreJudgedOn (0.23s)
  ./cmd/mesh-controller --- PASS: TestAWalkTakesOverTheReadingsOfAGateJudgingTheSameBuildThere (0.20s)
  ./cmd/mesh-controller --- PASS: TestAFirstSendMadeAndNotKeptIsNotSentAgain (0.28s)
  ./cmd/mesh-controller --- PASS: TestAReleaseSendKeptAndMadeIsNotMadeAgain (0.20s)
  ./cmd/mesh-controller --- PASS: TestAFirstMachineThatFailsStillStopsTheWalk (0.20s)
  ./cmd/mesh-controller --- PASS: TestTheControlNodeIsSentLastInAStep (0.24s)
  ./cmd/mesh-controller --- PASS: TestARestMachineSilentPastItsBoundIsLeftAndSaid (0.23s)
  ./cmd/mesh-controller --- PASS: TestANoMoveTierWaitsForNoNewReport (0.28s)
  ./cmd/mesh-controller --- PASS: TestOneProviderDownAndThreeConsumersFailingAreOneCondition (0.21s)
  ./cmd/mesh-controller --- PASS: TestAConsumerFailingBesideAHealthyProviderIsItsOwn (0.20s)
  ./cmd/mesh-controller --- PASS: TestTheProvisionerClientsAccountIsIssuedForItsServiceAndNeverInvented (0.28s)
  ./cmd/mesh-controller --- PASS: TestAcceptOfAnOwnSecretTakesThePathOfItsModulesForm (0.27s)
  ./cmd/mesh-controller --- PASS: TestAcceptForAProviderTakesThePathOfTheProvidersModule (0.32s)
  ./cmd/mesh-controller --- PASS: TestAcceptForAMovedTrustedModuleAnnouncesBeforeTheVaultIsAsked (0.33s)
  ./cmd/mesh-controller --- PASS: TestAcceptForAMovedModuleRecordsAHandActAndNeverTheValue (0.27s)
  ./cmd/mesh-controller --- PASS: TestAcceptOfAnOutsideOfferTakesThePathOfTheProvidersModule (0.32s)
  ./cmd/mesh-controller --- PASS: TestAnAskAtTheDeskTakesThePathOfItsModulesForm (0.33s)
  ./cmd/mesh-controller --- PASS: TestAnIssuedValueTakesThePathOfItsProvidersModule (0.39s)
  ./cmd/mesh-controller --- PASS: TestARotationTakesThePathOfItsModulesForm (0.28s)
  ./cmd/mesh-controller --- PASS: TestADeclarationIsTheSameWhileTheWordsAreStillInTheLayers (2.62s)
  ./cmd/mesh-controller --- PASS: TestADeclarationIsTheSameAfterTheMoveOfPlacement (4.26s)
  ./cmd/mesh-controller --- PASS: TestTheSendSealsNoSecretOfAModuleHandedThere (0.33s)
  ./cmd/mesh-controller --- PASS: TestAModulesSecretsAreTheVaultsOnceItIsMarkedMoved (0.19s)
  ./cmd/mesh-controller --- PASS: TestEveryMachineIsToldTheSameAfterTheMoveOfConfig (41.08s)
  ./cmd/mesh-controller --- PASS: TestTheMoveOfConfigRefusesWhatWouldChangeAMachine (9.88s)
  ./cmd/mesh-controller --- PASS: TestTheSettingsVerbForwardsToConfigOnceTheValuesMoved (14.55s)
  ./cmd/mesh-controller --- PASS: TestTheSendCarriesTheVaultsBoxForACoreCredentialAndKeepsIt (0.51s)
  ./cmd/mesh-controller --- PASS: TestASilentVaultHoldsTheKeptBoxAndSaysSo (0.42s)
  ./cmd/mesh-controller --- PASS: TestACoreModuleFirstPlacedWhileTheVaultIsSilentIsSealedByTheController (0.33s)
  ./cmd/mesh-controller --- PASS: TestAnEngineBelowTheContractIsSentTheControllersSealAsBefore (0.32s)
  ./cmd/mesh-controller --- PASS: TestModuleIssueHandsACoveredAccountToTheVaultAndOnlyThat (0.31s)
  ./cmd/mesh-controller --- PASS: TestModuleIssueFailsWhenTheVaultDoesNotTakeACoveredAccount (0.25s)
  ./cmd/mesh-controller --- PASS: TestModuleIssueBeforeTheVaultIsInstalledKeepsTheValueAndHandsNothing (0.28s)
  ./cmd/mesh-controller --- PASS: TestARecordedModulesBundleOnlyMoveRollsOutInItsWalk (0.39s)
  ./cmd/mesh-controller --- PASS: TestARecordedModulesMoveThatRecreatesAContainerWaits (0.71s)
  ./cmd/mesh-controller --- PASS: TestARecordedModulesMoveThatTouchesDataOrAProviderWaits (0.76s)
  ./cmd/mesh-controller --- PASS: TestAPersonsRecordAndTheBusHoldEveryMove (0.48s)
  ./cmd/mesh-controller --- PASS: TestARecordedMoveThatCannotBeJudgedWaits (0.33s)
  ./cmd/mesh-controller --- PASS: TestReplay867 (4.78s)
  ./cmd/mesh-controller --- PASS: TestReplay867Recheck (4.41s)
  ./cmd/mesh-controller --- PASS: TestTheRecheckVerbAsksMeshDeliveryOnABusOfItsOwn (0.38s)
  ./cmd/mesh-controller --- PASS: TestAssigningTheClientIssuesItsAccount (0.25s)
  ./cmd/mesh-controller --- PASS: TestAnUnrelatedBatchWalksBesideAnOpenWalk (0.21s)
  ./cmd/mesh-controller --- PASS: TestARelatedBatchWaitsBehindTheOpenWalk (0.24s)
  ./cmd/mesh-controller --- PASS: TestAnOwnPathBatchNeverWalksBeside (0.22s)
  ./cmd/mesh-controller --- PASS: TestMergesHeardWhileAnotherHolderHasThePlansAreRecordedAndCarried (7.36s)
  ./cmd/mesh-controller --- PASS: TestABatchWindowClosesByTheExpiryOfItsKey (1.32s)
  ./cmd/mesh-controller --- PASS: TestEveryMoveAMergeAndTheCutMakeOfAPlanIsSaid (0.21s)
  ./cmd/mesh-controller --- PASS: TestARolloutAdvancesOnEventsAndAReplacedControllerResumesIt (3.93s)
  ./cmd/mesh-controller --- PASS: TestAWalkLetGoByTheDeliverVerbIsAskedWithNoOtherEvent (0.89s)
  ./cmd/mesh-controller --- PASS: TestTwoMergesWithinAMinuteLeaveEachOpenPullRequestOneQueuedCheck (0.60s)
  ./cmd/mesh-controller --- PASS: TestADeliveryGroupMovingAModuleMachinesRunPassesTheGate (6.87s)
  ./cmd/mesh-controller --- PASS: TestAModuleMovesOnTheOperatorsApproveOfTheMergeThatMovedIt (1.06s)
  ./cmd/mesh-controller --- PASS: TestAModuleBuiltFromANewRepositoryIsRegisteredOnlyOnTheOperatorsApproveOnTheBus (0.73s)
  ./cmd/mesh-controller --- PASS: TestAMergeWhosePlanCannotBeSavedIsHeldAndRecordedWhenHandedOverAgain (0.23s)
  ./cmd/mesh-controller --- PASS: TestOneReadOfAnAssignmentNamesItsCommitBuildAndRolloutAndOneReadOfTheRolloutListsItsAssignments (0.24s)
  ./cmd/mesh-controller --- PASS: TestASendOfWhatAMachineRunsAlreadyChangesNoLinkOfItsAssignment (0.19s)
  ./cmd/mesh-controller --- PASS: TestAnAssignmentWaitingForItsBuildIsOneKeyOfTheAssignmentsBucket (0.21s)
  ./cmd/mesh-controller --- PASS: TestNoTableOfTheControllersStoreHoldsBuildsRolloutsOrAssignments (0.23s)
  ./cmd/mesh-controller --- PASS: TestAComposedDeclarationCarriesModulesAndBuildsOnlyForANodeThatReadsThem (0.34s)
  ./cmd/mesh-controller --- PASS: TestAPlanPassesATierWhoseMachineNeverReportsAfterTheBoundAndSendsTheNextToTheOthers (3.45s)
  ./cmd/mesh-controller --- PASS: TestAMergeOnTheApproveIntoANewRepositoryAsksTheFirstBuildAndItsOutcomeRegistersTheModule (3.03s)
  ./cmd/mesh-controller --- PASS: TestTheApprovedFirstBuildPassesTheGuardOfAVerbAndIsQueued (0.59s)
  ./cmd/mesh-controller --- PASS: TestAPlanGoesOnWithoutAMachineAwayWhenItsTierIsSent (0.98s)
  ./internal/inventory --- PASS: TestTheLastSendSaysWhatTheMachineAnswered (0.09s)
  ./internal/inventory --- PASS: TestAReportIsTheLastSendsAnswerOnlyWhenItIsAboutThatSend (0.09s)
  ./internal/inventory --- PASS: TestAnIssuedValueIsSealedToEveryHolderOnceAndNotAgain (0.11s)
  ./internal/inventory --- PASS: TestAnIssuedValueIsSealedAgainAfterAKeyChangeOrAnAcceptance (0.09s)
  ./internal/inventory --- PASS: TestAConditionsLooksAreKeptBesideTheBucket (0.07s)
  ./internal/inventory --- PASS: TestAPlanIdHoldingAQuoteIsReadAsAPlainId (0.07s)
  ./internal/inventory --- PASS: TestAWalksStartIsKeptAndARefusedSaveLeavesItUnsaid (0.08s)
  ./internal/inventory --- PASS: TestAWalksRestIsReadFromEachMachinesOwnSend (0.08s)
  ./internal/inventory --- PASS: TestAStoredBuildWithASilentMergeableFileIsStillReadAndComposed (0.07s)
  ./internal/inventory --- PASS: TestACredentialIssuedOutsideIsNeverMade (0.10s)
  ./internal/inventory --- PASS: TestOneAcceptForAProviderIsSealedToEveryConsumer (0.10s)
  ./internal/inventory --- PASS: TestASharedOwnSecretIssuedOutsideIsNeverMade (0.09s)
  ./internal/inventory --- PASS: TestAModuleInTheConfigFormIsMirroredWithItsWholeDeclaration (0.08s)
  ./internal/inventory --- PASS: TestAReportOfABusyContainerIsKeptAndReadBack (0.10s)
  ./internal/inventory --- PASS: TestANewerBuildsListReplacesTheKeptOneAndAnOlderOneHeardLaterDoesNot (0.07s)
  ./internal/inventory --- PASS: TestPlacementMovesOutOfTheSettingsLayers (0.43s)
  ./internal/inventory --- PASS: TestASettingRoutesPlacementBesideTheLayer (0.10s)
  ./internal/inventory --- PASS: TestTheProvisionerClientsMachineHasAnAccountOfItsOwn (0.48s)
  ./internal/inventory --- PASS: TestTheFourWordsAreKeptBesideTheLayer (0.10s)
  ./internal/inventory --- PASS: TestALayerStillHoldingTheWordsReadsThemAsPlacement (0.09s)
  ./internal/inventory --- PASS: TestTheMoveOfPlacementMovesWhatTheLayersStillHold (0.11s)
  ./internal/inventory --- PASS: TestTheMoveReadsEveryRowSealedToAMachineAsItIs (0.09s)
  ./internal/inventory --- PASS: TestASendKeepsThePlansItHandedAndTheMirrorCarriesThem (0.08s)
  ./internal/inventory --- PASS: TestTheLayersAreReadUntilTheMoveOfConfigHasRun (0.10s)
  ./internal/inventory --- PASS: TestAModuleReadsMeshConfigOnlyWhereItsValuesAre (0.11s)
  ./internal/inventory --- PASS: TestTheEndOfTheMoveRefusesALayerChangedSinceItWasRead (0.11s)
  ./internal/inventory --- PASS: TestACoreCredentialsVaultBoxIsKeptPerMachineAndReplaced (0.10s)
  ./internal/inventory --- PASS: TestWhatRunsIsTheRegisteredBuildNotANewerOnePutBack (0.09s)
  ./internal/inventory --- PASS: TestBuildsOnTheBusAreReadBackByEveryReader (0.08s)
  ./internal/inventory --- PASS: TestARequestIsTheBuildInStateAskedAndItsOutcomeTakesItsPlace (0.07s)
  ./internal/inventory --- PASS: TestAnAssignmentIsAKeyOfTheBucketAndAnUnassignmentEndsIt (0.12s)
  ./internal/inventory --- PASS: TestThePlansAreKeptInTheAssignmentsValuesAndNothingElseOfThemMoves (0.10s)
  ./internal/inventory --- PASS: TestAPendingAssignmentIsAKeyOfTheAssignmentsBucket (0.08s)
  ./internal/inventory --- PASS: TestARecordedPendingIsSkippedByAssignedAndTheJoins (0.08s)
  ./internal/inventory --- PASS: TestTwoClaimsOfOnePendingMakeOneAndTheOtherSeesFalse (0.08s)
  ./internal/inventory --- PASS: TestAssignOverAPendingKeepsItsRecordAsApplied (0.08s)
  ./internal/inventory --- PASS: TestAPendingIsMarkedOnceAndGoesWithItsMachine (0.09s)
  ./internal/inventory --- PASS: TestAReplacedWaitNeverLeavesTheOperatorWithoutItsCondition (0.09s)
  ./internal/inventory --- PASS: TestSentBuildsAnswersFromTheAssignmentsKeysOfTheNode (0.09s)
  ./internal/inventory --- PASS: TestASendReplacesTheWholeMapOfTheNodeAndAHandSendMakesItUnknown (0.08s)
  ./internal/inventory --- PASS: TestAFailedWriteOfTheLinksFailsTheRecordOfTheSend (0.09s)
  ./internal/inventory --- PASS: TestMigration0105RefusesAStoreWhoseRowsWereNotMovedAndDropsTheTablesOfAMovedOne (0.49s)
  ./internal/inventory --- PASS: TestMigration0105PassesAStoreThatNeverHeldARow (0.11s)
  ./internal/inventory --- PASS: TestTheColumnOfASentMachineIsCopiedOntoItsKeysAndEmptied (0.07s)
  ./internal/inventory --- PASS: TestASendEmptiesTheColumnSoALaterCopyLeavesAClearedKeyBare (0.09s)
  ./internal/inventory --- PASS: TestWhetherAMachineReadsModulesIsItsLatestWord (0.07s)
  ./internal/recordmirror --- PASS: TestNatsAnAssignmentAndARegistrationEachChangeOneKeyAndRaiseOneEvent (1.91s)
  ./internal/recordmirror --- PASS: TestNatsTheListOfPredefinedKeysKeptChangesTheMirrorsOneKey (1.45s)
**Merge check** at `c07f6040` Judged: head `c07f604047be` merged into trunk `70cb217601f9`; read beside it: mesh-catalog `c0880c4dc271`, mesh-controller-main `70cb217601f9`, mesh-host `2474bf28330f`, mesh-tools `7412c5b6c9c5` - `mesh/merge-gate`: **PASS** — every machine composes with the change as it did without (4 of 4 compose) (modules: build-agent, mesh-controller, route-proxy) - `mesh/repo-check`: **PASS** — its merge-check.sh passed **Delivery plan** — builds build-agent, mesh-controller, route-proxy → ace, g14, novox, shanks; no bus step - tier 0: mesh-controller, route-proxy - tier 1: build-agent - ace: receives route-proxy, build-agent - g14: receives build-agent - novox: receives mesh-controller, route-proxy, build-agent - shanks: receives build-agent - route-proxy provides route: its consumers are sent again after it - route-proxy keeps data (ADR 0233): what it holds is backed up before it moves - build-agent keeps data (ADR 0233): what it holds is backed up before it moves - grants step: if this changes what the bus's user list says (a new tool, subject or user), novox is sent that list alone, every build there kept, before route-proxy, build-agent is judged on its first machine - read by no module's build: cmd/mesh-controller/away_integration_test.go, cmd/mesh-controller/rollout_events_test.go, cmd/mesh-controller/silent_mid_tier_integration_test.go, internal/broker/delivery_gate_grant_test.go, internal/broker/delivery_parts_grant_test.go, internal/broker/modstreams_test.go Run by the build seat on shanks as `build-1792452671800714772` (`builds --log build-1792452671800714772`). ``` MESH_STORE_EXAMPLE_PORT is "${seat:mesh-store:5432}", a placeholder nothing filled in — ignored; the port in MESH_STORE_EXAMPLE stands. The control plane composing this declaration is older than the manifest naming it: rebuild and push it PASS ok github.com/novox/mesh-controller/internal/store 3.692s testbus_test.go:22: judged against /var/lib/build-agent/workspace/check/mesh-catalog as cloned beside this check PASS ok github.com/novox/mesh-controller/internal/testbus 1.291s PASS ok github.com/novox/mesh-controller/internal/token 1.046s ok github.com/novox/mesh-controller/cmd/mesh-controller 204s (shard 1 of 8: 152 tests) ok github.com/novox/mesh-controller/cmd/mesh-controller 140s (shard 2 of 8: 152 tests) ok github.com/novox/mesh-controller/cmd/mesh-controller 146s (shard 3 of 8: 152 tests) ok github.com/novox/mesh-controller/cmd/mesh-controller 130s (shard 4 of 8: 152 tests) ok github.com/novox/mesh-controller/cmd/mesh-controller 109s (shard 5 of 8: 152 tests) ok github.com/novox/mesh-controller/cmd/mesh-controller 65s (shard 6 of 8: 152 tests) ok github.com/novox/mesh-controller/cmd/mesh-controller 52s (shard 7 of 8: 151 tests) ok github.com/novox/mesh-controller/cmd/mesh-controller 102s (shard 8 of 8: 151 tests) ok github.com/novox/mesh-controller/internal/inventory 25s (shard 1 of 4: 92 tests) ok github.com/novox/mesh-controller/internal/inventory 29s (shard 2 of 4: 92 tests) ok github.com/novox/mesh-controller/internal/inventory 25s (shard 3 of 4: 91 tests) ok github.com/novox/mesh-controller/internal/inventory 26s (shard 4 of 4: 91 tests) ok github.com/novox/mesh-controller/internal/builder 26s (shard 1 of 4: 57 tests) ok github.com/novox/mesh-controller/internal/builder 36s (shard 2 of 4: 56 tests) ok github.com/novox/mesh-controller/internal/builder 25s (shard 3 of 4: 56 tests) ok github.com/novox/mesh-controller/internal/builder 24s (shard 4 of 4: 56 tests) ok github.com/novox/mesh-controller/internal/link 31s (shard 1 of 4: 53 tests) ok github.com/novox/mesh-controller/internal/link 23s (shard 2 of 4: 53 tests) ok github.com/novox/mesh-controller/internal/link 22s (shard 3 of 4: 53 tests) ok github.com/novox/mesh-controller/internal/link 18s (shard 4 of 4: 52 tests) integration level (the whole suite, tag integration): 3597 tests (6 skipped outside the shards), 208 s nested module modules/build-agent: ok build-agent 1.016s nested module modules/route-proxy: ok route-proxy/cmd/route-provider 1.015s nested modules: 3 s store tests, each run against the store: ./cmd/mesh-controller --- PASS: TestAStopWithoutAMergeWalksTheOthersAgain (0.28s) ./cmd/mesh-controller --- PASS: TestAStopWithoutAMergeEndsTheMergesThatContainIt (0.28s) ./cmd/mesh-controller --- PASS: TestAStopWalksTheOthersAgainInTheOpenBatch (0.27s) ./cmd/mesh-controller --- PASS: TestAStopNamesWhatStaysOnTheMachinesAndWhatStillCarriesIt (0.25s) ./cmd/mesh-controller --- PASS: TestAStopWithoutAMergeLeavesItOutOfABatch (0.23s) ./cmd/mesh-controller --- PASS: TestSavingPlansAndMovingMergesIsOneAct (0.21s) ./cmd/mesh-controller --- PASS: TestAPlanFollowedFromTheStoreAnswersWhenItMoves (2.03s) ./cmd/mesh-controller --- PASS: TestIssue969TheGateRaisesEachMachineAsItsEngineStatedItself (0.91s) ./cmd/mesh-controller --- PASS: TestNodeShowAndStatusReadTheLastSendFromTheStore (0.35s) ./cmd/mesh-controller --- PASS: TestTheConditionsVerbReadsTheLooksTheBucketNoLongerHolds (0.16s) ./cmd/mesh-controller --- PASS: TestAWalkLetGoAndStoppedByVerbsIsSaidStartedAndEnded (0.29s) ./cmd/mesh-controller --- PASS: TestAWalkStoppedOrClosedByAPersonIsSaidEndedStopped (0.30s) ./cmd/mesh-controller --- PASS: TestAWalkRetriedByAPersonIsSaidStartedAgain (0.23s) ./cmd/mesh-controller --- PASS: TestABacklogReleasedByAPersonIsSaidStarted (0.25s) ./cmd/mesh-controller --- PASS: TestAWalkEndedByCancelOrClearIsSaidEnded (0.26s) ./cmd/mesh-controller --- PASS: TestAWalkRestartedByARebuildIsSaidStarted (0.22s) ./cmd/mesh-controller --- PASS: TestAWalkStoppedByHandAndRetriedEndsFailedWhenItFailsAgain (0.25s) ./cmd/mesh-controller --- PASS: TestReplay237 (0.24s) ./cmd/mesh-controller --- PASS: TestAnUnassignThatLeavesItsNodeUnresolvedSaysSoOnceInItsAnswer (0.28s) ./cmd/mesh-controller --- PASS: TestAnUnassignThatLeavesItsNodeResolvedSaysNothingOfIt (0.26s) ./cmd/mesh-controller --- PASS: TestAnAssignThatLeavesItsNodeUnresolvedSaysOnlyThePlansRefusal (0.26s) ./cmd/mesh-controller --- PASS: TestADirectoryOwnersKeyIsRefusedThroughAVerb (0.29s) ./cmd/mesh-controller --- PASS: TestTheSendMakesNoValueForAnOutsideSecretNobodyGave (0.37s) ./cmd/mesh-controller --- PASS: TestAQuestionComposesWithoutAnOutsideSecretNobodyGave (0.36s) ./cmd/mesh-controller --- PASS: TestReplay201 (0.22s) ./cmd/mesh-controller --- PASS: TestARollbackWhoseSendWasRefusedIsCompletedByTheNextSend (0.20s) ./cmd/mesh-controller --- PASS: TestAGateJudgesTheOtherMovesBesideAKeptCore (0.21s) ./cmd/mesh-controller --- PASS: TestReplay401 (0.40s) ./cmd/mesh-controller --- PASS: TestReplay201ThePlansSend (0.28s) ./cmd/mesh-controller --- PASS: TestPlanAndNodeListAnOptionalRequirementLeftUnbound (0.36s) ./cmd/mesh-controller --- PASS: TestReplay340 (0.32s) ./cmd/mesh-controller --- PASS: TestOnlyATrustedFilesNamedKeyIsRefusedThroughAVerb (0.23s) ./cmd/mesh-controller --- PASS: TestReplay349 (0.26s) ./cmd/mesh-controller --- PASS: TestReplay348AFaultFromBeforeTheSendFailsNoGate (0.22s) ./cmd/mesh-controller --- PASS: TestReplay239AModuleNameIsNotTakenOverByAnotherRepository (0.17s) ./cmd/mesh-controller --- PASS: TestAWalkThatMovedNothingSaysWhichModulesMatchedWhatRuns (0.23s) ./cmd/mesh-controller --- PASS: TestAWalkWhoseEveryBuildCameOutTheSameIsDone (0.21s) ./cmd/mesh-controller --- PASS: TestReplay614ANewSDKPlansTheToolchainAndThenItsBundles (0.11s) ./cmd/mesh-controller --- PASS: TestOneAcceptForAProviderIsPlacedForEveryConsumer (0.62s) ./cmd/mesh-controller --- PASS: TestReplay164 (0.33s) ./cmd/mesh-controller --- PASS: TestAnApprovedLayerOpensTheWalkThatSendsIt (0.25s) ./cmd/mesh-controller --- PASS: TestASettingsWalkSendsOneMachineAtATimeEachJudged (0.24s) ./cmd/mesh-controller --- PASS: TestAFailedSettingsWalkStopsAndHoldsNothingBack (0.20s) ./cmd/mesh-controller --- PASS: TestASettingsWalkSendsTheLayerAloneEveryBuildKept (0.20s) ./cmd/mesh-controller --- PASS: TestASettingsWalkStopsBeforeADataMoveAndPassesOverAMachineAway (0.57s) ./cmd/mesh-controller --- PASS: TestACrossingSendSupersedesASettingsGate (0.20s) ./cmd/mesh-controller --- PASS: TestASettingsWalkFailsOnARefusalThatCannotClear (0.19s) ./cmd/mesh-controller --- PASS: TestAProviderElsewhereServesItsOwnComposedName (0.29s) ./cmd/mesh-controller --- PASS: TestAReusedCheckBuildIsRegisteredByItsDigestAndGatedAsABuiltOne (0.29s) ./cmd/mesh-controller --- PASS: TestTheMergeGateJudgesEachManifestAgainstTheListOfTheTree (6.09s) ./cmd/mesh-controller --- PASS: TestRegistrationPublishesTheNewestTrunkListAndJudgesEveryModuleAgainstIt (0.20s) ./cmd/mesh-controller --- PASS: TestADeclarationIsTheSameAfterPlacementMoves (0.43s) ./cmd/mesh-controller --- PASS: TestAReleaseSendsTheRestAtOnceAfterTheFirstPasses (0.27s) ./cmd/mesh-controller --- PASS: TestARestMachineThatFailsIsPutBackAloneAndTheOthersAreJudgedOn (0.23s) ./cmd/mesh-controller --- PASS: TestAWalkTakesOverTheReadingsOfAGateJudgingTheSameBuildThere (0.20s) ./cmd/mesh-controller --- PASS: TestAFirstSendMadeAndNotKeptIsNotSentAgain (0.28s) ./cmd/mesh-controller --- PASS: TestAReleaseSendKeptAndMadeIsNotMadeAgain (0.20s) ./cmd/mesh-controller --- PASS: TestAFirstMachineThatFailsStillStopsTheWalk (0.20s) ./cmd/mesh-controller --- PASS: TestTheControlNodeIsSentLastInAStep (0.24s) ./cmd/mesh-controller --- PASS: TestARestMachineSilentPastItsBoundIsLeftAndSaid (0.23s) ./cmd/mesh-controller --- PASS: TestANoMoveTierWaitsForNoNewReport (0.28s) ./cmd/mesh-controller --- PASS: TestOneProviderDownAndThreeConsumersFailingAreOneCondition (0.21s) ./cmd/mesh-controller --- PASS: TestAConsumerFailingBesideAHealthyProviderIsItsOwn (0.20s) ./cmd/mesh-controller --- PASS: TestTheProvisionerClientsAccountIsIssuedForItsServiceAndNeverInvented (0.28s) ./cmd/mesh-controller --- PASS: TestAcceptOfAnOwnSecretTakesThePathOfItsModulesForm (0.27s) ./cmd/mesh-controller --- PASS: TestAcceptForAProviderTakesThePathOfTheProvidersModule (0.32s) ./cmd/mesh-controller --- PASS: TestAcceptForAMovedTrustedModuleAnnouncesBeforeTheVaultIsAsked (0.33s) ./cmd/mesh-controller --- PASS: TestAcceptForAMovedModuleRecordsAHandActAndNeverTheValue (0.27s) ./cmd/mesh-controller --- PASS: TestAcceptOfAnOutsideOfferTakesThePathOfTheProvidersModule (0.32s) ./cmd/mesh-controller --- PASS: TestAnAskAtTheDeskTakesThePathOfItsModulesForm (0.33s) ./cmd/mesh-controller --- PASS: TestAnIssuedValueTakesThePathOfItsProvidersModule (0.39s) ./cmd/mesh-controller --- PASS: TestARotationTakesThePathOfItsModulesForm (0.28s) ./cmd/mesh-controller --- PASS: TestADeclarationIsTheSameWhileTheWordsAreStillInTheLayers (2.62s) ./cmd/mesh-controller --- PASS: TestADeclarationIsTheSameAfterTheMoveOfPlacement (4.26s) ./cmd/mesh-controller --- PASS: TestTheSendSealsNoSecretOfAModuleHandedThere (0.33s) ./cmd/mesh-controller --- PASS: TestAModulesSecretsAreTheVaultsOnceItIsMarkedMoved (0.19s) ./cmd/mesh-controller --- PASS: TestEveryMachineIsToldTheSameAfterTheMoveOfConfig (41.08s) ./cmd/mesh-controller --- PASS: TestTheMoveOfConfigRefusesWhatWouldChangeAMachine (9.88s) ./cmd/mesh-controller --- PASS: TestTheSettingsVerbForwardsToConfigOnceTheValuesMoved (14.55s) ./cmd/mesh-controller --- PASS: TestTheSendCarriesTheVaultsBoxForACoreCredentialAndKeepsIt (0.51s) ./cmd/mesh-controller --- PASS: TestASilentVaultHoldsTheKeptBoxAndSaysSo (0.42s) ./cmd/mesh-controller --- PASS: TestACoreModuleFirstPlacedWhileTheVaultIsSilentIsSealedByTheController (0.33s) ./cmd/mesh-controller --- PASS: TestAnEngineBelowTheContractIsSentTheControllersSealAsBefore (0.32s) ./cmd/mesh-controller --- PASS: TestModuleIssueHandsACoveredAccountToTheVaultAndOnlyThat (0.31s) ./cmd/mesh-controller --- PASS: TestModuleIssueFailsWhenTheVaultDoesNotTakeACoveredAccount (0.25s) ./cmd/mesh-controller --- PASS: TestModuleIssueBeforeTheVaultIsInstalledKeepsTheValueAndHandsNothing (0.28s) ./cmd/mesh-controller --- PASS: TestARecordedModulesBundleOnlyMoveRollsOutInItsWalk (0.39s) ./cmd/mesh-controller --- PASS: TestARecordedModulesMoveThatRecreatesAContainerWaits (0.71s) ./cmd/mesh-controller --- PASS: TestARecordedModulesMoveThatTouchesDataOrAProviderWaits (0.76s) ./cmd/mesh-controller --- PASS: TestAPersonsRecordAndTheBusHoldEveryMove (0.48s) ./cmd/mesh-controller --- PASS: TestARecordedMoveThatCannotBeJudgedWaits (0.33s) ./cmd/mesh-controller --- PASS: TestReplay867 (4.78s) ./cmd/mesh-controller --- PASS: TestReplay867Recheck (4.41s) ./cmd/mesh-controller --- PASS: TestTheRecheckVerbAsksMeshDeliveryOnABusOfItsOwn (0.38s) ./cmd/mesh-controller --- PASS: TestAssigningTheClientIssuesItsAccount (0.25s) ./cmd/mesh-controller --- PASS: TestAnUnrelatedBatchWalksBesideAnOpenWalk (0.21s) ./cmd/mesh-controller --- PASS: TestARelatedBatchWaitsBehindTheOpenWalk (0.24s) ./cmd/mesh-controller --- PASS: TestAnOwnPathBatchNeverWalksBeside (0.22s) ./cmd/mesh-controller --- PASS: TestMergesHeardWhileAnotherHolderHasThePlansAreRecordedAndCarried (7.36s) ./cmd/mesh-controller --- PASS: TestABatchWindowClosesByTheExpiryOfItsKey (1.32s) ./cmd/mesh-controller --- PASS: TestEveryMoveAMergeAndTheCutMakeOfAPlanIsSaid (0.21s) ./cmd/mesh-controller --- PASS: TestARolloutAdvancesOnEventsAndAReplacedControllerResumesIt (3.93s) ./cmd/mesh-controller --- PASS: TestAWalkLetGoByTheDeliverVerbIsAskedWithNoOtherEvent (0.89s) ./cmd/mesh-controller --- PASS: TestTwoMergesWithinAMinuteLeaveEachOpenPullRequestOneQueuedCheck (0.60s) ./cmd/mesh-controller --- PASS: TestADeliveryGroupMovingAModuleMachinesRunPassesTheGate (6.87s) ./cmd/mesh-controller --- PASS: TestAModuleMovesOnTheOperatorsApproveOfTheMergeThatMovedIt (1.06s) ./cmd/mesh-controller --- PASS: TestAModuleBuiltFromANewRepositoryIsRegisteredOnlyOnTheOperatorsApproveOnTheBus (0.73s) ./cmd/mesh-controller --- PASS: TestAMergeWhosePlanCannotBeSavedIsHeldAndRecordedWhenHandedOverAgain (0.23s) ./cmd/mesh-controller --- PASS: TestOneReadOfAnAssignmentNamesItsCommitBuildAndRolloutAndOneReadOfTheRolloutListsItsAssignments (0.24s) ./cmd/mesh-controller --- PASS: TestASendOfWhatAMachineRunsAlreadyChangesNoLinkOfItsAssignment (0.19s) ./cmd/mesh-controller --- PASS: TestAnAssignmentWaitingForItsBuildIsOneKeyOfTheAssignmentsBucket (0.21s) ./cmd/mesh-controller --- PASS: TestNoTableOfTheControllersStoreHoldsBuildsRolloutsOrAssignments (0.23s) ./cmd/mesh-controller --- PASS: TestAComposedDeclarationCarriesModulesAndBuildsOnlyForANodeThatReadsThem (0.34s) ./cmd/mesh-controller --- PASS: TestAPlanPassesATierWhoseMachineNeverReportsAfterTheBoundAndSendsTheNextToTheOthers (3.45s) ./cmd/mesh-controller --- PASS: TestAMergeOnTheApproveIntoANewRepositoryAsksTheFirstBuildAndItsOutcomeRegistersTheModule (3.03s) ./cmd/mesh-controller --- PASS: TestTheApprovedFirstBuildPassesTheGuardOfAVerbAndIsQueued (0.59s) ./cmd/mesh-controller --- PASS: TestAPlanGoesOnWithoutAMachineAwayWhenItsTierIsSent (0.98s) ./internal/inventory --- PASS: TestTheLastSendSaysWhatTheMachineAnswered (0.09s) ./internal/inventory --- PASS: TestAReportIsTheLastSendsAnswerOnlyWhenItIsAboutThatSend (0.09s) ./internal/inventory --- PASS: TestAnIssuedValueIsSealedToEveryHolderOnceAndNotAgain (0.11s) ./internal/inventory --- PASS: TestAnIssuedValueIsSealedAgainAfterAKeyChangeOrAnAcceptance (0.09s) ./internal/inventory --- PASS: TestAConditionsLooksAreKeptBesideTheBucket (0.07s) ./internal/inventory --- PASS: TestAPlanIdHoldingAQuoteIsReadAsAPlainId (0.07s) ./internal/inventory --- PASS: TestAWalksStartIsKeptAndARefusedSaveLeavesItUnsaid (0.08s) ./internal/inventory --- PASS: TestAWalksRestIsReadFromEachMachinesOwnSend (0.08s) ./internal/inventory --- PASS: TestAStoredBuildWithASilentMergeableFileIsStillReadAndComposed (0.07s) ./internal/inventory --- PASS: TestACredentialIssuedOutsideIsNeverMade (0.10s) ./internal/inventory --- PASS: TestOneAcceptForAProviderIsSealedToEveryConsumer (0.10s) ./internal/inventory --- PASS: TestASharedOwnSecretIssuedOutsideIsNeverMade (0.09s) ./internal/inventory --- PASS: TestAModuleInTheConfigFormIsMirroredWithItsWholeDeclaration (0.08s) ./internal/inventory --- PASS: TestAReportOfABusyContainerIsKeptAndReadBack (0.10s) ./internal/inventory --- PASS: TestANewerBuildsListReplacesTheKeptOneAndAnOlderOneHeardLaterDoesNot (0.07s) ./internal/inventory --- PASS: TestPlacementMovesOutOfTheSettingsLayers (0.43s) ./internal/inventory --- PASS: TestASettingRoutesPlacementBesideTheLayer (0.10s) ./internal/inventory --- PASS: TestTheProvisionerClientsMachineHasAnAccountOfItsOwn (0.48s) ./internal/inventory --- PASS: TestTheFourWordsAreKeptBesideTheLayer (0.10s) ./internal/inventory --- PASS: TestALayerStillHoldingTheWordsReadsThemAsPlacement (0.09s) ./internal/inventory --- PASS: TestTheMoveOfPlacementMovesWhatTheLayersStillHold (0.11s) ./internal/inventory --- PASS: TestTheMoveReadsEveryRowSealedToAMachineAsItIs (0.09s) ./internal/inventory --- PASS: TestASendKeepsThePlansItHandedAndTheMirrorCarriesThem (0.08s) ./internal/inventory --- PASS: TestTheLayersAreReadUntilTheMoveOfConfigHasRun (0.10s) ./internal/inventory --- PASS: TestAModuleReadsMeshConfigOnlyWhereItsValuesAre (0.11s) ./internal/inventory --- PASS: TestTheEndOfTheMoveRefusesALayerChangedSinceItWasRead (0.11s) ./internal/inventory --- PASS: TestACoreCredentialsVaultBoxIsKeptPerMachineAndReplaced (0.10s) ./internal/inventory --- PASS: TestWhatRunsIsTheRegisteredBuildNotANewerOnePutBack (0.09s) ./internal/inventory --- PASS: TestBuildsOnTheBusAreReadBackByEveryReader (0.08s) ./internal/inventory --- PASS: TestARequestIsTheBuildInStateAskedAndItsOutcomeTakesItsPlace (0.07s) ./internal/inventory --- PASS: TestAnAssignmentIsAKeyOfTheBucketAndAnUnassignmentEndsIt (0.12s) ./internal/inventory --- PASS: TestThePlansAreKeptInTheAssignmentsValuesAndNothingElseOfThemMoves (0.10s) ./internal/inventory --- PASS: TestAPendingAssignmentIsAKeyOfTheAssignmentsBucket (0.08s) ./internal/inventory --- PASS: TestARecordedPendingIsSkippedByAssignedAndTheJoins (0.08s) ./internal/inventory --- PASS: TestTwoClaimsOfOnePendingMakeOneAndTheOtherSeesFalse (0.08s) ./internal/inventory --- PASS: TestAssignOverAPendingKeepsItsRecordAsApplied (0.08s) ./internal/inventory --- PASS: TestAPendingIsMarkedOnceAndGoesWithItsMachine (0.09s) ./internal/inventory --- PASS: TestAReplacedWaitNeverLeavesTheOperatorWithoutItsCondition (0.09s) ./internal/inventory --- PASS: TestSentBuildsAnswersFromTheAssignmentsKeysOfTheNode (0.09s) ./internal/inventory --- PASS: TestASendReplacesTheWholeMapOfTheNodeAndAHandSendMakesItUnknown (0.08s) ./internal/inventory --- PASS: TestAFailedWriteOfTheLinksFailsTheRecordOfTheSend (0.09s) ./internal/inventory --- PASS: TestMigration0105RefusesAStoreWhoseRowsWereNotMovedAndDropsTheTablesOfAMovedOne (0.49s) ./internal/inventory --- PASS: TestMigration0105PassesAStoreThatNeverHeldARow (0.11s) ./internal/inventory --- PASS: TestTheColumnOfASentMachineIsCopiedOntoItsKeysAndEmptied (0.07s) ./internal/inventory --- PASS: TestASendEmptiesTheColumnSoALaterCopyLeavesAClearedKeyBare (0.09s) ./internal/inventory --- PASS: TestWhetherAMachineReadsModulesIsItsLatestWord (0.07s) ./internal/recordmirror --- PASS: TestNatsAnAssignmentAndARegistrationEachChangeOneKeyAndRaiseOneEvent (1.91s) ./internal/recordmirror --- PASS: TestNatsTheListOfPredefinedKeysKeptChangesTheMirrorsOneKey (1.45s) ```
mesh-tools merged commit 6c2a8d6210 into main 2026-10-19 23:39:24 +00:00
mesh-tools deleted branch fix/1329-runner-carries-only-what-it-serves 2026-10-19 23:39:24 +00:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: novox/mesh-controller#404