Skip to content

Phases 129-130: admin model allow-lists and BYOK#118

Merged
jsilvanus merged 2 commits into
mainfrom
claude/plan-phases-129-130-0zqtj8
Jun 24, 2026
Merged

Phases 129-130: admin model allow-lists and BYOK#118
jsilvanus merged 2 commits into
mainfrom
claude/plan-phases-129-130-0zqtj8

Conversation

@jsilvanus

Copy link
Copy Markdown
Owner

Summary

  • Phase 129: gitsema admin models list|allow|deny|reset --kind <embedding|narrator|guide> [--org <name>] — superadmin-gated allow-lists for which embedding profiles / narrator / guide model configs are enabled, server-wide and per-org (org policy can only narrow, never widen past server-wide).
  • Phase 130: request-scoped BYOK credentials (--byok-http-url/--byok-api-key/--byok-model/--byok-max-tokens/--byok-temperature on CLI, equivalent fields on HTTP/MCP) for narrate/explain/guide — bypass the configured/allow-listed model entirely, never persisted.
  • Follow-up simplify pass: deduped the CLI BYOK option/parsing logic into src/cli/lib/byok.ts (was triplicated across narrate.ts/guide.ts), and collapsed modelPolicy.ts's near-duplicate allow/deny functions into shared helpers, preserving all existing public signatures.

Test plan

  • pnpm build — clean
  • pnpm test — full suite green (117 files / 1359 tests passed, 22 skipped)
  • Doc maintenance: docs/features.md, docs/PLAN.md, docs/parity.md, changeset added (.changeset/admin-locked-models-byok.md)

Generated by Claude Code

claude added 2 commits June 24, 2026 07:58
Add gitsema admin models list|allow|deny|reset for superadmin control
over which embedding profiles and narrator/guide configs are usable,
server-wide or per-org (Phase 129). Add request-scoped BYOK credentials
to narrate/explain/guide across CLI, HTTP, and MCP that bypass the
allow-list entirely and are never persisted (Phase 130).

Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
Claude-Session: https://claude.ai/code/session_01MDWd8BkGMSwZiMeDBVfvk8
Extract parseByokCliOpts/addByokOptions into src/cli/lib/byok.ts, shared by
narrate.ts/explain and guide.ts (was triplicated). Collapse modelPolicy.ts's
near-duplicate allowServer/denyServer/allowOrg/denyOrg into shared
applyAllow/applyDeny helpers, preserving all existing exported signatures.
Logs two lower-value findings (pinned-profile exemption placement, BYOK
body-shape normalization) to feature-ideas.md per the simplify-pass policy.
@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.

@jsilvanus jsilvanus merged commit e7fefea into main Jun 24, 2026
4 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.

2 participants