P1 — support parameterized user commands, collisions, revocation and atomic hot reload #165

Closed
opened 2026-08-22 21:54:10 +00:00 by lost-rob0t · 0 comments
lost-rob0t commented 2026-08-22 21:54:10 +00:00 (Migrated from github.com)

Parent epic: #151
Depends on: #164

Goal

Make authored commands first-class parameterized semantic intents and harden their lifecycle under conflicts/provider changes.

Scope

  • user-defined typed slots reuse #150 validators/dialogue;
  • trigger templates/aliases are bounded and deterministically parsed;
  • missing slots ask through the normal clarification state machine;
  • built-in and user-command collision policy explicit and tested;
  • command-to-command ambiguity produces clarification/conflict, not first-match accidents;
  • capability/provider permission revocation takes effect without rewriting stored semantic intent;
  • disabled/unavailable provider yields typed unavailable/denied result;
  • atomic hot reload while concurrent turns execute;
  • version migration and rollback/undo behavior.

Examples/tests

  • focus timer for 35 minutes and bare focus timer -> How long?;
  • exact built-in collision rejected or handled by explicit researched override policy;
  • two similar user triggers ambiguity;
  • edit slot type/default while command active;
  • revoke open-app capability then invoke command;
  • reload crash/failure leaves previous valid registry active;
  • concurrent old/new registry readers see coherent snapshots;
  • principal A/B identical trigger names remain independent.

Acceptance

Parameterized authored commands behave exactly like built-in semantic intents for slot completion/provider policy while retaining safe versioned ownership and hot-reload semantics.

Parent epic: #151 Depends on: #164 ## Goal Make authored commands first-class parameterized semantic intents and harden their lifecycle under conflicts/provider changes. ## Scope - user-defined typed slots reuse #150 validators/dialogue; - trigger templates/aliases are bounded and deterministically parsed; - missing slots ask through the normal clarification state machine; - built-in and user-command collision policy explicit and tested; - command-to-command ambiguity produces clarification/conflict, not first-match accidents; - capability/provider permission revocation takes effect without rewriting stored semantic intent; - disabled/unavailable provider yields typed unavailable/denied result; - atomic hot reload while concurrent turns execute; - version migration and rollback/undo behavior. ## Examples/tests - `focus timer for 35 minutes` and bare `focus timer` -> `How long?`; - exact built-in collision rejected or handled by explicit researched override policy; - two similar user triggers ambiguity; - edit slot type/default while command active; - revoke open-app capability then invoke command; - reload crash/failure leaves previous valid registry active; - concurrent old/new registry readers see coherent snapshots; - principal A/B identical trigger names remain independent. ## Acceptance Parameterized authored commands behave exactly like built-in semantic intents for slot completion/provider policy while retaining safe versioned ownership and hot-reload semantics.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
nsaspy/zara#165
No description provided.