Commit Graph

501 Commits

Author SHA1 Message Date
Trevin Chow d8826490a5 fix(commit-push-pr): preserve intentional unpushed commits when branching from default
Round 2 of feedback on Step 4.1: the previous version always branched
from `origin/<base>`, which silently dropped unpushed commits the user
intended for the new feature branch (the "forgot to branch first"
workflow). Local git state cannot distinguish that intent from
stale-base contamination — the unpushed commits look identical and
shared `user.email` makes authorship unreliable across multi-agent
sessions.

Step 4.1 now asks the user when `origin/<base>..HEAD` is non-empty:
carry the commits onto the new branch (HEAD) or leave them on local
`<base>` (origin/`<base>`). The user is the only reliable source of
intent here.

Step 4.1's prose has accumulated three conditional branches across two
review rounds (fetch, unpushed-commits, checkout overwrite). Extracted
the full decision flow to `references/branch-creation.md` per the
extraction guidance for conditional content; Step 4.1 in SKILL.md is
now a 1-line stub. The round-1 stash-retry-pop fallback is preserved
in the reference file.

Stable/Beta sync: not propagating — no `-beta` counterpart exists for
`ce-commit-push-pr`.

Addresses Codex review feedback on #708.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-27 16:34:34 -07:00
Trevin Chow 8d61af8dd9 fix(commit-push-pr): handle checkout failure during clean-base creation
Step 4.1 only fell back when `git fetch` failed, but `git checkout -b
<name> origin/<base>` can also abort with "Your local changes would be
overwritten" when uncommitted edits collide with the local-base-vs-
origin-base diff — exactly the contamination scenario the previous
commit aimed to protect against. The skill would strand users with
their work and no path forward.

Now stashes with `git stash push -u`, retries the checkout from
`origin/<base>`, then `git stash pop` onto the new branch. If the pop
conflicts (rare same-files case), surfaces the conflict and stash ref
so the user can resolve manually.

Addresses Codex review feedback on #708.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-27 15:07:02 -07:00
Trevin Chow 35ff6a200b fix(commit-push-pr): branch from fresh remote base to prevent stale-base contamination
Step 4 of ce-commit-push-pr now creates feature branches from `origin/<base>`
after a `git fetch`, instead of from local `<base>` directly. This prevents
new branches from silently inheriting unpushed local commits when another
session (Claude Code, Cursor, Codex, or a human) has advanced local
default beyond the remote — a real failure mode reported in #707 that
previously required force-push surgery to fix at PR review time.

Falls back to the prior `git checkout -b <name>` form if the fetch fails
(offline, restricted network, expired auth) and surfaces the fallback in
the user-facing summary so freshness is not silently assumed.

