Skip to content

Roll out Open Pstack 1.5.0 to Claude Code and Codex on the Mac and studio2 #89

Description

@ericlitman

Goal

Move both of Eric's hosts (this Mac and studio2) to the released Open Pstack 1.5.0 in Claude Code and Codex. Bring both model sheets in line with it. Eric answers the setup prompts.

Depends on

#88 must be merged, with v1.5.0 tagged and the release published. Tracked in Linear as PSTACK-3.

Installed state

Read it back on each host before step 1: the Claude Code and Codex pstack versions, the Codex marketplace ref, and which sheets exist, with their sha256. The 2026-09-24 version of this section was wrong for pro14. On pro14 on 2026-09-30:

  • Claude Code runs pstack@open-pstack 1.2.1 (f466256), last updated from the marketplace on 2026-09-01. The update to 1.5.0 therefore also brings the 1.3.0-1.4.1 changes: forge-neutral shipping, the retired How critics, and the evidence-label rule.
  • Legacy plugin. pstack@pstack-claude 0.9.12 is installed and set to false in ~/.claude/settings.json.
  • Codex tracks [marketplaces.open-pstack] ref = "main" in ~/.codex/config.toml, with cached plugin 1.4.1.
  • Sheets. ~/.claude/pstack-models.md, ~/.codex/pstack-models.md and the bounded <!-- pstack:models:begin --> … <!-- pstack:models:end --> block of ~/.codex/AGENTS.md are byte-identical. The rows use all four families at xhigh (fable, sol, grok:grok-4.6, opus), Sol xhigh on bug-fix/perf-issue/hillclimb, and a retired how critics row. Because a sheet exists in both harnesses, the update keeps Eric's roles. Only setup's role question moves them to the new defaults.

Steps (this Mac first, then studio2)

  1. Update Claude Code. Run claude plugin marketplace update open-pstack, then update pstack@open-pstack (with claude plugin update pstack@open-pstack or /plugin). Restart and confirm it reports 1.5.0.
    • On studio2, check that pstack@pstack-claude is false in ~/.claude/settings.json. If it is true, ask Eric before disabling it.
    • If the host has no Claude sheet, write none unless Eric chose to keep Fable. If it has one, copy it to ~/.claude/pstack-models.md.bak-pre-1.5.0 and run /pstack:setup-pstack. Setup lists how critics as dropped and asks for replacements for the grok:grok-4.6 rows (answer Grok family). Eric answers the role question, as in step 5. Confirm, and setup writes the sheet.
  2. Back up Codex. Copy ~/.codex/config.toml, ~/.codex/AGENTS.md and, if it exists, ~/.codex/pstack-models.md to *.bak-pre-1.5.0 alongside the originals.
  3. Seed the sheet file only if it is missing. An existing ~/.codex/pstack-models.md is setup's source of truth, as on pro14; leave it. If it is missing, write the exact bytes between the begin and end marker lines of ~/.codex/AGENTS.md (markers excluded) to it.
  4. Upgrade Codex. In ~/.codex/config.toml, change the ref under [marketplaces.open-pstack] (main on pro14) to ref = "v1.5.0". Run codex plugin marketplace upgrade open-pstack, then codex plugin add pstack@open-pstack, and confirm that diff -rq between ~/.codex/plugins/cache/open-pstack/pstack/1.5.0 and plugins/pstack in a checkout of v1.5.0 prints nothing. (codex plugin marketplace add only adds sources; it does not re-point an existing one.)
  5. Rerun setup in Codex. Run pstack:setup-pstack from a Codex session that can reach the Grok CLI (see PR docs(dispatch): note that Grok lanes need an unsandboxed Codex parent #82).
    • It lists how critics as dropped.
    • It reports the grok:grok-4.6 rows for replacement. Answer Grok family, which gives grok:grok-4.7.
    • The role question follows Eric's decision: keep the four-family panel, or change the panels and the judgment/prose, hardest-tasks and How-explainer roles to the new defaults.
    • It asks one effort question per assigned family. The probes pass.
    • Confirm. Setup writes the sheet and the bounded block and runs its smoke.
  6. Smoke Claude Code. Run /pstack:interrogate in Claude Code on a one-file scratch diff and note the lanes. Codex needs no extra smoke; setup's own step 9 already ran a mixed panel there.
  7. Record the results as one issue comment per host: installed versions, the Claude and Codex sheet diffs against their backups (for Codex, diff <(sed -n '/pstack:models:begin/,/pstack:models:end/p' ~/.codex/AGENTS.md.bak-pre-1.5.0 | sed '1d;$d') ~/.codex/pstack-models.md), and the smoke results.

Rollback

  • Codex: restore the .bak-pre-1.5.0 files and delete ~/.codex/pstack-models.md if step 3 created it. A restored ref = "main" would reinstall 1.5.0, so set ref to the tag of the recorded version (v1.4.1 on pro14). Then run codex plugin marketplace upgrade open-pstack and codex plugin add pstack@open-pstack.
  • Claude Code: restore ~/.claude/pstack-models.md.bak-pre-1.5.0 if step 1 made one. Then ship a fix release, or load a checkout of the recorded version (v1.2.1 on pro14) with claude --plugin-dir until one ships.

Out of scope

  • No repository changes and no new tooling.
  • Do not uninstall or disable any plugin without Eric's OK.

Acceptance

On both hosts:

  • Claude Code reports pstack@open-pstack 1.5.0, and interrogate runs the trio (or Eric's chosen roles).
  • Codex reports 1.5.0. Its sheet and AGENTS.md block match and contain no how critics or grok-4.6 rows. Setup's probes and smoke passed.
  • A Claude sheet, where the host has one, contains no how critics or grok-4.6 rows.
  • The evidence is recorded on this issue.

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions