-
Notifications
You must be signed in to change notification settings - Fork 3.5k
fix(workflows,commands): preserve repo identity for issue URLs; unblock .archon fixes #2417
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 2 commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -20,10 +20,35 @@ created a git worktree on the correct branch. In that case: | |
| operator's `.archon/` directory — workflows, commands, scripts — into every run | ||
| worktree, deliberately, so a workflow can be iterated on before it is committed. | ||
| Those files are present *before* you start and are not your changes. | ||
| - **Modifications under `.archon/` are never yours to commit, stash, or remove.** | ||
| Leave them exactly as they are and commit only the files your implementation touched. | ||
| Before every commit, confirm with `git diff --cached --name-only` that nothing under | ||
| `.archon/` is staged. | ||
| - **Pre-existing modifications under `.archon/` are never yours to commit, stash, or | ||
| remove.** Leave them exactly as they are and commit only the files your implementation | ||
| touched. Before every commit, confirm with `git diff --cached --name-only` that no | ||
| `.archon/` file you did not deliberately change is staged. | ||
| - **The exception: when the issue's fix genuinely lives under `.archon/`.** Workflows, | ||
| commands and scripts are source too, and an issue can legitimately target one. If your | ||
| plan says to edit a specific `.archon/` file, edit and commit **that file** — the rule | ||
| above exists to stop you sweeping up the operator's unrelated copied-in edits, not to | ||
| make a whole directory unfixable. | ||
|
|
||
| Distinguish the two by intent, not by path: a file your plan names is your work; every | ||
| other dirty `.archon/` file is not. On 2026-08-03 a run blocked outright on this, | ||
| correctly reporting "contradictory instructions" because the issue required editing a | ||
| workflow YAML while this section forbade touching anything under `.archon/`. It was | ||
| right to refuse rather than guess — and the rule was wrong to be absolute. | ||
|
|
||
| **A named file is not a blank cheque for that file.** It may already carry copied-in | ||
| edits from before you started, and staging it whole would commit those too — the | ||
| path-level check above cannot see inside a file. So before you touch a planned | ||
| `.archon/` file, record its baseline: | ||
|
|
||
| ```bash | ||
| git diff -- <the-planned-file> > /tmp/archon-baseline.diff # empty if clean | ||
| ``` | ||
|
|
||
| After editing, stage **only your own hunks** — `git add -p <file>` — and reject any | ||
| hunk that also appears in the baseline. If the two are entangled such that you cannot | ||
| separate them, stop and say so rather than committing someone else's work under your | ||
| change. That is the same call the 2026-08-03 run made, and it was the right one. | ||
|
Contributor
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🗄️ Data Integrity & Integration | 🟠 Major | 🏗️ Heavy lift Capture a complete, file-specific baseline before staging.
The shared 🤖 Prompt for AI Agents |
||
| - **Dirty paths outside `.archon/` are also not a reason to stop, and also not yours.** | ||
| They are either your own work from an earlier attempt at this run (resume reuses the | ||
| worktree) or something the operator left behind. Either way: leave them alone, do not | ||
|
|
||
Uh oh!
There was an error while loading. Please reload this page.