"How to navigate the Sovereign Pipeline Agent · how to make it better · what it does · what it can do." A standalone navigation manual for one of the deepest builds in the operating system.
The Sovereign Pipeline Agent is a single, deterministic matching engine. It reads job specs from anywhere in the system — the Jobs Board (long-term reference shelf), Red Team Hub (strategic), Public Gallery (open intake), or a direct sovereign post — and ranks every operator on the bench against six independent dimensions. Highest score wins. Notification is sent. Acceptance is tracked. If declined, the next-best operator is offered the job automatically.
| Capability | What it does today | What it can do next |
|---|---|---|
| Priority Score | Job carries 0–100 urgency · agent serves highest first. | Auto-decay priority over time so stale jobs surface (30-day half-life). |
| Skill Fit | Tag-overlap ratio against MD-191 skills_tags. | Embedding-based semantic match (use H.BLUE encoder for fuzzy tags). |
| Skill Decay | Idle skills lose 10% weight per 90 days. | Add explicit refresher prompts → operator self-confirms a skill is current. |
| Location Radius | +20 same outward postcode area · +8 same region · 0 other. | Real haversine miles using a postcode → lat/long table. |
| Capacity Cap | Hard gate at 3 active jobs per operator. | Variable cap by tier (Tier 1 = 5 · Tier 2 = 3 · Tier 3 = 2). |
| Learning | Tracks every accept/decline · adds reliability bonus. | Per-skill reliability — operator may be brilliant at A, weak at B. |
| Override | Sovereign can force-assign any operator · move to rank 1 · logged. | Tier-2 override (Red Leader can override within their team). |
| Auto-mirror | Every match seals into op_ledger → mycelium absorbs it. | Forward to Velocity Tracker as a domain-typed event (matched / accepted / declined). |
In rough order of compounding return. Pick one. Ship it. Move down.
| # | Upgrade | Effort | Why it matters |
|---|---|---|---|
| R1 | Persist a pipeline_jobs queue table — replace the simulator-only flow with real assignable jobs. | S | Turns the agent from a demo into a live pipeline. |
| R2 | Wire operator notifications — email + dashboard ping when matched. | M | Closes the loop. Without this, the agent matches in silence. |
| R3 | Operator response endpoints — /api/pipeline-agent/accept & /decline. | S | Enables the auto-rematch chain · powers the learning model. |
| R4 | Real postcode → lat/long table + haversine distance. | M | Makes location matter for trucking, beach, and gateway jobs. |
| R5 | Per-skill last-used dates + a refresher prompt cycle. | M | Skill decay becomes truthful, not assumed. |
| R6 | Tier-variable capacity caps (Tier 1 = 5 · Tier 2 = 3 · Tier 3 = 2). | S | Stops tier-1 underuse without overloading tier-3. |
| R7 | Embedding-based semantic skill match (H.BLUE encoder). | L | Catches "AI builder" matching "machine learning developer" without manual tag work. |
| R8 | Operator-side public profile page /operator/<slug>. | M | Trust, leaderboards, referral tracking · turns the bench into a market. |
| R9 | Daily digest seal into op_ledger + auto-mirror to mycelium. | S | The pipeline becomes part of the velocity heartbeat by default. |
| R10 | Multi-agent council mode — call the Quadra (MD-473) for high-stakes assignments and let the four personas debate before the offer goes out. | L | Turns the agent into a sovereign hire panel for tier-1 work. |
The agent reads from skills_inventory (MD-191) and writes a row per match into pipeline_match_log. No in-memory state — every decision is auditable.
Each match writes one row to pipeline_match_log and one corresponding seal into op_ledger, which is auto-mirrored into the Mycelium Tracker by Build #101's helper.
skills_inventory. Edit MD-191 to change the bench.last_used_at field that does not yet exist — currently every operator is treated as fully fresh (decay = 1.0). Add the field with R5.pipeline_jobs — that table is staged but assignment is dry-run only. Ship R1 to make it real."The page is the engine. The doctrine is the page that doesn't change. Update the engine in code, update the doctrine here. Whoever inherits this build inherits both."