This is the record of an abcd-managed repository

abcdBetav0.16.2 · 2026-11-06

Development record

The drain rule's decision store is followed through a symlink that resolves inside the checkout, while a record that is a symlink is refused wherever it points. drainrule.Load reads .abcd/development/decisions/adrs through os.Root, which follows a link staying inside the root, so a linked store (or a linked directory above it) loads a rule from a path the checkout does not commit as the store; a store linked out of the checkout was refused only by os.Root's escape check. Named as INFO by reverify-drainOwnRule on b93f4cdd3.

issueresolvedminoriss-2609300841466575

The drain rule's decision store is followed through a symlink that resolves inside the checkout, while a record that is a symlink is refused wherever it points. drainrule.Load reads .abcd/development/decisions/adrs through os.Root, which follows a link staying inside the root, so a linked store (or a linked directory above it) loads a rule from a path the checkout does not commit as the store; a store linked out of the checkout was refused only by os.Root's escape check. Named as INFO by reverify-drainOwnRule on b93f4cdd3.

Grounds

  • pursued: a store linked inside the checkout, out of it, or below a linked parent refuses with ErrUnreadable (TestASymlinkedStoreIsRefusedWhereverItPoints, TestEveryRefusalOfTheRuleExitsTwo); a rule loading through any linked store would show it wrong

Frontmatter

idiss-2609300841466575
typeissue
lifecycleresolved
severityminor