⚙ SGT Gate Architecture

Orchestrator Pipeline — Two-Battery, Two-Seam Post-Reasoning Gate System

Procedural Gate: Enforce Identity-Aware RBAC 34/34 Unit Tests Pass Experimental Profile

Pipeline Flow

Pre-LLM
Constraints Re-inject
LLM
Reasoning Content
Seam-1
Primer
Observe
Seam-1
Procedural Gate
Enforce
Seam-1
Constraints
Enforce
Seam-1
Compliance
Observe
Batch Tool
Tool Calling
Seam-2
Tool Gate
Observe
Seam-2
Constraints
Enforce
Seam-2
Compliance
Observe
BATTERY_1 (Seam-1) → Tool Calling → BATTERY_2 (Seam-2)

Identity-Aware RBAC

🟢 SGT-Named Agents

Name starts with SGT (normalized). SGT Researcher, SGT Builder, SGT Red Team, etc.

Bypass the procedural gate entirely. All tools allowed.

Bypass

🔵 Named Orchestrators

Alice, Iris, Athena, Mira, Selene — personal names without the SGT prefix.

Procedural gate applies. Intent-based tool restrictions enforced.

Gate Applies

🟠 Regular Profiles

Any profile without SGT-named identity (e.g. experimental).

Procedural gate applies. Same as named orchestrators.

Gate Applies

Pipeline Test Results (2026-07-19)

Test Identity Intent Verdict Result
Build + write_file experimental Build a website TRIGGER ✅ Blocked — must delegate to sgt-builder
Non-work experimental Tell a joke TRIGGER ✅ Blocked — not a recognized intent
Research experimental Research gate arch PASS ✅ Approved
Build (SGT bypass) sgt-researcher Build a website PASS ✅ Bypass — all tools allowed
Empty (Seam-1) experimental (empty) PASS ✅ No text to evaluate
BATTERY_1 run experimental Build TRIGGER ✅ Full pipeline blocks build

Unit Tests

_normalize_identity

9/9 ✅

Handles lowercase, uppercase, underscores, dots, double-spaces, bare prefixes

_is_sgt_agent

20/20 ✅

12 SGT agents detected, 8 non-SGT correctly rejected (incl. bare "sgt")

verdict() end-to-end

5/5 ✅

SGT bypass works, non-SGT doesn't bypass, empty text handled

Full Pipeline

6/6 ✅

Build blocked, non-work blocked, research approved, SGT bypasses

Architecture Decisions

Decision Value Authority
BATTERY_1 order primer → procedural_gate → constraints → compliance Dana 2026-07-15
BATTERY_2 order tool → constraints → compliance Dana 2026-07-15
Procedural gate mode Enforce (Seam-1 only) Dana 2026-07-19
SGT-named bypass Name starts with "SGT " → bypass Dana 2026-07-19
Identity resolution config.yaml → HERMES_AGENT_NAME → basename Selene 2026-07-19
Experimental profile Not SGT-named → gate applies Dana 2026-07-19