Repository navigation
Fix remaining runtime-state visibility and failure reporting - #5263
Merged
Merged
Conversation
This was referenced Oct 11, 2026
Trecek
added a commit
that referenced
this pull request
Oct 13, 2026
Runtime launches could create or backfill `.autoskillit/.gitignore`, turning AutoSkillit's own work into Git-visible changes. Init's `.state.yaml` was also missing from the canonical ignore rules, and the fleet diagnostic filter could erase a useful clone-gate failure merely because it named the managed lineage directory. This change separates runtime temp creation from explicit project setup. Init and direct install maintain the canonical ignore file; temp creation maintains only its own self-ignore marker. Init covers `.state.yaml` before writing it, preserves existing state fields, and leaves ignore files untouched when state validation fails. Fleet failure reasons retain `bootstrap_clone`/`uncommitted_changes` while redacting private paths and capture metadata; the raw L3 payload remains exact. The root-child classification flags return to the integer-map format required by the existing acceptance-policy reader. Regression coverage exercises absent/stale tracked ignore files, real user edits, zero-valued flags, state-write ordering, and directory/record/mixed/private-only fleet reasons. The core gateway/stub and existing snapshot are synchronized; the IO file remains within its existing line budget. ## Validation - `pre-commit run --all-files`: passed before each commit. - Affected task-based checks: 331 passed, 1 skipped. - Source-inventory guard checks: 39 passed. - Configured `test_check` (`task test-local-gate`): 51,233 passed, 615 skipped, 29 xfailed on `5854498a6f980782aa0b9f883b1e90a282c7f8f3`. ## Completion requirements for #5258 This PR delivers the code fixes, including the three adjacent defects. It does not close #5258 by itself. - [ ] After this integer-map restoration lands in the trusted comparison base, a maintainer registers `_CLASSIFIED_ELSEWHERE` in `tests/arch/_acceptance_policy_surfaces.py` as `int_map` with `default=0`, then runs the configured gate. The authority file is intentionally untouched here. Adding the row against the current set-shaped base would fail the policy parser's base comparison. - [ ] Integrate the completed code and policy registration into #5255's existing implementation scenario branch and run E-3 twice against the unchanged sandbox seed. Both envelopes must clear `bootstrap_clone` without `uncommitted_changes`; record actual run/attempt/head evidence in #5258's body. - [ ] Record completed code/policy/replay evidence in #5258 before closing it. Full #5255 commissioning and its later #5259 allocation blocker retain their separate acceptance criteria. Refs #5258. No new tickets or review comments are created by this change.
Trecek
added a commit
that referenced
this pull request
Oct 13, 2026
The runtime-state root classification map was restored in #5263, but it was still absent from the acceptance-policy registry. Future additions to its exemptions could therefore escape the policy comparison. Register `_CLASSIFIED_ELSEWHERE` as an `int_map` with `default=0`. The registration now compares against the dictionary-shaped base containing #5263, preserving the existing policy reader and approval mechanism. Validation: policy comparison against `dbc689db57d3d847758ec08dd5bad31105f39730` and `pre-commit run --all-files` passed. The configured MCP `test_check` (`task test-local-gate`, conservative filtering) passed against that actual PR base: 11,771 passed, 197 skipped, 12 xfailed on `3a0a9f8eae7a4d84a7e14d8b0b899ea76b30bd07`. The first gate compared against stale local `develop` at `0bf84f3`, whose value still had the old set shape: 51,229 passed and one policy-comparison test failed. The runner's comparison base was temporarily pinned to the fetched, dictionary-shaped PR base for the successful rerun, then restored. Both results are preserved locally. Refs #5258. After merge, integrate the registered policy and runtime repairs into the existing #5255 scenario branch, perform both E-3 replays against the unchanged seed, and record the actual clone-admission evidence in #5258 before closing it. This PR supplies the remaining policy entry; it does not claim the live replay has already happened.
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.
Runtime launches could create or backfill
.autoskillit/.gitignore, turning AutoSkillit's own work into Git-visible changes. Init's.state.yamlwas also missing from the canonical ignore rules, and the fleet diagnostic filter could erase a useful clone-gate failure merely because it named the managed lineage directory.This change separates runtime temp creation from explicit project setup. Init and direct install maintain the canonical ignore file; temp creation maintains only its own self-ignore marker. Init covers
.state.yamlbefore writing it, preserves existing state fields, and leaves ignore files untouched when state validation fails. Fleet failure reasons retainbootstrap_clone/uncommitted_changeswhile redacting private paths and capture metadata; the raw L3 payload remains exact.The root-child classification flags return to the integer-map format required by the existing acceptance-policy reader. Regression coverage exercises absent/stale tracked ignore files, real user edits, zero-valued flags, state-write ordering, and directory/record/mixed/private-only fleet reasons. The core gateway/stub and existing snapshot are synchronized; the IO file remains within its existing line budget.
Validation
pre-commit run --all-files: passed before each commit.test_check(task test-local-gate): 51,233 passed, 615 skipped, 29 xfailed on5854498a6f980782aa0b9f883b1e90a282c7f8f3.Completed requirements for #5258
Refs #5258. No new tickets or review comments are created by this change.
Live verification — 2026-10-11
Runs 38170521660 and 38170536595 each returned a successful default
bootstrap_clonefrom/workspace/sandboxon head959603ece0ba5f1bc5f81cf6551a0545cf36bc16. Full workflows failed later; #5258 records the precise evidence and scope.