Commit 7dcb652
feat(wctt): per-stream sensitivity output (∂σ_self, ∂ρ_c, ∂T_link) (v0.9.2) (#196)
Reviewer NC top-5 #13 — pure post-processing on closed-form
derivatives, no new bounds math. After each `WcttBound` Info
diagnostic, emit a `WcttSensitivity` Info diagnostic carrying
worst-hop partial derivatives at the operating point:
∂WCTT/∂σ_self = 8e12 / min(R_residual) (ps per byte;
worst hop dominates the chain)
∂WCTT/∂ρ_competing = σ_total / (R - ρ_c)² (ps per bps,
worst hop)
∂WCTT/∂T_link = hops_counted (chain rule
across passthrough)
For the architect: "if I add 1 frame to this stream, does the
bound shift by 1 µs or 100 µs?" answered instantly without
re-running spar. Turns spar from judge into design partner.
REQ-NETWORK-012 + TEST-WCTT-SENSITIVITY. Existing fixture
classical_ethernet.expected.json updated to include the new
diagnostic.
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent 6e9f5ab commit 7dcb652
4 files changed
Lines changed: 116 additions & 2 deletions
File tree
- artifacts
- crates/spar-analysis
- src
- tests/fixtures/wctt
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1632 | 1632 | | |
1633 | 1633 | | |
1634 | 1634 | | |
| 1635 | + | |
| 1636 | + | |
| 1637 | + | |
| 1638 | + | |
| 1639 | + | |
| 1640 | + | |
| 1641 | + | |
| 1642 | + | |
| 1643 | + | |
| 1644 | + | |
| 1645 | + | |
| 1646 | + | |
| 1647 | + | |
| 1648 | + | |
| 1649 | + | |
| 1650 | + | |
| 1651 | + | |
| 1652 | + | |
1635 | 1653 | | |
1636 | 1654 | | |
1637 | 1655 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2153 | 2153 | | |
2154 | 2154 | | |
2155 | 2155 | | |
| 2156 | + | |
| 2157 | + | |
| 2158 | + | |
| 2159 | + | |
| 2160 | + | |
| 2161 | + | |
| 2162 | + | |
| 2163 | + | |
| 2164 | + | |
| 2165 | + | |
| 2166 | + | |
| 2167 | + | |
| 2168 | + | |
| 2169 | + | |
| 2170 | + | |
| 2171 | + | |
| 2172 | + | |
| 2173 | + | |
| 2174 | + | |
| 2175 | + | |
| 2176 | + | |
| 2177 | + | |
| 2178 | + | |
| 2179 | + | |
2156 | 2180 | | |
2157 | 2181 | | |
2158 | 2182 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
235 | 235 | | |
236 | 236 | | |
237 | 237 | | |
| 238 | + | |
| 239 | + | |
| 240 | + | |
| 241 | + | |
| 242 | + | |
| 243 | + | |
| 244 | + | |
238 | 245 | | |
239 | 246 | | |
240 | 247 | | |
| |||
649 | 656 | | |
650 | 657 | | |
651 | 658 | | |
| 659 | + | |
| 660 | + | |
| 661 | + | |
| 662 | + | |
| 663 | + | |
| 664 | + | |
| 665 | + | |
| 666 | + | |
| 667 | + | |
| 668 | + | |
652 | 669 | | |
653 | 670 | | |
654 | 671 | | |
655 | 672 | | |
656 | 673 | | |
657 | 674 | | |
658 | 675 | | |
| 676 | + | |
659 | 677 | | |
660 | 678 | | |
661 | 679 | | |
| |||
744 | 762 | | |
745 | 763 | | |
746 | 764 | | |
747 | | - | |
| 765 | + | |
748 | 766 | | |
749 | 767 | | |
| 768 | + | |
| 769 | + | |
| 770 | + | |
| 771 | + | |
| 772 | + | |
| 773 | + | |
| 774 | + | |
| 775 | + | |
| 776 | + | |
| 777 | + | |
| 778 | + | |
| 779 | + | |
| 780 | + | |
| 781 | + | |
| 782 | + | |
| 783 | + | |
| 784 | + | |
| 785 | + | |
| 786 | + | |
| 787 | + | |
| 788 | + | |
| 789 | + | |
| 790 | + | |
| 791 | + | |
| 792 | + | |
| 793 | + | |
| 794 | + | |
| 795 | + | |
| 796 | + | |
| 797 | + | |
| 798 | + | |
| 799 | + | |
| 800 | + | |
| 801 | + | |
| 802 | + | |
| 803 | + | |
| 804 | + | |
| 805 | + | |
| 806 | + | |
| 807 | + | |
| 808 | + | |
| 809 | + | |
| 810 | + | |
| 811 | + | |
| 812 | + | |
| 813 | + | |
| 814 | + | |
| 815 | + | |
| 816 | + | |
| 817 | + | |
| 818 | + | |
| 819 | + | |
750 | 820 | | |
751 | 821 | | |
752 | 822 | | |
| |||
Lines changed: 3 additions & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2 | 2 | | |
3 | 3 | | |
4 | 4 | | |
5 | | - | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
6 | 8 | | |
0 commit comments