Skip to content

Roadmap item 6: Add the inactive alternative profile assembly (Codex CLI producer) - #247

Merged
yihanzhu merged 2 commits into
mainfrom
ystack/roadmap-6/alternative-profile-assembly-v1
Sep 6, 2026
Merged

Roadmap item 6: Add the inactive alternative profile assembly (Codex CLI producer)#247
yihanzhu merged 2 commits into
mainfrom
ystack/roadmap-6/alternative-profile-assembly-v1

Conversation

@yihanzhu

@yihanzhu yihanzhu commented Sep 6, 2026

Copy link
Copy Markdown
Owner

Assembles the alternative profile: the same six-role team as the default profile with one swap, the Codex CLI producer (openai provider) in place of Claude Code. Its producer manifest points at adapters/codex-cli-producer/v1/normalize.jq at the durable main commit that carries it, and the producer binding pins profiles/alternative/v1/producer-config.json (#246) by Git object. The other five manifests are byte-identical copies of the default ones. This is the item 6 wiring that shows one core contract drives either harness.

The profile is inactive and selects nothing: not resolved, qualified, installed, or activated; grants no authority; invokes no model, credential, provider, publisher, or target. GitLab remains an observation payload like the GitHub forge.

Review-size note: 525 net lines, of which 467 are the focused suite mirroring default-profile-assembly.test.sh (resolution through the inactive resolver, exact Git identities of every ref against origin/main, the producer manifest contract, end-to-end normalization of changed and unchanged Codex CLI snapshots, and a diff assertion that the only differences from the default profile are the producer binding and the profile id).

Proof run on 0de1d55:

  • bash scripts/test/alternative-profile-assembly.test.sh (10/10) and bash scripts/test/default-profile-assembly.test.sh (7/7)
  • shellcheck -x -S style scripts/test/alternative-profile-assembly.test.sh (ShellCheck 0.11.0)
  • bash scripts/test/portable-core-schema.test.sh → failures: 0
  • bash scripts/check-rename.sh; required-files structure check, each path listed once

Construction mode: inactive output, no human gate.

🤖 Generated with Claude Code

…CLI producer)

What: adds profiles/alternative/v1/ — a second six-role profile that is the
default team with one swap. The producer is the Codex CLI harness instead of
Claude Code: its manifest points at adapters/codex-cli-producer/v1/normalize.jq
at the durable main commit that carries it, and its binding asks for the openai
provider, the codex.gpt-5 model, and pins profiles/alternative/v1/producer-config.json
by Git object. The other five manifests (CI, forge, publisher, reviewer,
verifier) are the default ones byte for byte. The producer keeps its own
principal.codex-producer and boundary.codex-producer so protected roles stay
separated. A new focused suite mirrors the default one and also asserts the two
profiles differ only in the producer binding and the profile id. README, RESTORE,
and ci/required-files.txt record the new block.

Why: item 6 asks for a second harness under the same core contract. Until a
profile actually binds the Codex CLI producer payload, nothing proves one core
contract can drive either harness. This is the wiring that proves it.

This is source data only. The profile is inactive: it selects nothing, is not
resolved, qualified, installed, or activated, grants no authority, and cannot
invoke a model, use a credential, contact a provider, publish, or touch a target.
GitLab stays an observation payload, the same way the GitHub forge does.

Proof (run on this tree before commit):
- /opt/homebrew/bin/shellcheck -x -S style scripts/test/alternative-profile-assembly.test.sh — clean (shellcheck 0.11.0)
- bash scripts/test/alternative-profile-assembly.test.sh — alternative profile assembly: 10 focused checks passed
- bash scripts/test/default-profile-assembly.test.sh — default profile assembly: 7 focused checks passed
- bash scripts/check-rename.sh — clean, no old names in tracked files

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Sep 6, 2026

Copy link
Copy Markdown

Deploying ystack with  Cloudflare Pages  Cloudflare Pages

Latest commit: 8dc8bd5
Status: ✅  Deploy successful!
Preview URL: https://252f1319.fabrica-6yx.pages.dev
Branch Preview URL: https://ystack-roadmap-6-alternative-6kxc.fabrica-6yx.pages.dev

View logs

@yihanzhu

yihanzhu commented Sep 6, 2026

Copy link
Copy Markdown
Owner Author

Codex reviewer (cross-vendor, read-only)

Reviewed-head: 8dc8bd5
Reviewed-base: a6d3f1b
reviewer: gpt-5.5 @ high

Posted verbatim by codex-review.sh (codex exec review --json --base refs/codex-review/247-95357/base in an isolated temp worktree, sandbox forced read-only). Comments only — Codex never pushes, approves, or merges.

I did not identify any discrete correctness, security, or maintainability issues introduced by this diff. The new inactive alternative profile data and focused test are consistent with the existing default profile assembly patterns.

@yihanzhu
yihanzhu merged commit eedbde0 into main Sep 6, 2026
2 checks passed
@yihanzhu
yihanzhu deleted the ystack/roadmap-6/alternative-profile-assembly-v1 branch September 6, 2026 15:44
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.

2 participants