Skip to content

spec(SESSION-1): transformer denylists belong to the per-component override class - #244

Draft
JarbasAl wants to merge 1 commit into
devfrom
spec/session-1-override-class-transformer-denylists
Draft

spec(SESSION-1): transformer denylists belong to the per-component override class#244
JarbasAl wants to merge 1 commit into
devfrom
spec/session-1-override-class-transformer-denylists

Conversation

@JarbasAl

@JarbasAl JarbasAl commented Sep 7, 2026

Copy link
Copy Markdown
Member

🤖 Auto-generated by Claude Fable 5.1 (claude-fable-5-1) via Claude Code — NOT human-reviewed. Verify before acting.

Summary

OVOS-PIPELINE-1 §5.5 defers to OVOS-SESSION-1's enumerations of the per-component override field class when deciding which fields a plugin's updated_session may relax. Two clauses enumerate this class: §3.4's wire-weight rule and §6's producer SHOULD NOT guidance. Both were incomplete: they listed the six *_transformers chains and the three basic blacklisted_* denylists but omitted the six blacklisted_*_transformers lists, which belong to the same class per OVOS-TRANSFORM-1 §5.2. This left two implementers free to disagree on whether a plugin may relax transformer denylists, since one read against the partial enumeration and one against the authoritative field table in §3.

Both clauses now read "pipeline, the six *_transformers lists, the six blacklisted_*_transformers lists, blacklisted_skills, blacklisted_intents, blacklisted_pipelines, or site_id" — the complete policy-class roster. No other fields or sections altered; fallback_handlers remains correctly excluded (owned by the handler policy, not the component-override policy).

The governing clause OVOS-PIPELINE-1 §5.5 states: "The orchestrator also re-imposes every per-component override field (OVOS-SESSION-1 §3) onto any updated_session a plugin returns... This class is deployment-owned in its entirety, not by naming individual members here." This PR aligns both enumerations to the full membership of that class.

…erride class

Two clauses enumerating the per-component override field class
(OVOS-PIPELINE-1 §5.5 defers to this enumeration) were incomplete:
§3.4 and §6's producer **SHOULD NOT** list both included the six
*_transformers lists and the three basic blacklisted_* denylists,
but omitted the six blacklisted_*_transformers lists also owned
by the same policy class (OVOS-TRANSFORM-1 §5.2). This left two
implementers free to disagree on whether a plugin's updated_session
may relax transformer denylists, since one implemented against the
partial enumeration and one against the full field table in §3.

Both clauses now read "pipeline, the six *_transformers lists, the
six blacklisted_*_transformers lists, blacklisted_skills,
blacklisted_intents, blacklisted_pipelines, or site_id" — the
authoritative policy-class roster. No other fields or clauses
altered; fallback_handlers remains correctly excluded (owned by
handlers, not policy).

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@coderabbitai

coderabbitai Bot commented Sep 7, 2026

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

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