Skip to content

feat: expose managed artifact requirements#21414

Merged
viyatb-oai merged 0 commit intocodex/viyatb/managed-plugin-entrypointsfrom
codex/viyatb/managed-artifact-enforcement
May 7, 2026
Merged

feat: expose managed artifact requirements#21414
viyatb-oai merged 0 commit intocodex/viyatb/managed-plugin-entrypointsfrom
codex/viyatb/managed-artifact-enforcement

Conversation

@viyatb-oai
Copy link
Copy Markdown
Collaborator

@viyatb-oai viyatb-oai commented May 6, 2026

Superseded by #21413. During a stack restack, GitHub marked this stacked PR merged once its head commit became contained in its base branch. Nothing from this PR landed on main.

Why

Once the lower stack adds the local contract and enforcement, the same requirements shape also needs to travel through cloud-managed requirements and app-server inspection APIs. Without that propagation layer, local requirements.toml would work but enterprise-managed surfaces would lag behind the runtime capability.

This PR is only the management/exposure layer on top of the lower stack. It does not add new enforcement behavior.

What changed

  • Added cloud-requirements parsing coverage for:

    [skills]
    allowed_sources = ["system", "admin", "plugin"]
    
    [plugin_marketplaces]
    allowed_names = ["openai-curated", "arm-internal"]
    allow_user_additions = false
  • Exposed the new managed requirements through configRequirements/read.

  • Regenerated the app-server protocol JSON and TypeScript schemas for the new response fields.

  • Updated the app-server README example to include the managed artifact requirements.

Verification

  • Added cloud parsing coverage in codex-rs/cloud-requirements/src/lib.rs.
  • Updated protocol coverage in codex-rs/app-server-protocol/src/protocol/v2/tests.rs.

Stack

Copy link
Copy Markdown
Contributor

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

let config_version = version_for_toml(&config.config_layer_stack.effective_config());
if !force_reload
&& let Some(outcome) =
self.cached_enabled_outcome(&config_version, plugin_hooks_enabled)
{
return outcome;

P1 Badge Include marketplace requirements in plugin cache key

plugins_for_config reuses a cached outcome using only the effective config TOML and hooks flag. The new marketplace filtering is based on config_layer_stack.requirements(), which effective_config() explicitly excludes, so two configs with identical TOML but different managed allowlists will share a cache entry and can keep disallowed plugins effective until a manual reload.


if use_cwd_cache
&& !force_reload
&& let Some(outcome) = self.cached_outcome_for_cwd(&input.cwd)
{
return outcome;

P1 Badge Key skill cwd cache by managed requirements

The cwd cache returns before the new retain_allowed_skill_roots filter runs. Because the key is only input.cwd, loading a cwd once without skill-source restrictions and then applying managed skills.allowed_sources for the same cwd returns the stale unrestricted outcome, leaving user/repo/plugin skills visible despite the new policy.

ℹ️ 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".

@viyatb-oai viyatb-oai force-pushed the codex/viyatb/managed-artifact-enforcement branch 2 times, most recently from f97185c to 50ae2b5 Compare May 6, 2026 21:45
@viyatb-oai viyatb-oai force-pushed the codex/viyatb/managed-artifact-requirements branch from 30b7766 to 5bc2238 Compare May 6, 2026 21:45
@viyatb-oai viyatb-oai changed the title feat: enforce managed artifact requirements feat: expose managed artifact requirements May 6, 2026
@viyatb-oai viyatb-oai force-pushed the codex/viyatb/managed-artifact-enforcement branch 3 times, most recently from 1f2d2da to 0fdfd1b Compare May 6, 2026 23:26
@viyatb-oai viyatb-oai force-pushed the codex/viyatb/managed-artifact-requirements branch from 51ff359 to 0427128 Compare May 7, 2026 01:07
@viyatb-oai viyatb-oai force-pushed the codex/viyatb/managed-artifact-enforcement branch 2 times, most recently from 9fa68a2 to f224caa Compare May 7, 2026 01:19
@viyatb-oai viyatb-oai force-pushed the codex/viyatb/managed-artifact-requirements branch from 9e470f0 to 42e8036 Compare May 7, 2026 01:39
@viyatb-oai viyatb-oai force-pushed the codex/viyatb/managed-artifact-enforcement branch from f224caa to c5022b1 Compare May 7, 2026 01:39
@viyatb-oai viyatb-oai changed the base branch from codex/viyatb/managed-artifact-requirements to codex/viyatb/managed-plugin-entrypoints May 7, 2026 01:39
@viyatb-oai viyatb-oai force-pushed the codex/viyatb/managed-artifact-enforcement branch from c5022b1 to 58cde56 Compare May 7, 2026 02:07
@viyatb-oai viyatb-oai merged commit 58cde56 into codex/viyatb/managed-plugin-entrypoints May 7, 2026
@viyatb-oai viyatb-oai force-pushed the codex/viyatb/managed-plugin-entrypoints branch from 5285721 to d6f1e19 Compare May 7, 2026 02:07
@viyatb-oai viyatb-oai deleted the codex/viyatb/managed-artifact-enforcement branch May 7, 2026 02:07
@github-actions github-actions Bot locked and limited conversation to collaborators May 7, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant