Repository navigation
Bundle portable coordinator skill and harden review closeout - #11
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 97714d9548
ℹ️ 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".
| build: | ||
| context: ../ | ||
| dockerfile: demo/Dockerfile | ||
| user: "${UID:-1000}:${GID:-1000}" |
There was a problem hiding this comment.
Run the demo with a writable host identity
On Linux hosts whose UID/GID is not 1000, the documented demo/run.sh invocation creates home/app, home/state, and home/codex as the caller but never exports UID or GID, so Compose normally falls back to 1000:1000 and the container cannot write those bind mounts. Conversely, explicitly supplying a non-1000 UID leaves that process unable to create the Codex installation under /home/node/.local, since the image home remains owned by UID 1000. Pass the actual IDs from run.sh and provide that identity a writable home/install path.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
🟡 Changes recommended
The demo Compose flow has a likely shell-invocation breakage (sh -l) and the new closeout/review coverage logic has an edge case for judge review dependencies that can incorrectly force review waivers.
Once you've addressed the issues Copilot identified, you can request another Copilot review.
Pull request overview
This PR makes the skill/ directory a self-contained, portable runtime artifact while upgrading the Coordinator state machine to schema v7 with dynamic runtime graphs (observations, projections, runtime reconciliation/expansion) and hardened workflow closeout (integrated review coverage or explicit waiver). It also refreshes documentation, tests, CI scope, and replaces the old root Docker demo with a demo/-scoped flow.
Changes:
- Bundle the runnable Coordinator runtime under
skill/scripts/lib/coordinatorand update tests/CI to import and validate against the bundled runtime. - Introduce schema v7 runtime control plane:
runtime_graphvalidation,node-observe,graph-reconcile,graph-expand-auto, completion judge gates/loops, and runtime-aware planning diagnostics. - Harden closeout semantics: require integrated review coverage for completed artifact nodes or a non-blank
review_waiver, and recordreview_waivedevents.
File summaries
| File | Description |
|---|---|
| tests/test_state.py | Updates test import path to bundled runtime; adds/updates assertions for schema v7 and review waiver closeout. |
| tests/test_routing.py | Updates routing tests to import from bundled runtime. |
| tests/test_dynamic_runtime.py | Adds a comprehensive test suite for schema v7 runtime graphs, reconciliation, expansions, gates, and loops. |
| tests/test_contract.py | Removes prior contract test module (contract assertions appear to be redistributed into targeted suites). |
| skill/SKILL.md | Updates protocol documentation for schema v7 runtime graphs and closeout review waiver rules. |
| skill/scripts/lib/coordinator/state/store.py | Core implementation of schema v7, runtime graph validation and mutations, judge gates/loops, runtime diagnostics, and closeout hardening. |
| skill/scripts/lib/coordinator/state/init.py | Adds public state package exports (StateStore, StateError, validate_state). |
| skill/scripts/lib/coordinator/routing/selector.py | Adds deterministic, validated routing selector and profile/task validation. |
| skill/scripts/lib/coordinator/routing/init.py | Adds routing package marker/docstring. |
| skill/scripts/lib/coordinator/cli/state.py | Extends state CLI with runtime graph and judge gate commands plus --review-waiver. |
| skill/scripts/lib/coordinator/cli/routing.py | Adds routing CLI adapter to run the selector with stable outcome formatting. |
| skill/scripts/lib/coordinator/cli/outcome.py | Adds shared stable CLI outcome schema and consistent JSON/error emission. |
| skill/scripts/lib/coordinator/cli/init.py | Adds CLI package marker/docstring. |
| skill/scripts/lib/coordinator/init.py | Adds runtime package marker/docstring. |
| skill/references/workflow-protocol.md | Updates protocol reference for runtime observations/reconciliation and judge gates/loops plus closeout rules. |
| skill/references/state-schema.md | Updates schema reference to v7, including runtime_graph structure and invariants. |
| skill/references/model-routing.md | Updates routing reference to schema v7 and clarifies runtime projections don’t alter routing demand. |
| skill/references/dynamic-runtime-graphs.md | Adds a dedicated reference doc for runtime graph commands, payloads, bounds, and invariants. |
| skill/references/complexity-accounting.md | Documents runtime projection semantics alongside rubric-v2 assessment. |
| skill/README.md | Clarifies portable installation and documents new runtime graph/judge/waiver features. |
| skill/LICENSE | Adds an MIT license file under skill/ for the portable artifact. |
| README.md | Updates install and demo instructions to reflect skill/ as the artifact and the new demo/ flow. |
| README.es.md | Same as README.md (Spanish translation updates). |
| README.pt-BR.md | Same as README.md (Portuguese translation updates). |
| README.zh-CN.md | Same as README.md (Chinese translation updates). |
| prompt.md | Removes the old root-level demo prompt asset. |
| INSTALL.md | Updates installer instructions to copy skill/ as-is (no assembly step). |
| demo/run.sh | Adds demo runner script that rebuilds/tears down and recreates demo home directories. |
| demo/prompt.md | Adds a new demo prompt for generating a Node/SQLite todo app under the demo home directory. |
| demo/Dockerfile.dockerignore | Adds Dockerfile-scoped ignore to keep the demo image build context empty. |
| demo/Dockerfile | Adds a simple Node-based image used by the demo compose workflow. |
| demo/compose.yaml | Adds new demo compose workflow that installs Codex in-container and runs it against the mounted skill. |
| demo/.gitignore | Ignores demo .env and generated home/ directory. |
| CONTRIBUTING.md | Updates contribution guidance and local commands to target skill/scripts rather than src. |
| compose.yaml | Removes the old root-level compose-based demo. |
| ANALYZES.md | Removes the prior deep analysis document from the repository root. |
| .github/workflows/ci.yml | Updates CI to lint/compile skill/scripts and tests (drops src from these steps). |
Review details
- Files reviewed: 29/37 changed files
- Comments generated: 2
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| - -c | ||
| - | | ||
| set -e | ||
| curl -fsSL https://chatgpt.com/codex/install.sh | CODEX_NON_INTERACTIVE=1 sh -l |
| @@ -0,0 +1,5 @@ | |||
| FROM node:latest | |||
Summary
skill/a self-contained installation artifactValidation