Development record
2026-10-17 — Unsetting lines match regardless of case and setting lines only where every clone would (facilitator-on-delegation, drain-many-accounts step 11, refines dcn-2610170652476743): a line that unsets linguist-generated matches wherever git's would on a clone that ignores case or on one that does not, and a line that sets it matches only where git's would on both, so abcd never calls a file generated that git on some clone calls unset; the only cost is less sharing. Within a class, git ignoring case lowers the text byte but not the class's own bytes, so the two readings are judged separately (grounds: git check-attr under core.ignorecase true and false agreed on 303,104 comparisons; iss-2610152125101468).
2026-10-17 — Unsetting lines match regardless of case and setting lines only where every clone would (facilitator-on-delegation, drain-many-accounts step 11, refines dcn-2610170652476743): a line that unsets linguist-generated matches wherever git's would on a clone that ignores case or on one that does not, and a line that sets it matches only where git's would on both, so abcd never calls a file generated that git on some clone calls unset; the only cost is less sharing. Within a class, git ignoring case lowers the text byte but not the class's own bytes, so the two readings are judged separately (grounds: git check-attr under core.ignorecase true and false agreed on 303,104 comparisons; iss-2610152125101468).
Frontmatter
| id | dcn-2610170831290823 |
|---|---|
| type | decision |
| date | 2026-10-17 |
.abcd/work/decisions/dcn-2610170831290823-unsetting-lines-match-regardless-of-case.md
open on GitHub ↗ · commit history ↗
mentions3
- dcn-26101706524767432026-10-17 — Generated-file patterns follow git's gitattributes rules for the subset abcd reads (facilitator-on-delegation, drain-many-accounts step 11): a pattern with no slash matches the basename at any depth, one with a slash is anchored to the root with a leading slash stripped, star, question mark, classes and double star are supported, a trailing-slash pattern matches nothing, later lines win, and only linguist-generated set or =true means generated (iss-2610152125101468).
- dcn-26101709005751762026-10-17 — abcd shares only on a plain declaration (facilitator-on-delegation, drain-many-accounts step 11, refines dcn-2610170652475517 and dcn-2610170831290823): generatedFiles declares nothing, and names the rule, when the root .gitattributes holds a byte outside ASCII, quotes a pattern or names a macro (a bare [attr] included), or when the tree holds a .gitattributes named or placed outside ASCII or a second root one in other capitals; a file whose path is not ASCII is never generated; within those bounds the ASCII case rules stand, and every line visited costs budget steps (iss-2610152125101468).
- iss-2610152125101468A reservation footprint can hold a whole directory (docs, hooks, internal/surface/cli), and the overlap check then refuses every other reservation naming any file inside it. Generated files that every verb-adding branch regenerates, such as docs/reference/cli/commands.md, sit inside such directories, so two unrelated intents held by the same person from two copies could not both declare an honest footprint: on 2026-10-15 the messaging reservation's renewal was refused twice and had to leave out .githooks/pre-push, the ruleset mirror and the generated CLI reference, which it does change.