Repository navigation
Milestone 6, slice 1: drills without an apply - #226
Merged
Merged
Conversation
argo terminate skips the exit handler that revokes the token, so a terminated workflow left the token alive until it expired (#174). The dispatch step's stop handler now closes the session, which cancels the job on the worker, and revokes the token itself. The exit handler's second revoke is 200 at the tool service.
The collect command writes a job's checks' verdicts right before the job is submitted. An item older than an hour, or more than five minutes ahead of the step's clock, is one left behind or written by hand, and the step fails the job before it runs, the way it does for a missing item (T23). The comparison's reader returns the whole item for it.
) The server takes a cancel only between prompt batches, and a 2048-token batch late in a job outlasts the job program's 90 s erase wait, so a timed-out job left its prompt in the slot. ADR 0052 picks the smaller batch over longer waits. S.8 reads the value from the unit's command line, and fails on a unit without it.
The targets send no logs, so a session to one from the mesh left no record off the target. The router's nftables file gets a second table whose forward chain logs each new SSH connection from the mesh to the target range, with the operator device's mesh address as the source. The log agent's system source sends the kernel line to the workspace. R.8 reads the rule, and the mesh router runbook loads it on a running router.
U.7 failed since upstream released 1.104.4. The runbook gets the step that moves a running router's package.
…nd the states that move The worklog carries the milestone's gate and the gate for every high threat, each row with its drill or its accepted risk. T02 and T39 get accepted-risk entries, and T23's cloud API and network comparison is accepted until exercise 2, whose change surface is a network rule. The worklog index gains the missing 0006 row.
A made-up GitHub token with a valid checksum, in a signed commit on a scratch branch, was refused at the push with GH013 and the token type named. Push protection leaves the accepted risks, and T13 is verified.
The pipeline's runner started the step a second after the fixture was written, and an item 301 s ahead read as 300 and passed. Each boundary case now sits ten seconds past its edge.
One helper builds the item's JSON and sends it to kubectl patch as a file on standard input, in place of a quoted inline patch.
… request From the review: tool_service can raise HTTPException or a decode error, neither an OSError, and either would have skipped the exit. The handler now catches every exception, revokes before it closes the session so the revoke is not behind the close's wait, and a collected time the pattern admits and the calendar does not fails the job instead of raising. The boundary tests sit a minute past each edge.
…ects first From the review: T04 said four different things across five pages and now says Built with R.8 everywhere, the drill pending; T48 names the step's own revoke; T02 and T39 point at their accepted risks; the milestone 2 roadmap row drops the push-protection gap; ADR 0030 and troubleshooting 12 get their one-line pointers. The forged-item drill collects the job first, so its evidence documents exist, and the footprint step names no path outside the repository.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Milestone 6, slice 1: the drills without an apply, code and expectations. The live run and its records follow in the pin pull request, as #224 did for #222.
Change
argo terminateskips the exit handler, so the stop handler closes the session and revokes the token itself; the exit handler's second revoke is 200 at the tool service.S.8reading the unit's command line.R.8, and a runbook step that loads it on the running router.Validation
python3.15 -I -m unittest discover -s testsinplatform/dispatch, workstationorigin/main'sdispatch.py85072f2and99129d2; 8 plan-only items belowruff checkandruff format --check, 0.17.2S.8andR.8fail sides--batch-sizeand with2048, and on an nft table without the rule, workstation2048,0-S warning validation/platform-checks.sh, 0.11.0fmt -check -recursive,validateininfra/platformrender.page_problemson each changed page the pipeline holds to the rules; the link checkerGH013,GitHub Personal Access Token, no branch on the remoteNot verified here: the unit, the nft rule, the pin, and the revoke on the live system; the stale and forged items; the workspace row for a session. Each is a step of the containment drills runbook and runs after the merge, from the pin pull request. A stop before registration (no DELETE) is handled in code and has no deterministic test. The pipeline caught a boundary flake in the age tests, now a minute past each edge.
Risks and follow-up
stoppedline, the close wait shortens. The footprint tools stay outside the repository until a later slice.compare.COLLECTEDadmits calendar-invalid times (now a failed job, not a traceback); the comparison step gets no age check on purpose, since it reads the item up to 22 minutes after the dispatch step accepted it; ADR 0030's cancel sentence carries a pointer to the worklog instead of a rewrite.