fix(cli): re-emit --harness-file in generated commands, warn on descriptor drift - #299
Merged
Conversation
…iptor drift (#294) Every follow-up command a run generates (RUNBOOK.md, Next: lines) dropped the global --harness-file flag, so an operator following the runbook silently resolved a different harness descriptor than the iteration was prepared with — while plugin-shadow.json kept the prep-time isolation declaration, producing a recorded-as-isolated run whose comparison is invalid. The selector also invented a --skill-dir the invocation never used, which stages every sibling skill ambiently: a different experiment. command_target_args now reproduces the invocation: --skill-dir only when the invocation supplied one (else --skill names the absolute skill subdir), an absolute --workspace-dir as before, and --harness-file when one was loaded (remembered at registry init, threaded through RunContext). Backstop: run records the resolved descriptor digest and the --harness-file path in conditions.json; dispatch and ingest compare the digest they resolve against the prep-time one and warn loudly on drift, naming the file to re-run with.
Describe the mechanism — dispatch/ingest compare the resolved descriptor against the digest run records in conditions.json and warn when they differ — instead of the process label "warn loudly".
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.
Closes #294
Every follow-up command a run generates (RUNBOOK.md, Next: lines) dropped the global --harness-file flag, so an operator following the runbook silently resolved a different harness descriptor than the iteration was prepared with — while plugin-shadow.json kept the prep-time isolation declaration, producing a recorded-as-isolated run whose comparison is invalid. The selector also invented a --skill-dir the invocation never used, which stages every sibling skill ambiently: a different experiment.
command_target_args now reproduces the invocation: --skill-dir only when the invocation supplied one (else --skill names the absolute skill subdir), an absolute --workspace-dir as before, and --harness-file when one was loaded (remembered at registry init, threaded through RunContext).
Backstop: run records the resolved descriptor digest and the --harness-file path in conditions.json; dispatch and ingest compare the digest they resolve against the prep-time one and warn loudly on drift, naming the file to re-run with.