Skip to content

Roadmap item 6: Add inactive alternative producer config payload (Codex CLI producer) - #246

Merged
yihanzhu merged 3 commits into
mainfrom
ystack/roadmap-6/alternative-producer-config-v1
Sep 6, 2026
Merged

Roadmap item 6: Add inactive alternative producer config payload (Codex CLI producer)#246
yihanzhu merged 3 commits into
mainfrom
ystack/roadmap-6/alternative-producer-config-v1

Conversation

@yihanzhu

@yihanzhu yihanzhu commented Sep 6, 2026

Copy link
Copy Markdown
Owner

Adds the immutable producer-config payload for the alternative profile before that profile is assembled, so the assembly PR can pin a main-reachable Git object for it, the same way #231 did for the default profile. The alternative profile binds the Codex CLI producer normalizer (openai provider), so its preference differs from the default and needs its own payload.

The payload stays inactive: it grants no capability and invokes no model, credential, provider, or target.

Proof run on d46eb83:

  • bash scripts/test/alternative-producer-config.test.sh (2/2) and bash scripts/test/default-producer-config.test.sh (2/2)
  • shellcheck -x -S style scripts/test/alternative-producer-config.test.sh (ShellCheck 0.11.0)
  • bash scripts/test/portable-core-schema.test.sh → failures: 0
  • bash scripts/check-rename.sh

Construction mode: inactive output, no human gate. Roadmap item 6 wiring for the alternative harness.

🤖 Generated with Claude Code

Mirrors PR #231's default producer config with the alternative profile's
preference: openai / codex.gpt-5 / high. The payload is an immutable Git
blob; it selects nothing, drives nothing, and grants no capability.

Proof:
- shellcheck -x -S style on the new test: clean
- bash scripts/test/alternative-producer-config.test.sh: 2 focused checks passed
- bash scripts/test/default-producer-config.test.sh: 2 focused checks passed (unaffected)
- bash scripts/check-rename.sh: clean

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: d7646ed
Status: ✅  Deploy successful!
Preview URL: https://321fd3c5.fabrica-6yx.pages.dev
Branch Preview URL: https://ystack-roadmap-6-alternative.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: 1bed887
Reviewed-base: 0fbe68e
reviewer: gpt-5.5 @ high

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

The patch adds a new first-sorted CI test that assumes a cached pinned jq binary already exists. On clean CI runners this breaks the test suite, so the change is not correct as-is.

Review comment:

  • [P1] Make the new config test bootstrap jq — /var/folders/rm/bkx4f4b91vqfn79vk02pcd140000gn/T/tmp.ck1ahEe6N7/scripts/test/alternative-producer-config.test.sh:19-21
    On a clean CI runner this new test is the first *.test.sh alphabetically, because run-all.sh executes sorted filenames, but it only checks for ${TMPDIR:-/tmp}/ystack-portable-core-jq16/$asset and fails instead of downloading it. Since no earlier test has populated that cache, the required test suite will fail before reaching the existing jq-bootstrapping tests; the repo requires CI to stay green as a hard gate (AGENTS.md:86-87).

The suite sorts first among the tests, so on a clean runner no earlier suite
has filled the shared jq 1.6 cache. It now downloads the pinned release into
that cache and verifies its digest, the way the control suites do, instead of
failing when the cache is empty.

Proof: 2/2 with the cache present and 2/2 from an empty TMPDIR; shellcheck clean.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@yihanzhu

yihanzhu commented Sep 6, 2026

Copy link
Copy Markdown
Owner Author

Codex reviewer (cross-vendor, read-only)

Reviewed-head: d7646ed
Reviewed-base: 0fbe68e
reviewer: gpt-5.5 @ high

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

The added inactive alternative producer config, restore documentation, manifest entry, and focused test are consistent with the existing default producer config pattern. I did not identify any discrete correctness, security, or CI-breaking issues in the diff.

@yihanzhu
yihanzhu merged commit ab394cd into main Sep 6, 2026
3 checks passed
@yihanzhu
yihanzhu deleted the ystack/roadmap-6/alternative-producer-config-v1 branch September 6, 2026 10:15
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