Switchyard integration board
## 🚦 Switchyard integration board
Maintained automatically by Switchyard. Last updated: index `2026-06-16T23:28:03.184Z`.
---
## Active clusters
### Cluster 1 — `validateToken` contract change (2 MRs)
| Position | MR | Title | Status | Labels |
|---|---|---|---|---|
| **1** | !5 | feat: validateToken returns {valid, claims} (contract change) | ✅ Merge first | `switchyard::sequence::1` |
| **2** | !6 | feat: add audit log to checkAccess | ⚠️ Blocked — merge after !5; human review required | `switchyard::sequence::2`, `switchyard::blocked-by::!5` |
**Collision type:** Directional
**Shared definition:** `validateToken` (`auth.ts:3`, def `4829553029978237937`)
**Graph-proven edge:** `checkAccess` (`access.ts:5`) `--CALLS→` `validateToken` — 2 rows from traversal, 0 rows reverse
**Prescribed order:** `!5 → !6`
**⚠️ Human action required on !6:** Before merging !6, a reviewer must inspect `checkAccess`'s use of `validateToken`'s return value and confirm compatibility with the new `{valid, claims}` shape. The static graph proves the structural dependency; it cannot prove runtime behavioral compatibility.
---
## Limits applied
- Static call graph — dynamic dispatch invisible; zero rows does not mean safe
- Depth cap 3 — schema hard limit on `max_hops`
- `path_finding` shortest returns 0 for direct 1-hop edges in this graph version; authoritative edge data sourced from traversal receipt (row_count=2)
- EXTENDS edge count = 0 in project (no inheritance paths)
- Mode file-approximate per MR
*This issue is the single source of truth for Switchyard sequencing. It will be updated on each Switchyard run.*
issue