feat: CONTEXT-1 producer emission + drop generic register_regex (for #431)#452
Merged
JarbasAl merged 4 commits intoJul 2, 2026
Merged
Conversation
Regex intents are adapt-engine only with no spec equivalent, so there is no generic `register_regex` on IntentServiceInterface — the sole entry point is `register_adapt_regex` (self-contained; munges + emits the legacy adapt vocab). Skill regex loaders call `register_adapt_regex`. Every IntentServiceInterface back-compat facade delegate now emits a DeprecationWarning pointing at the spec-compliant replacement (keyword/template registration, set_intent_context, spec deregistration). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…text Attach the CONTEXT-1 gating declarations to the INTENT-4 registration payloads so the engine-side gate is fed by real skills: - ovos.intent.register.keyword and ovos.intent.register.template payloads carry requires_context / excludes_context (default [], shape-stable). - register_intent / register_intent_file (OVOSSkill) and the @intent_handler decorator gain optional requires_context / excludes_context params, threaded through to the emit. - OVOSSkill.set_intent_context / remove_intent_context expose the §5.3 surface. - IntentLayers activate a real requires_context: ["layer_<name>"] gate (engine-agnostic) via set_intent_context; the legacy adapt layer_<name> vocab token is kept as a deprecated bridge. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Keeps the register_template call shape unchanged for the common (no-context) path so existing callers and their mocks are unaffected; the payload stays shape-stable because register_template defaults the fields to []. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Contributor
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stacks on #431 (
feat/intent-4-producer). Two pieces the user requested that were dropped by a force-push of #431 — preserved here so they survive:1.
register_regexremoved / facade deprecations — regex is adapt-only, so there is no genericregister_regexonIntentServiceInterface; the sole path isregister_adapt_regex(self-contained). Every back-compat facade delegate now emits aDeprecationWarningpointing at its spec replacement.2. OVOS-CONTEXT-1 §6 producer emission — the engines + core already consume
requires_context/excludes_context, but the producer never emitted them (architecture review flagged the gate as inert for real skills). Now:ovos.intent.register.keyword/.templatepayloads carryrequires_context/excludes_context(default[], shape-stable).register_intent/register_intent_file+@intent_handlergain the params;OVOSSkill.set_intent_context/remove_intent_contextexpose the §5.3 surface.requires_context: ["layer_<name>"]gate (engine-agnostic), keeping the legacy adapt token as a deprecated bridge.Full workshop unit suite: 497 passed (register_template call kept shape-stable for no-context callers so existing mocks are unaffected).
🤖 Generated with Claude Code