Skip to content

feat: add silent CodeDiff CLI dogfooding - #288

Draft
jlitola wants to merge 18 commits into
mainfrom
jlitola/code-diff-cli-dogfood
Draft

feat: add silent CodeDiff CLI dogfooding#288
jlitola wants to merge 18 commits into
mainfrom
jlitola/code-diff-cli-dogfood

Conversation

@jlitola

@jlitola jlitola commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add the CLI-only githits code diff command with Git-like patch, stat, name-only, and name-status views
  • validate exact-tree ranges and one delimiter-bound path glob, and preserve bounded partial/failure evidence in text and JSON
  • keep the surface silent: no MCP tool, instructions, skills, plugins, or public MCP export
  • document the dogfood contract and record a root CLI minor release impact

Verification

  • bun test (2,888 pass)
  • bun run build
  • bun run smoke:cli (authenticated live CodeDiff coverage)
  • bun run smoke:cli:built
  • bun run smoke:mcp
  • bun run format:check
  • bun run lint
  • bun run validate:packages
  • git diff --check

Preflight, internal runtime review, and retained external Claude review are clean. Broader representative CLI dogfooding remains the post-merge gate before MCP exposure.

jlitola added 14 commits August 17, 2026 14:36
Split the merged public CLI/MCP phase into a CLI-only dogfood launch and a later agent rollout. Pin the Git-like command contract, validation boundaries, and release impact for the next increment.
Add the workspace-internal request contract for Git-like diff views, exact range parsing, bounded repository-relative globs, and raw option validation without exposing an MCP tool.
Add the workspace-internal data-first success envelope with view-minimal file facts, exact resolution identity, and mandatory path-encoding safety across every CLI view.
Classify bounded CodeDiff resolver failures into the existing CLI error contract while retaining safe recovery metadata and exact partial resolutions.
Render Git-like diff views while keeping completeness and safety diagnostics on stderr.
Register a Git-like code diff surface for CLI dogfooding without adding MCP or agent-facing guidance.
Render familiar per-file bars and totals while identifying returned-only totals when projection is incomplete.
Document the CLI-only rollout, add release impact, and cover help, auth, validation, and live JSON behavior in CLI smoke.
Require the Git-style double-dash boundary for the repository-relative glob and refresh Phase 2 plan status after implementation.
Validate the actual Commander argv suffix and cover valid, trailing-delimiter, and root-delimiter parsing.
Compare the final argv tokens directly so a literal double-dash glob remains valid after the separator.
Use CLI-native validation names, reject Git pathspec magic, align stat formatting, share numeric bounds, mark truncated recovery lists, document backend escaping, and smoke the delimiter contract.
Translate remaining target fields and retain a lower bound when recovery candidates are truncated twice.
Capture the final verification and review evidence while keeping broader post-merge dogfooding as the Phase 3 gate.
@jlitola jlitola added the enhancement New feature or request label Aug 17, 2026
Bind raw diff placeholder headers to each authoritative file path, including Git-style /dev/null sides for additions and deletions. Add unit and authenticated smoke regression coverage.
Normalize JSON and text patch headers to authoritative paths, preserve unusual path identities with Git quoting, and suppress unexpectedly non-applicable patch streams while retaining caller-selected bounds.
Accept the live backend patch-budget omission reason and improve diff-specific help, suppression diagnostics, and recovery guidance.
Keep invalid-target help diff-specific while listing the package registries accepted by the target parser.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant