Add opt-in PromptKit namespaces

This commit is contained in:
2026-11-07 04:23:39 +00:00
parent 8e5e64c6e9
commit 644e6c365b
12 changed files with 353 additions and 32 deletions

View File

@@ -555,6 +555,25 @@ performs a network probe. See the [PromptKit resource inspection contracts](http
A missing ID is a usage error; native lookup errors and cancellation retain
supported cause identity.
### Resource namespace selection
An application can enable resource namespace flags with `ckprompt.WithNamespaces`
and provide prompt, profile, and backend defaults. Omitted flags retain those
defaults; an explicitly empty value clears the corresponding default. Qualified
resource IDs pass through unchanged. Without the option, the application loader
controls the engine view and these flags are unavailable.
| Operation | Available namespace flags |
| --- | --- |
| `show prompt` | `--llm-prompt-namespace` |
| `show profile` | `--llm-profile-namespace` |
| `show backend` | `--llm-backend-namespace` |
| `requirements show` | `--llm-prompt-namespace`, `--llm-profile-namespace` |
| `requirements validate`, `show prepared`, `test` | All three, including `--llm-backend-namespace` |
Catalog namespace filters remain separate; configuration inspection has no
resource namespace selectors.
## PromptKit prepared-request preview
When `Suite.PrepareRequest` is present, `ckprompt.Command(suite)` installs
@@ -601,9 +620,12 @@ The command accepts:
The `promptkit` namespace identifies the operation, so there is no built-in
`--scope` flag. An explicitly empty profile or session value retains PromptKit's
native empty-string meaning. Requirements inspection does not require a profile
to be execution-ready. See the
[PromptKit v0.18.0 consumer guide](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/d9f6aad30509e538fc73ea16710df3a3ec084502/docs/consumers/pkg-promptkit.md)
native empty-string meaning. Profile selection establishes the reported profile
identity rather than changing the discovered requirements. An enabled profile
namespace qualifies an explicitly supplied short profile ID; it does not rewrite
the prompt's stored default reference. Requirements inspection does not require
the selected profile to be execution-ready. See the
[PromptKit v0.20.0 consumer guide](https://forge.maximumdirect.net/base-layer/promptkit/src/commit/8ff9aa3efdc9f16b9d2729e0a29ea083eb3c3eaf/docs/consumers/pkg-promptkit.md)
for native configuration, selection, and requirements behavior. The built-in
flags other than `--llm-var` are singleton bindings; when repeated, the last value
is used. Suite selectors retain their declared binding behavior.