Require content kinds for extension prompt fragments (#40177)

## What changed

- Require each `PromptFragment` to include a producer-owned `ContentItemKind`.
- Re-export `ContentItemKind` from `codex_extension_api` and assign stable kinds to skills, memories, examples, and test contributors.
- Limit prompt slots to developer policy and developer capabilities, and combine contributed fragments into a single developer update.

## Testing

- Update extension registry tests to verify fragment ordering with the new content-kind metadata.

GitOrigin-RevId: ef8624a9b4ae9dce025bca9c0954d91dd8075e85
This commit is contained in:
pakrym-oai authored and copyberry committed 2026-08-23 03:12:58 +00:00
1 parent eff640f458
commit 546eed94ac
9 files changed
+67 -83

No files matched your search

+7 -1
View File
@@ -9,6 +9,7 @@ use codex_exec_server::FileSystemSandboxContext;
use codex_exec_server::LOCAL_ENVIRONMENT_ID;
use codex_exec_server::ResolvedSelectedCapabilityRoot;
use codex_extension_api::ConfigContributor;
use codex_extension_api::ContentItemKind;
use codex_extension_api::ContextContributor;
use codex_extension_api::ContextualUserFragment;
use codex_extension_api::ExtensionData;
@@ -236,7 +237,12 @@ where
}
rendered
.fragment
.map(|fragment| PromptFragment::developer_capability(fragment.render()))
.map(|fragment| {
PromptFragment::developer_capability(
fragment.render(),
ContentItemKind("skills.catalog".to_string()),
)
})
.into_iter()
.collect()
})