NS8: Prod-ready modal editor implementation #43

Open
opened 2026-06-21 09:09:10 +00:00 by tmk241 · 0 comments
Owner

OUTCOME: mim is a fully usable prod-ready terminal editor for iPhone SSH sessions and attached physical keyboards: users can open directories, existing files, and new files; edit and save safely; navigate/search/select/transform code with the KEYMAP.md grammar; and use diagnostics, LSP, lint, format, build/test/check, and trusted tool panels without hidden installers or runtime config sprawl.

WHY NOW: KEYMAP.md now defines the v1 modal operation grammar and the user explicitly wants full production support rather than a help-only or preview shell. NS7 remains blocked only on external dogfood evidence; NS8 owns the implementation work that makes the editor genuinely usable.

AUTHORITY: PRODUCT.md; KEYMAP.md; REQUIREMENTS.md especially req: session/001-003, input/001-007, coding/001-007, repo/001-002, ui/001-002, governance/001-005, testing/001-004; AGENTS.md verification rules.

SLICES:

  • #44 NS8 slice: Launch a real editor for files, folders, and new paths
  • #45 NS8 slice: Implement the modal input engine and command rails
  • #46 NS8 slice: Ship core editing, undo, redo, save, and quit safety
  • #47 NS8 slice: Implement composable objects, selections, and delimiter matching
  • #48 NS8 slice: Add current-file search and in-buffer navigation
  • #49 NS8 slice: Make file, tree, and project search panels editing-ready
  • #50 NS8 slice: Implement language provider registry and source identity
  • #51 NS8 slice: Ship compact hover, signature help, and parameter navigation
  • #52 NS8 slice: Make diagnostics and navigation production-ready
  • #53 NS8 slice: Run lint, build, test, and check jobs from the editor
  • #54 NS8 slice: Implement formatting, code actions, organize imports, and format-on-save
  • #55 NS8 slice: Prove physical keyboard parity without losing mobile access
  • #56 NS8 slice: Complete production hardening and real-device dogfood receipts

MEMBERSHIP MECHANISM: Gitea fallback via this parent checklist plus explicit parent link in each child issue body.

AGENT AUTHORITY DEFAULTS:

  • Delivery authority: local-commit
  • Tracker authority: child issues may be commented and closed when their acceptance passes; this parent may be commented as children complete and updated to maintain the child checklist.
  • Handoff state: committed clean, tracker commented/closed for completed child slices.

BLOCKERS: none for implementation slicing. Final production dogfood still requires real iPhone SSH and physical-keyboard evidence before closing the parent.

PROOF: From a fresh checkout, a user can build/install mim, run mim or mim <path>, perform real repository edits from a terminal UI, recover from common errors without data loss, use the KEYMAP.md modal grammar for core code editing, use language/tool workflows with provider identity preserved, and complete documented iPhone SSH plus physical-keyboard dogfood receipts.

TEST STANDARD: Each child slice must carry its test weight: regular tests prove the intended payoff works, and adversarial tests cover realistic failure, boundary, or regression cases. Prefer protocol/headless/replay/fixture tests over brittle UI snapshots unless rendering behavior is the claim. Run redgate lint/health for requirement-affecting work.

NON-GOALS: No native iOS app, cloud service, telemetry, plugin system, runtime keymap/config files, public feature-flag matrix, package manager hooks, hidden tool installers, or Vim/VS Code compatibility promise beyond deliberate KEYMAP.md aliases. Do not close with fixture evidence alone when real dogfood evidence is required.

GOAL: Implement this Northstar by completing its linked child slices without leaving the product/refusal boundary in PRODUCT.md and KEYMAP.md. Close this parent only when every child is closed and the PROOF above is demonstrated.

OUTCOME: `mim` is a fully usable prod-ready terminal editor for iPhone SSH sessions and attached physical keyboards: users can open directories, existing files, and new files; edit and save safely; navigate/search/select/transform code with the KEYMAP.md grammar; and use diagnostics, LSP, lint, format, build/test/check, and trusted tool panels without hidden installers or runtime config sprawl. WHY NOW: KEYMAP.md now defines the v1 modal operation grammar and the user explicitly wants full production support rather than a help-only or preview shell. NS7 remains blocked only on external dogfood evidence; NS8 owns the implementation work that makes the editor genuinely usable. AUTHORITY: PRODUCT.md; KEYMAP.md; REQUIREMENTS.md especially req: session/001-003, input/001-007, coding/001-007, repo/001-002, ui/001-002, governance/001-005, testing/001-004; AGENTS.md verification rules. SLICES: - [x] #44 NS8 slice: Launch a real editor for files, folders, and new paths - [x] #45 NS8 slice: Implement the modal input engine and command rails - [x] #46 NS8 slice: Ship core editing, undo, redo, save, and quit safety - [x] #47 NS8 slice: Implement composable objects, selections, and delimiter matching - [x] #48 NS8 slice: Add current-file search and in-buffer navigation - [x] #49 NS8 slice: Make file, tree, and project search panels editing-ready - [x] #50 NS8 slice: Implement language provider registry and source identity - [x] #51 NS8 slice: Ship compact hover, signature help, and parameter navigation - [x] #52 NS8 slice: Make diagnostics and navigation production-ready - [x] #53 NS8 slice: Run lint, build, test, and check jobs from the editor - [x] #54 NS8 slice: Implement formatting, code actions, organize imports, and format-on-save - [x] #55 NS8 slice: Prove physical keyboard parity without losing mobile access - [ ] #56 NS8 slice: Complete production hardening and real-device dogfood receipts MEMBERSHIP MECHANISM: Gitea fallback via this parent checklist plus explicit parent link in each child issue body. AGENT AUTHORITY DEFAULTS: - Delivery authority: local-commit - Tracker authority: child issues may be commented and closed when their acceptance passes; this parent may be commented as children complete and updated to maintain the child checklist. - Handoff state: committed clean, tracker commented/closed for completed child slices. BLOCKERS: none for implementation slicing. Final production dogfood still requires real iPhone SSH and physical-keyboard evidence before closing the parent. PROOF: From a fresh checkout, a user can build/install `mim`, run `mim` or `mim <path>`, perform real repository edits from a terminal UI, recover from common errors without data loss, use the KEYMAP.md modal grammar for core code editing, use language/tool workflows with provider identity preserved, and complete documented iPhone SSH plus physical-keyboard dogfood receipts. TEST STANDARD: Each child slice must carry its test weight: regular tests prove the intended payoff works, and adversarial tests cover realistic failure, boundary, or regression cases. Prefer protocol/headless/replay/fixture tests over brittle UI snapshots unless rendering behavior is the claim. Run redgate lint/health for requirement-affecting work. NON-GOALS: No native iOS app, cloud service, telemetry, plugin system, runtime keymap/config files, public feature-flag matrix, package manager hooks, hidden tool installers, or Vim/VS Code compatibility promise beyond deliberate KEYMAP.md aliases. Do not close with fixture evidence alone when real dogfood evidence is required. GOAL: Implement this Northstar by completing its linked child slices without leaving the product/refusal boundary in PRODUCT.md and KEYMAP.md. Close this parent only when every child is closed and the PROOF above is demonstrated.
tmk241 added the northstargoal labels 2026-06-21 09:09:10 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: tmk241/mim#43