blue/knowledge/expert-pools.md
Eric Garcia d7db9c667d feat: RFC 0048 expert pool implementation and documentation batch
## RFC 0048 Expert Pool Implementation
- Added tiered expert pools (Core/Adjacent/Wildcard) to dialogue handlers
- Implemented weighted random sampling for panel selection
- Added blue_dialogue_sample_panel MCP tool for manual round control
- Updated alignment-play skill with pool design instructions

## New RFCs
- 0044: RFC matching and auto-status (draft)
- 0045: MCP tool enforcement (draft)
- 0046: Judge-defined expert panels (superseded)
- 0047: Expert pool sampling architecture (superseded)
- 0048: Alignment expert pools (implemented)
- 0050: Graduated panel rotation (draft)

## Dialogues Recorded
- 2026-02-01T2026Z: Test expert pool feature
- 2026-02-01T2105Z: SQLite vs flat files
- 2026-02-01T2214Z: Guard command architecture

## Other Changes
- Added TODO.md for tracking work
- Updated expert-pools.md knowledge doc
- Removed deprecated alignment-expert agent
- Added spikes for SQLite assets and SDLC workflow gaps

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-02-01 19:26:41 -05:00

98 lines
3.7 KiB
Markdown

# Expert Pool System
When running alignment dialogues, the Judge creates domain-appropriate expert pools from which panels are sampled.
## Two-Phase Architecture (RFC 0047)
| Phase | Actor | Action |
|-------|-------|--------|
| **Pool Design** | Judge | Creates 15-30 domain-specific experts with tiers and relevance |
| **Panel Sampling** | MCP Server | Samples N experts using weighted random selection |
## Pool Design (Judge Responsibility)
The Judge reads the RFC/topic and designs experts appropriate to the domain:
```json
{
"expert_pool": {
"domain": "Investment Analysis",
"experts": [
{ "role": "Value Analyst", "tier": "Core", "relevance": 0.95, "focus": "Intrinsic value, margin of safety" },
{ "role": "Growth Analyst", "tier": "Core", "relevance": 0.90, "focus": "TAM expansion, revenue acceleration" },
{ "role": "Risk Manager", "tier": "Core", "relevance": 0.85, "focus": "Downside scenarios, tail events" },
{ "role": "ESG Analyst", "tier": "Adjacent", "relevance": 0.70, "focus": "Environmental, governance factors" },
{ "role": "Contrarian", "tier": "Wildcard", "relevance": 0.30, "focus": "Challenge consensus, find crowding" }
]
}
}
```
## Tier Distribution
| Tier | Pool % | Panel % | Selection Behavior |
|------|--------|---------|-------------------|
| **Core** | ~25% | ~33% | Almost always selected (high relevance weights) |
| **Adjacent** | ~40% | ~42% | High probability, related expertise |
| **Wildcard** | ~35% | ~25% | Fresh perspectives, rotation candidates |
## Panel Sampling (MCP Server)
```
blue_dialogue_create(expert_pool=[...24 roles...], panel_size=12, rotation="wildcards")
→ Weighted random sample: higher relevance = higher selection probability
→ For N=12: ~4 Core, ~5 Adjacent, ~3 Wildcard
```
## Rotation Modes
| Mode | Behavior | Use Case |
|------|----------|----------|
| `none` | Fixed panel all rounds | Standard deliberation |
| `wildcards` | Core/Adjacent persist, Wildcards resample | Bring fresh perspectives each round |
| `full` | Complete resample each round | Maximum diversity (experimental) |
## Pastry Naming
Experts are assigned pastry names for identification:
Muffin, Cupcake, Scone, Eclair, Donut, Brioche, Croissant, Macaron, Cannoli, Strudel, Beignet, Churro, Profiterole, Tartlet, Galette, Palmier, Kouign, Sfogliatella, Financier, Religieuse
## Domain-Specific Pools
The Judge designs pools appropriate to each domain. Example domains:
**Investment Analysis**: Value Analyst, Growth Analyst, Risk Manager, Portfolio Strategist, ESG Analyst, Quant Strategist, Technical Analyst, Behavioral Analyst, Income Analyst, Macro Economist, Credit Analyst, Contrarian
**System Architecture**: Platform Architect, Security Engineer, Database Architect, SRE Lead, API Designer, DevOps Engineer, Performance Engineer, Network Engineer, Cost Analyst, Compliance Officer
**Product Development**: Product Manager, UX Designer, Frontend Architect, Customer Advocate, Data Analyst, Backend Engineer, QA Lead, Technical Writer, Marketing Strategist
## Expert Prompt Template
Each expert receives their context:
```
You are {name} 🧁, a {role} in an ALIGNMENT-seeking dialogue.
Tier: {tier} | Relevance: {relevance}
Focus: {focus}
Your contribution is scored on PRECISION, not volume.
One sharp insight beats ten paragraphs.
```
## Pool Persistence
Pools are stored per-dialogue:
```
{output_dir}/
├── expert-pool.json ← Full pool definition (Judge writes)
├── round-0/
│ ├── panel.json ← Sampled panel for this round
│ └── *.md ← Agent responses
└── scoreboard.md
```
---
*"The Judge sees the elephant. The Judge summons the right blind men."*