Also adds docs/solutions/workflow/stale-local-base-contamination.md
documenting the failure mode, the rejected detection approaches
(authorship-based misses same-user contamination; reachability-based
inverts under stacked PRs) and why prevention at branch creation
generalizes cleanly to stacked-PR workflows.

Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-27 13:53:00 -07:00
Trevin Chow 4b5f28da97 fix(ce-work-beta): defer model and reasoning effort to Codex config (#704)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-26 21:32:13 -07:00
Trevin Chow dd080943e0 fix(ce-doc-review): tighten suggested_fix and why_it_matters rules (#702) 2026-04-26 14:39:01 -07:00
github-actions[bot] 179612039e chore: release main (#684)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-26 14:23:32 -07:00
Trevin Chow 5952b20d7f fix(skills): replace case statements blocked by permission check (#701)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-26 14:22:20 -07:00
Trevin Chow e8c118e28f refactor(ce-commit-push-pr): merge ce-pr-description into ce-commit-push-pr (#700)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-26 02:23:59 -07:00
Trevin Chow a91270ccd2 fix(session-historian): cap deep-dives, add keyword filter primitive, tighten dispatch (#699)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-25 23:37:30 -07:00
Trevin Chow 053c1db255 fix(ce-work): codify worktree isolation for parallel subagent dispatch (#698) 2026-04-25 23:22:49 -07:00
Trevin Chow 7eea2d1cfe feat(ce-compound): add frontmatter parser-safety validator (#697) 2026-04-25 21:37:57 -07:00
Trevin Chow ad9577e732 fix(ce-code-review): tighten autofix_class rubric for safe_auto/gated_auto boundary (#695)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-25 21:03:43 -07:00
Trevin Chow bd72818609 fix(ce-resolve-pr-feedback): add declined verdict for harmful suggestions (#694)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-25 20:04:39 -07:00
Trevin Chow e21156eeb7 fix(ce-debug): default to commit-and-PR and tighten learning offer (#693) 2026-04-25 19:27:09 -07:00
Trevin Chow 50bf65e88c fix(ce-doc-review): rename LFG path to best-judgment to avoid /lfg collision (#691)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-25 19:04:31 -07:00
Trevin Chow f30404e57b fix(ce-demo-reel): wait for network idle and reject blank frames (#692) 2026-04-25 18:59:40 -07:00
Trevin Chow 85e9a2073b fix(ce-code-review): move run artifacts from .context/ to /tmp per AGENTS.md (#690)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-25 18:19:40 -07:00
Trevin Chow 9ba41a14ca fix(ce-code-review): replace LFG with best-judgment auto-resolve (#685)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-25 18:12:09 -07:00
Trevin Chow 1284290af2 fix(ce-debug): delegate commit/PR and add branch check (#683) 2026-04-24 20:54:06 -07:00
github-actions[bot] ea8721eb21 chore: release main (#680)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-24 15:16:49 -07:00
Trevin Chow 304a975d02 feat(ce-brainstorm): probe rigor gaps with prose before Phase 2 (#677)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 15:13:35 -07:00
Trevin Chow bc8ae1a6b5 fix(main): recover version drift, fix stale test, document learnings (#678)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 15:07:49 -07:00
Kieran Klaassen 47350c3e4e fix(ce-test-browser): skip headed/headless question in pipeline mode
Agents spawned from LFG were blocking forever at the AskUserQuestion
prompt with no user present to respond. In mode:pipeline, default to
headless and skip step 2 entirely.

Bump 3.0.6 -> 3.0.7

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 13:17:07 -07:00
Kieran Klaassen 22d493b192 feat(ce-test-browser): gate port scan and auto-start on pipeline mode
- Port scan (find_free_port) only runs when PIPELINE_MODE=1
- Dev server auto-start only runs in pipeline mode; manual invocations
  print a help message and stop
- LFG step 6 now passes mode:pipeline to ce-test-browser so parallel
  agents claim non-colliding ports automatically
- Bump version 3.0.5 -> 3.0.6

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 12:59:50 -07:00
Kieran Klaassen f8720da3d1 feat(ce-test-browser): free-port scan and auto-server start
- Always verify preferred port is free; scan upward until finding one
- Auto-start dev server (bin/dev / rails server / npm run dev) on the
  claimed port if nothing is listening — no more "please start your server"
- Pass PORT= explicitly so parallel agents on the same machine never
  collide on 3000

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 12:56:31 -07:00
Kieran Klaassen 1f20c3842d feat(lfg): add ce-commit-push-pr step and remove ralph-loop
- Add ce-commit-push-pr as step 7 so LFG ends with a pushed branch and open PR
- Remove optional ralph-loop step (step 1) -- simplifies the pipeline
- Renumber all steps and fix cross-references accordingly
- Bump version 3.0.3 -> 3.0.4

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-24 12:18:26 -07:00
github-actions[bot] bc3709fc53 chore: release main (#675)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-24 07:24:56 -07:00
Trevin Chow f0433d9150 fix(ce-ideate): sharpen bug intent, surprise-me dispatch, and drop authoring refs (#672) 2026-04-24 02:21:21 -07:00
github-actions[bot] 6b5da46ccd chore: release main (#661)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-24 02:06:18 -07:00
Trevin Chow 6514b1fce5 feat(ce-ideate): subject gate, surprise-me, and warrant contract (#671)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 02:04:21 -07:00
Trevin Chow 494313e8eb fix(ce-brainstorm): enforce Interaction Rules in universal flow (#669) 2026-04-23 23:56:35 -07:00
Trevin Chow c33bf70f46 fix(skills): plan is a decision artifact; progress comes from git (#666) 2026-04-23 23:12:12 -07:00
Trevin Chow 9ddcd22aee fix(ce-demo-reel): prevent secrets in recorded demos (#664)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-23 21:52:52 -07:00
Trevin Chow 75cf4d603d feat(ce-commit-push-pr): skip evidence prompt when judgment allows (#663) 2026-04-23 16:59:53 -07:00
Trevin Chow 351d12ec5b fix(ce-update): compare against main plugin.json, not release tags (#660) 2026-04-23 14:36:58 -07:00
github-actions[bot] 5e6ec41b95 chore: release main (#657)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-22 20:15:57 -07:00
Trevin Chow a9fd8421f4 fix(ce-proof): correct op shapes and add retry/batch discipline (#658) 2026-04-22 19:52:02 -07:00
Trevin Chow b9ae6b758d fix(ce-update): replace cache sweep with claude plugin update (#656) 2026-04-22 18:23:15 -07:00
github-actions[bot] 7e83755acb chore: release main (#596)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-04-22 14:21:19 -07:00
Trevin Chow 5eb62a7d0e refactor(agents): restrict tools allowlist on research agents (#650)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-22 12:23:27 -07:00
Trevin Chow 23dc11b95a feat(ce-setup): check for ast-grep CLI and agent skill (#653) 2026-04-22 11:29:20 -07:00
Luca Henn fdf5fe4af5 feat(ce-demo-reel): add local save as alternative to catbox upload (#647) 2026-04-22 11:28:44 -07:00
Trevin Chow 7ddfbed33b feat(pi): first-class support via pi-subagents + pi-ask-user (#651)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-22 10:26:29 -07:00
Trevin Chow cce95fb814 feat(ce-debug): environment sanity, assumption audit, more techniques (#649)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-22 09:08:24 -07:00
Trevin Chow 6155b9de3c fix(ce-update): derive cache dir from CLAUDE_PLUGIN_ROOT parent (#645)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-22 08:42:28 -07:00
Trevin Chow 86d9a2c55f fix(ce-debug): stop hanging handoffs and read full issue thread (#646) 2026-04-22 01:51:53 -07:00
Trevin Chow 01d5e8fb73 docs(readme): focus readmes on compound engineering (#644) 2026-04-21 23:33:21 -07:00
Trevin Chow 13f95ba639 fix(skills): cap skill descriptions at harness limit (#643) 2026-04-21 21:56:15 -07:00
Trevin Chow 5a26a8fbd3 refactor(ce-code-review): anchored confidence, staged validation, and model tiering (#641)
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-21 21:04:29 -07:00
Trevin Chow b104ce46be fix(lfg): use platform-neutral skill references (#642) 2026-04-21 20:08:48 -07:00