Skip to content

Make co-evolve usable through init and bounce subcommands - #70

Open
alanshurafa wants to merge 5 commits into
masterfrom
codex/usability-cli
Open

alanshurafa wants to merge 5 commits into
masterfrom
codex/usability-cli

Conversation

@alanshurafa

@alanshurafa alanshurafa commented Sep 12, 2026

Copy link
Copy Markdown
Owner

Adds co-evolve init and co-evolve bounce <file> for a first run without reading script source. The npm package now installs both the document CLI and MCP server. Init refuses to overwrite files; bounce preserves input and per-pass artifacts. The Codex adapter uses the installed CLI's supported approval flag, and report wording makes behavior scores informational.

Installed a built tarball into a disposable prefix: help printed usage, init created the sample, and two real Codex passes exited 0. The reviewer challenged same-device backups, unrestricted overwrites, and absent restore tests; the final document addresses each. Raw critiques, marker state, scores, and a human report were retained. A failing behavior score did not fail the flow. npm registry publication remains blocked on operator authentication.

TypeScript checkpoint and MCP completion suite passed. The local shell suite failed its PR-emitter fixture after concurrent commits invalidated the checkout-dependent cache. The single retry was launched with an invalid Git Bash environment and exited 1 before valid tests ran. The requested second-red stop condition fired: this PR is intentionally left unmerged. The real CLI exercise succeeded; continuation requires correcting the test environment and permission to resume beyond the stop condition.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 12, 2026

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review Completed 2026-09-12T14:00:48.023266Z aaa86e0 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: aaa86e04d2

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread lib/co-evolution.sh
cmd=(cmd.exe /c codex exec --approve-for-me --skip-git-repo-check -C "$windows_workdir")
else
cmd=(codex exec --full-auto --skip-git-repo-check -C "$workdir")
cmd=(codex exec --approve-for-me --skip-git-repo-check -C "$workdir")

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Restore a supported Codex approval option

With Codex CLI 0.144.0-alpha.4, codex exec --approve-for-me exits 2 with unexpected argument, while the previous --full-auto invocation is accepted. Because Codex is the default composer, every default bounce reaches this path, produces no agent output, and ultimately fails after retries; schema-backed verification is affected identically. Retain --full-auto or implement version-aware selection of a documented option.

AGENTS.md reference: AGENTS.md:L72-L72

Useful? React with 👍 / 👎.

Comment thread co-evolve
input="$(cd "$(dirname "$1")" && pwd)/$(basename "$1")"
shift
export CO_EVOLVE_RUNS_DIR="${CO_EVOLVE_RUNS_DIR:-$PWD/.co-evolve/runs}"
exec bash "$ROOT/co-evolve-bouncer.sh" --vanilla --bounce-only "$@" -- "$input"

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Reject output paths that alias the input

When a user runs co-evolve bounce doc.md --output doc.md, the wrapper forwards the path without checking it against the normalized input, and the underlying bouncer copies its final artifact over doc.md. This violates the new command's stated input-preservation contract and can destroy the only original document; reject output paths that resolve to the input, including symlink aliases.

Useful? React with 👍 / 👎.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant