Development record
record-lint's patch diffs (decisions-append, agent-diff) start an inner git diff inside a submodule when the superproject sets diff.submodule=diff, and git passes that child none of the parent's --no-ext-diff/--no-textconv, so the submodule's diff.external or textconv runs and its output lands in the text the check parses. Sibling of iss-2610090821531570, found by the security-drain-2026-10-09 lane W sweep; kept uncommitted until its fix lands.
issueresolvedminoriss-2610091935325886
record-lint's patch diffs (decisions-append, agent-diff) start an inner git diff inside a submodule when the superproject sets diff.submodule=diff, and git passes that child none of the parent's --no-ext-diff/--no-textconv, so the submodule's diff.external or textconv runs and its output lands in the text the check parses. Sibling of iss-2610090821531570, found by the security-drain-2026-10-09 lane W sweep; kept uncommitted until its fix lands.
Frontmatter
| id | iss-2610091935325886 |
|---|---|
| type | issue |
| lifecycle | resolved |
| severity | minor |
.abcd/work/issues/resolved/iss-2610091935325886-submodule-inner-diff-runs-submodule-diff.md
open on GitHub ↗ · commit history ↗
mentions1
- iss-2610090821531570record-lint's armed agent-diff check runs `git diff --unified=0` without `--no-ext-diff --no-textconv`, so a repository `diff.external`, `diff.<driver>.textconv` or `diff.<driver>.command` runs as the operator and its stdout can forge the `prompt_version` bump the check looks for.