Skip to content

Spec proposal: OVOS-CONTEXT-1 — Intent Context (declarative gating primitive) #17

@JarbasAl

Description

@JarbasAl

Proposal for OVOS-CONTEXT-1, the intent context specification.

Problem

Adapt's per-frame context manager provides declarative intent gating and slot pre-population, but it is engine-specific. OVOS needs an engine-agnostic version carried in the session.

Proposal

session.intent_context — a session-scoped flat map with entries {value, expires_at, turns_remaining}:

  • Key-encoded scope: bare key = shared; <skill_id>:<key> = private
  • Two-phase decay: pre-match prune (drop expired), post-match decrement of turns_remaining
  • Gates: requires_context (positive) and excludes_context (negative) on intents
  • Context-supplied captures: a gate key naming an intent slot is filled from the live entry when the utterance does not supply one
  • Bus surface: ovos.context.set / .unset / .clear / .list; orchestrator computes stored key from context.skill_id
  • Direct-mutation pathway: between match-accept and dispatch-emit

PR

PR #18

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationquestionFurther information is requested

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions