Skip to content

spec: converse.md — RECOMMENDED tuning defaults, identity-gated response mode, pure updated_session channel#107

Draft
JarbasAl wants to merge 1 commit into
devfrom
spec/converse
Draft

spec: converse.md — RECOMMENDED tuning defaults, identity-gated response mode, pure updated_session channel#107
JarbasAl wants to merge 1 commit into
devfrom
spec/converse

Conversation

@JarbasAl

@JarbasAl JarbasAl commented Jul 4, 2026

Copy link
Copy Markdown
Member

Refines OVOS-CONVERSE-1 for internal purity and self-consistency (per-file split of the consistency audit).

Changes

  • Normativity discipline: tuning values are RECOMMENDED defaults, never MUST — §2.1 converse-handler list cap (default 10, with latency rationale), §3.2 TTL (RECOMMENDED default 600 s, applied when the deployer configures nothing; "no TTL" remains an explicit conformant choice), §4.2 per-owner poll timeout (RECOMMENDED default 0.5 s; the bounded wait stays MUST — it is a correctness invariant, the value is not).
  • Response-mode identity invariant enforced at delivery (§4.1/§5.2/§9): the holder must appear in the post-prune session.converse_handlers; a pruned or unrecognised holder is discarded via Match.updated_session, never delivered to.
  • No in-place session mutation: the former "sole permitted exception" letting the plugin mutate the inbound session on a null return for "done" removal is gone — PIPELINE-1 §4.2's Match.updated_session-only channel discipline now holds without exception; removal defers to the next claiming match or the §3.2 TTL.
  • Topic rule: poll ping/pong are dotted non-dispatch topics (<skill_id>.converse.ping / .pong); the only colon topics are genuine PIPELINE-1 §7 dispatches (<skill_id>:converse, <skill_id>:response).
  • Dispatch payload = standard PIPELINE-1 §7.1 shape: skill_id/intent_name live in the topic, not repeated in data; slot map named slots per PIPELINE-1 §4.1.
  • Parallel polling upgraded MAY → SHOULD (the poll sits on the serial critical path); §7 global-stop interaction corrected (uniform §3.1 activation re-stamps the stop plugin); cross-protocol note that the poll boolean's field name (result) is protocol-local; OVOS-SESSION-1 cited by canonical title.

Principle

Colon <x>:<y> is reserved for the orchestrator dispatch shape (MSG-1 §2.1.1); everything else is dotted. MUST/MUST NOT mark correctness/interop invariants only; numbers are RECOMMENDED defaults. One channel for session writes (Match.updated_session) with zero exceptions.

Version stays 2: VERSIONING.md defines the field as the V0-compatibility class, which these edits do not change.

🤖 Generated with Claude Code

…esponse mode, no in-place session mutation

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Jul 4, 2026

Copy link
Copy Markdown

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: a7b32cb5-4135-4c42-bc61-206e0083c31d

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch spec/converse

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant