Unbundled Posted Legs Aging Past Cap?

Posted transactions whose bundle_id is still NULL past their rail's max_unbundled_age cap. An AggregatingRail's job is to pick up these legs and group them into a Bundle; an unbundled leg older than the rail's cadence means the bundler hasn't fired or is failing to match. KPI shows total stuck count; the aging bar chart breaks the population into 4 buckets (<1d, 1–2d, 2–7d, >7d) — the typical max_unbundled_age cadence is a day or two, so buckets are wider than Pending Aging's. Right-click any row → View Transactions to see every leg of that transfer.

Stuck Unbundled

Count of Posted transactions whose bundle_id is still NULL past their rail's max_unbundled_age cap. Healthy = 0. Demo-seed note: the bundled demo plants stuck-unbundled rows so this view has something to show — expect a non-zero count on demo deploys.

Stuck Unbundled Exposure

Sum of amount across the stuck-unbundled legs. The dollar side of the reconciliation gap — how much money is sitting unrolled-up past its rail's bundling cap.

Stuck Unbundled by Age Bucket

Distribution of stuck-Unbundled transactions across 4 age bands, stacked by rail. Right-skewed (>2d, >7d) ⇒ the bundler hasn't fired for those rails in a while. Color bands surface per-variant rollup for XOR-grouped multi-mode templates.

Stuck Unbundled Detail

Every stuck-Unbundled leg with rail / amount / posting / live age. max_unbundled_age_seconds is the rail's cap (inlined at view-emit time from L2). Right-click any row → View Transactions to see every leg of that transfer.



Per-rail unbundled aging

For every Rail with max_unbundled_age set, every Posted leg on that rail SHOULD be picked up by an AggregatingRail (bundle_id set) before posting + max_unbundled_age.

Posted transactions whose bundle_id IS NULL past their rail's cap. Per validator R8, max_unbundled_age is only meaningful on rails appearing in some AggregatingRail's bundles_activity.

Columns: same shape as _stuck_pending with max_unbundled_age_seconds instead of max_pending_age_seconds.

Action. Verify the AggregatingRail's bundles_activity still names this rail — the bundler may be silently mis-configured. For high age_seconds, run the bundle process manually and investigate why the regular cycle missed it.