spec: stop-1.md — recency-targeted stop (no escalation on silence), RECOMMENDED timeouts, shared_pipeline_id defined#117
Draft
JarbasAl wants to merge 1 commit into
Draft
spec: stop-1.md — recency-targeted stop (no escalation on silence), RECOMMENDED timeouts, shared_pipeline_id defined#117JarbasAl wants to merge 1 commit into
JarbasAl wants to merge 1 commit into
Conversation
…COMMENDED ping timeout, shared_pipeline_id defined Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
Important Review skippedDraft detected. 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.
Refines OVOS-STOP-1 for internal purity and self-consistency (per-file split of the consistency audit).
Changes
active_handlersentry and MUST NOT escalate toglobal_stop. A pong can be absent for reasons unrelated to stoppability (busy handler thread, satellite round-trip beyond the ping window); escalating a missed sub-second reply to a session-wide wipe destroys converse state, response modes, and unrelated skills' activity. Recency-targeted stop degrades gracefully — at worst the dispatch is a no-op.global_stopnow has exactly two triggers: explicit global-stop vocabulary and emptyactive_handlers.<shared_pipeline_id>defined precisely (§5.2): thepipeline_idof the stop plugin instance whosematchproduced the Match — the identity theglobal_stopdispatch addresses and PIPELINE-1 §7.1 stamps; "shared" across multiple §3.1session.pipelineentries resolving to that instance, which MUST deduplicate to exactly oneovos.stopbroadcast per global stop event per session (dedup stays MUST).blacklisted_intentsoperationalised (§6.3): the plugin MUST NOT return a Match whose<Match.skill_id>:<Match.intent_name>appears in the list; a stop utterance resolving toglobal_stopis governed by theglobal_stopentry.can_handle) is protocol-local (CONVERSE usesresult, COMMON-QUERYcan_answer).Principle
MUST/MUST NOT mark correctness invariants (dedup-to-one-
ovos.stop, no escalation on silence, blacklist honouring); timing values are RECOMMENDED defaults. Silence is evidence of latency, not of absence of activity — destructive escalation must require positive intent (explicit vocabulary), never a timeout.Versionstays2: VERSIONING.md defines the field as the V0-compatibility class, which these edits do not change.🤖 Generated with Claude Code