Skip to content

Require explicit activation and add safe GPT-5.6 routing#23

Merged
beefiker merged 32 commits into
mainfrom
codex/gpt-5-6-model-policy
Jul 10, 2026
Merged

Require explicit activation and add safe GPT-5.6 routing#23
beefiker merged 32 commits into
mainfrom
codex/gpt-5-6-model-policy

Conversation

@beefiker

@beefiker beefiker commented Jul 9, 2026

Copy link
Copy Markdown
Owner

Summary

  • require explicit leading Superloopy aliases or structured SUPERLOOPY_STEER before prompt-hook activation; ordinary frontend/backend/Korean prose stays inert, and unchanged compatibility sessions stay quiet
  • prefer complete GPT-5.6 Terra/Sol/Luna model/effort/tier tuples and select the declared GPT-5.5 compatibility tuple per profile only when preferred models are unavailable
  • safely adopt the exact six-file Superloopy 0.7.2 legacy fleet without --force, while preserving unrelated personal agents and refusing edited, partial, mixed, or symlinked fleets
  • automatically reconcile the generated wrapper, all six agents, and routing state on the first approved SessionStart after an install or upgrade, with no post-upgrade migration command
  • diagnose missing legacy state, unmanaged conflicts, split-brain wrappers, and the host's unresolved-model attestation boundary
  • ship the feature as Superloopy 0.9.0 with synchronized Codex, Claude, marketplace, package, and lockfile metadata

Activation behavior

  • complete leading loopy / 루피 invocations and documented aliases still activate Superloopy
  • Korean particle forms such as loopy가, 루피는, and incidental UI/frontend vocabulary do not activate it
  • plain backend errors with frontend symptoms receive no specialist steer
  • structured steering and explicit $superloopy:superloopy-frontend (Codex) or /superloopy:superloopy-frontend (Claude) invocation remain available
  • CLI references such as loopy loop status? stay references, while explicit tasks such as loopy loop review feedback until clean activate normally

Model routing lifecycle

  • model-policy.json is the source of truth and declares gpt-5.5 as the compatibility model
  • stable model/list is queried only when state is missing, policy/target changed, the cache is at least 24 hours old, or refresh is explicit
  • a successful probe selects the first fully supported complete tuple for each profile
  • an unknown first probe conservatively installs GPT-5.5 compatibility; an unknown refresh preserves a valid prior selection
  • definitions are fixed before launch; there is no post-launch retry or model switch
  • ordinary doctor never probes; doctor --refresh-models performs a read-only live comparison, including before managed state exists

Legacy migration and managed-file safety

  • a versioned SHA-256 manifest identifies only the six exact bundled 0.7.2 agent files as safely adoptable legacy state
  • exact legacy fleets upgrade transactionally for handled failures without --force, with LF/CRLF checkout equivalence for release ownership; an edit, missing owned file, mixed version, or symlink fails closed as unmanaged_conflict
  • unrelated personal files such as personal.toml coexist and remain byte-for-byte untouched
  • all six agents resolve and preflight before mutation
  • policy-version refresh retains only proven schema/target/hash ownership, so matching managed files upgrade without --force while user edits remain conflicts
  • canonical target and state identities use ordered in-process and cross-process locks; later alias retargeting cannot redirect the locked operation
  • original inodes move to verified backups, staged files install with no-replace hard links, and handled rename/state failures restore original inode metadata
  • rollback quarantines and verifies public paths before cleanup, refuses to overwrite concurrent replacements, and surfaces preserved-backup cleanup failures
  • abrupt process termination is outside the handled-failure rollback guarantee and may require manual recovery from preserved private backups

Automatic upgrade migration

  • the new plugin version's approved SessionStart runs reconciliation directly from its own plugin root, independent of an older wrapper
  • exact legacy and hash-proven managed fleets migrate automatically; unchanged fresh state is silent, query-free, and rewrite-free
  • recognized generated wrappers repoint automatically through verified no-follow file handles, while foreign or raced symlink wrappers are preserved and reported separately from agent migration
  • SessionStart never recommends --force or a Superloopy migration command; an edited or unsafe fleet is preserved for review
  • normal marketplace upgrades require only the Codex-managed update, hook approval when prompted, and a host restart when changed definitions need reloading

Diagnostics and runtime boundary

  • doctor distinguishes legacy_unmanaged, unmanaged_conflict, preferred availability, compatibility-only availability, and unknown catalog state
  • a generated wrapper targeting a different Superloopy root is reported as split-brain with a direct repair command
  • the host contract reports model_unverified when the spawn API does not expose agent_type or resolved-model attestation
  • routing configuration can request and gate GPT-5.6 definitions, but it does not claim a live model was used unless the host attests the resolved model

Validation

  • npm test — 540/540 passing
  • isolated node src/cli.js doctor --refresh-models --jsonok: true
  • live read-only model/list on this account — succeeded with compatibility-only availability; the isolated doctor selected the declared GPT-5.5 tuples because GPT-5.6 was not visible
  • real 0.7.2 local fleet migration — all six agents upgraded without --force; managed state written and wrapper repointed to installed 0.9.0
  • npm pack --dry-run --json — 446 entries, required routing/migration files included, and .claude/scheduled_tasks.lock excluded
  • git diff --check and the 550-line reviewability gate — passing
  • independent code review — approved with no Critical or Important findings

After installation, Codex must be restarted so newly materialized agent definitions are loaded. Existing subagent processes do not change model in place.

@beefiker beefiker changed the title Require explicit activation and document GPT-5.6 model policy Require explicit activation and add safe GPT-5.6 routing Jul 10, 2026
@beefiker
beefiker marked this pull request as ready for review July 10, 2026 03:53

@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: 63747642dc

ℹ️ 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 src/installed-model-policy.js Outdated
@beefiker

Copy link
Copy Markdown
Owner Author

@codex review.

@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: cac88394e9

ℹ️ 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 test/model-catalog.test.js Outdated
Keep unchanged compatibility sessions quiet, preserve canonical lock targets, and close wrapper and rollback path races. Harden repair hints, model-policy invariants, help exits, readiness coverage, and package hygiene.
@beefiker

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@beefiker

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@beefiker

Copy link
Copy Markdown
Owner Author

@codex review

@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

@beefiker
beefiker merged commit c27f42a into main Jul 10, 2026
6 checks passed
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