Commit f83c491
committed
fix(provenance): stop requiring a projection of roots no model sees
A secretProvenance selection is the opposite mechanism to a projected
model input: the value reaches an internal API unchanged, with its
provenance alongside it in the private bundle, precisely so nothing has
to be substituted. selectBlockBoundaryPaths marked those roots required
to project anyway.
That made a projection failure fatal for tools with no way to project.
createStructuredModelProjection rescues only a mode: 'project' tool with
an applyProjected, so for the twenty-odd secretProvenance-only tools it
returns undefined on its first check. table_insert_row declares no
modelInput at all and posts row data to the table API; when the Table
block's params threw on its projected data the whole run's registry
latched, costing provenance for every later boundary — including the
table write that prompted it, whose rows were then stored unknown and
re-reported on every later read.
Track those paths, require none of them. A root is required to project
when a model will see it, which is what modelInput declares.
Also separate a crossing that carried no provenance from one that was
rejected, so a run that failed before producing any stops reporting a
by-design state as an originating fault; and carry the first guard's
location into the diagnostics a refusal reports, so a downstream
reporter names where rather than only what.1 parent 6a5e250 commit f83c491
4 files changed
Lines changed: 146 additions & 5 deletions
File tree
- apps/sim/executor
- handlers/generic
- utils
Lines changed: 49 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
105 | 105 | | |
106 | 106 | | |
107 | 107 | | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
108 | 157 | | |
109 | 158 | | |
110 | 159 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
47 | 47 | | |
48 | 48 | | |
49 | 49 | | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
50 | 67 | | |
51 | 68 | | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | 69 | | |
56 | 70 | | |
57 | 71 | | |
| |||
Lines changed: 50 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1625 | 1625 | | |
1626 | 1626 | | |
1627 | 1627 | | |
| 1628 | + | |
| 1629 | + | |
| 1630 | + | |
| 1631 | + | |
| 1632 | + | |
| 1633 | + | |
| 1634 | + | |
| 1635 | + | |
| 1636 | + | |
| 1637 | + | |
| 1638 | + | |
| 1639 | + | |
| 1640 | + | |
| 1641 | + | |
| 1642 | + | |
| 1643 | + | |
| 1644 | + | |
| 1645 | + | |
| 1646 | + | |
| 1647 | + | |
| 1648 | + | |
| 1649 | + | |
| 1650 | + | |
| 1651 | + | |
| 1652 | + | |
| 1653 | + | |
| 1654 | + | |
| 1655 | + | |
| 1656 | + | |
| 1657 | + | |
| 1658 | + | |
| 1659 | + | |
| 1660 | + | |
| 1661 | + | |
| 1662 | + | |
| 1663 | + | |
| 1664 | + | |
| 1665 | + | |
| 1666 | + | |
| 1667 | + | |
| 1668 | + | |
| 1669 | + | |
| 1670 | + | |
| 1671 | + | |
| 1672 | + | |
| 1673 | + | |
| 1674 | + | |
| 1675 | + | |
| 1676 | + | |
| 1677 | + | |
1628 | 1678 | | |
1629 | 1679 | | |
1630 | 1680 | | |
| |||
Lines changed: 30 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
41 | 41 | | |
42 | 42 | | |
43 | 43 | | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
44 | 49 | | |
45 | 50 | | |
46 | 51 | | |
| |||
174 | 179 | | |
175 | 180 | | |
176 | 181 | | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
177 | 190 | | |
178 | 191 | | |
179 | 192 | | |
| |||
322 | 335 | | |
323 | 336 | | |
324 | 337 | | |
325 | | - | |
| 338 | + | |
326 | 339 | | |
327 | 340 | | |
328 | 341 | | |
| |||
854 | 867 | | |
855 | 868 | | |
856 | 869 | | |
| 870 | + | |
| 871 | + | |
857 | 872 | | |
858 | 873 | | |
859 | 874 | | |
| |||
1586 | 1601 | | |
1587 | 1602 | | |
1588 | 1603 | | |
| 1604 | + | |
| 1605 | + | |
| 1606 | + | |
| 1607 | + | |
| 1608 | + | |
| 1609 | + | |
1589 | 1610 | | |
1590 | | - | |
| 1611 | + | |
| 1612 | + | |
| 1613 | + | |
| 1614 | + | |
| 1615 | + | |
1591 | 1616 | | |
1592 | 1617 | | |
1593 | 1618 | | |
| |||
1802 | 1827 | | |
1803 | 1828 | | |
1804 | 1829 | | |
| 1830 | + | |
1805 | 1831 | | |
1806 | 1832 | | |
1807 | 1833 | | |
| |||
1823 | 1849 | | |
1824 | 1850 | | |
1825 | 1851 | | |
| 1852 | + | |
1826 | 1853 | | |
1827 | 1854 | | |
1828 | 1855 | | |
| |||
1843 | 1870 | | |
1844 | 1871 | | |
1845 | 1872 | | |
| 1873 | + | |
1846 | 1874 | | |
1847 | 1875 | | |
1848 | 1876 | | |
| |||
0 commit comments