Skip to content

Conversation

@rpothin
Copy link
Owner

@rpothin rpothin commented Jan 26, 2026

Summary

This PR implements the v0.1.0 refinement plan improvements focused on first-run UX, clearer CLI semantics, safer config usage, and more resilient git/codespaces behavior. It also bumps the package version to 0.1.1.

Addresses findings from plans/v0-1-0_REFINEMENT_PLAN.md

  • Finding 1 (init UX): ghcralph init is now interactive by default in TTYs (review defaults → edit values → confirm write), with option lists for plan source/model/auto-commit.
  • Finding 2 (file/plan confusion): --plan removed; --file now supports both single-task files and Markdown plan files (auto-detected).
  • Finding 3 (GitHub plan source defaults): configuration schema extended with GitHub plan settings (githubRepo + optional filters). init prompts for them when planSource=github.
  • Finding 4 (avoid overriding config via flags): run now treats config as the source of truth for maxIterations/maxTokens/defaultModel/autoCommit/branchPrefix; CLI flags removed where appropriate.
  • Finding 5 (dry-run model mismatch): run --dry-run now loads config and displays/uses defaultModel consistently.
  • Finding 6 (first run error + shutdown hang):
    • GitBranchManager now tolerates failing git hooks (e.g. missing git-lfs) when the branch was actually created/checked out, and prints a warning instead of throwing.
    • Copilot session cleanup improved (uses sendAndWait()), plus run now cleans up SIGINT/SIGTERM handlers and destroys the agent on exit.

Docs / Devcontainer

  • Updated docs (including cookbook troubleshooting) to explain Git LFS hook errors and mitigation options.
  • Devcontainer adjusted to avoid requiring Git LFS by default.
  • Minor CLI help example fix for GitHub issues workflow.

Release

  • Bumped package.json and package-lock.json to 0.1.1.

Validation

  • npm run lint
  • npm run typecheck
  • npm test
  • npm run build

@rpothin rpothin self-assigned this Jan 26, 2026
@rpothin rpothin added documentation Improvements or additions to documentation enhancement New feature or request labels Jan 26, 2026
@rpothin rpothin merged commit b5ecadb into main Jan 26, 2026
10 checks passed
@rpothin rpothin deleted the v0-1-0-refinements branch January 26, 2026 03:37
rpothin added a commit that referenced this pull request Jan 28, 2026
- Issue #1: Implemented session-based multi-task progress tracking
  - Added RunSession and TaskResult interfaces
  - New startSession(), recordTaskCompletion(), getSession() methods
  - generateFullSessionMarkdown() preserves complete task history
  - Progress file now includes all task iterations across the run

- Issue #3: Added mutex protection for git operations
  - All CheckpointManager git operations now use async-mutex
  - Prevents concurrent access causing index.lock errors
  - Internal *Unsafe() methods for already-locked contexts

Added async-mutex dependency and 6 new tests for progress tracking.

Part of v0.1.3 remediation plan.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant