Development record
The plain-Terminal interview guard reads no worktree entry of the repository's common git directory except the current one's HEAD and config.worktree, and no other worktree's local tier: a role allowed only Write can register a worktree under .git/worktrees/ whose gitdir names its own turn directory (left out of the reading) and plant a push receipt there, or plant one in a sibling worktree's local tier, and preflight-receipt.sh check accepts it so the next push of that commit passes the pre-push gate; it can also repoint a sibling worktree's commondir at a fake common directory whose configuration carries an alias, which runs on the person's next git command there. Neither stops the interview.
The plain-Terminal interview guard reads no worktree entry of the repository's common git directory except the current one's HEAD and config.worktree, and no other worktree's local tier: a role allowed only Write can register a worktree under .git/worktrees/ whose gitdir names its own turn directory (left out of the reading) and plant a push receipt there, or plant one in a sibling worktree's local tier, and preflight-receipt.sh check accepts it so the next push of that commit passes the pre-push gate; it can also repoint a sibling worktree's commondir at a fake common directory whose configuration carries an alias, which runs on the person's next git command there. Neither stops the interview.
Grounds
- pursued: registering a worktree at the turn directory with a receipt there, a receipt in a sibling worktree's local tier, and a repointed commondir or gitdir each stop the interview with the path named (tests TestAWorktreeRouteToAPushOrAHookStopsTheInterview and the CLI cases); shown wrong if any of them lets the interview run on
Frontmatter
| id | iss-2610040739124513 |
|---|---|
| type | issue |
| lifecycle | resolved |
| severity | major |
.abcd/work/issues/resolved/iss-2610040739124513-the-plain-terminal-interview-guard-reads.md
open on GitHub ↗ · commit history ↗