NS4 slice: Add gitignore-aware file picker and tree #23
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
OBJECTIVE: Implement file picker/tree panels that respect gitignore by default and expose an include-ignored toggle.
AUTHORITY: Parent #4
NS4: Repository workbench; PRODUCT.md; REQUIREMENTS.md (PRODUCT.md; req: repo/001-002; req: ui/002).AGENT AUTHORITY:
PARENT: #4 via explicit issue link and parent checklist.
SCOPE: The smallest source/docs/tests needed to make this behavior real and verified.
BOUNDARIES: No runtime file-browser config.
ACCEPTANCE: Fixture repo tests show ignored files hidden by default, included when toggled, and selected files open correctly.
VERIFICATION: Run the cheapest command that proves acceptance. Include regular tests for the intended payoff and adversarial tests for realistic failure, boundary, or regression cases. If no implementation test command exists yet, create/record the canonical command in AGENTS.md as part of the slice.
BLOCKERS: none
GOAL: Implement this vertical slice to the ACCEPTANCE above, keep the repo clean, cite relevant
req:anchors in code/tests where applicable, and close only after verification passes.Implemented in commit
233a5245f6(Add gitignore-aware file picker).Verification:
Regular tests: repo index respects gitignore by default, include-ignored path exposes ignored files, tree rows use the same boundary, selected file content opens into the editor, and TUI traces show picker/tree panels through the shared list primitive.
Adversarial tests: invalid repo paths/patterns are rejected, missing file content returns FileNotFound, and invalid path/open-without-selection failures do not corrupt the editor buffer.
Boundary: file picker/tree and include-ignored behavior only, backed by the existing panel primitive. No project text search, git status/diff, build/job panel, terminal panel, or OS directory walking was added.