Skip to content

Add scope-based model allowlists - #359

Closed
websideofamir wants to merge 1 commit into
yc-software:mainfrom
websideofamir:project-model-policy
Closed

Add scope-based model allowlists#359
websideofamir wants to merge 1 commit into
yc-software:mainfrom
websideofamir:project-model-policy

Conversation

@websideofamir

@websideofamir websideofamir commented Aug 12, 2026

Copy link
Copy Markdown

Summary

  • add a deployment-owned model allowlist keyed by QM scope IDs
  • resolve access as organization models plus exactly one active scope
  • enforce scoped defaults and direct model requests across web, Slack, and runtime dispatch
  • add an administrator-only project instructions editor backed by existing durable SOUL

Policy behavior

Defaults resolve in this order:

  1. active scope default
  2. organization default
  3. first effective allowed model

Personal, team, channel, and group grants never follow an actor into another scope. Custom-provider registration and credentials are unchanged.

Validation

  • focused Core model, runtime, turn, capability, project, and SOUL tests
  • Web UI test suite: 501 passed
  • root TypeScript typecheck
  • focused ESLint and Prettier checks
  • Web UI production build
  • live Firefox QA against a production-shaped dev instance

The full root test command had three unrelated existing failures in OpenCode startup output, dependency lock materialization, and inherited pager environment. Contract typecheck also cannot resolve the workspace's @yc-software/qm/contract package.

Screenshot

Synthetic local project data in Firefox:

Project model policy and instructions


View with [code]smith Autofix with [code]smith
Need help on this PR? Tag @codesmith-bot with what you need. Autofix is disabled.

Summary:
- resolve model access from the organization plus active scope
- enforce file-managed models across runtime and surface paths
- add an admin-only project instructions editor

Rationale:
- deployments need durable model boundaries without provider UI changes
- personal and team access must never follow actors into other scopes

Tests:
- focused Core model, turn, capability, and SOUL tests
- Web UI test suite and production build
- typecheck and focused lint
- live Firefox project-page QA
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