@codyswann/lisa 4.49.0 → 4.50.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (409) hide show
  1. package/all/copy-overwrite/scripts/check-conflict-markers.mjs +4 -1
  2. package/all/copy-overwrite/scripts/lib/gate-failure-diagnosis.mjs +163 -0
  3. package/all/copy-overwrite/scripts/lisa-enforcement-fallback.sh +178 -1
  4. package/all/copy-overwrite/scripts/lisa-hooks/block-direct-issue-create.sh +89 -10
  5. package/all/copy-overwrite/scripts/lisa-hooks/parity-safety-net.sh +44 -0
  6. package/all/copy-overwrite/scripts/lisa-lint-staged-preflight.mjs +1 -1
  7. package/all/copy-overwrite/scripts/lisa-run-gates.mjs +24 -24
  8. package/all/copy-overwrite/scripts/lisa-work-item.mjs +490 -81
  9. package/cdk/package-lisa/package.lisa.json +45 -15
  10. package/dist/core/lisa-owned-hash-ledger.d.ts.map +1 -1
  11. package/dist/core/lisa-owned-hash-ledger.js +76 -0
  12. package/dist/core/lisa-owned-hash-ledger.js.map +1 -1
  13. package/dist/core/nightly-e2e-guard-behavior-certificate.js +2 -2
  14. package/dist/core/upstream-evidence-manifest.d.ts.map +1 -1
  15. package/dist/core/upstream-evidence-manifest.js +120 -227
  16. package/dist/core/upstream-evidence-manifest.js.map +1 -1
  17. package/dist/opencode/plugin-templates/lisa-block-direct-issue-create.ts +45 -1
  18. package/dist/opencode/plugin-templates/parity-safety-net.sh +44 -0
  19. package/expo/package-lisa/package.lisa.json +83 -53
  20. package/harper-fabric/package-lisa/package.lisa.json +62 -32
  21. package/nestjs/package-lisa/package.lisa.json +57 -27
  22. package/npm-package/package-lisa/package.lisa.json +43 -7
  23. package/package.json +11 -7
  24. package/phaser/copy-overwrite/ast-grep/rules/no-day-truncating-file-age-predicate.yml +50 -0
  25. package/phaser/package-lisa/package.lisa.json +62 -32
  26. package/plugins/lisa/.claude-plugin/plugin.json +1 -1
  27. package/plugins/lisa/.codex-plugin/plugin.json +1 -1
  28. package/plugins/lisa/.codex-plugin/skills/lisa-drive-pr-to-merge/SKILL.md +17 -1
  29. package/plugins/lisa/.codex-plugin/skills/lisa-github-build-intake/SKILL.md +4 -0
  30. package/plugins/lisa/.codex-plugin/skills/lisa-jira-build-intake/SKILL.md +4 -0
  31. package/plugins/lisa/.codex-plugin/skills/lisa-linear-build-intake/SKILL.md +4 -0
  32. package/plugins/lisa/.codex-plugin/skills/lisa-repair-intake/SKILL.md +4 -1
  33. package/plugins/lisa/hooks/block-direct-issue-create.sh +89 -10
  34. package/plugins/lisa/hooks/discharge-work-item-gates.sh +7 -1
  35. package/plugins/lisa/hooks/parity-safety-net.sh +44 -0
  36. package/plugins/lisa/hooks/threshold-ratchet-families.mjs +12 -0
  37. package/plugins/lisa/rules/eager/00-rule-index.md +79 -0
  38. package/plugins/lisa/rules/eager/base-rules.md +10 -0
  39. package/plugins/lisa/rules/eager/config-resolution.md +1 -88
  40. package/plugins/lisa/rules/reference/automation-runbook-contract.md +97 -0
  41. package/plugins/lisa/rules/reference/bdd-e2e-coverage.md +56 -0
  42. package/plugins/lisa/rules/reference/blocker-containment.md +58 -0
  43. package/plugins/lisa/rules/reference/claim-archaeology.md +42 -0
  44. package/plugins/lisa/rules/reference/claim-evidence-mapping.md +83 -0
  45. package/plugins/lisa/rules/reference/claim-time-guards.md +37 -0
  46. package/plugins/lisa/rules/reference/config-resolution.md +97 -0
  47. package/plugins/lisa/rules/reference/control-reachability.md +44 -0
  48. package/plugins/lisa/rules/reference/convergent-review.md +31 -0
  49. package/plugins/lisa/rules/reference/credential-substrate-precedence.md +57 -0
  50. package/plugins/lisa/rules/reference/dependency-decision-records.md +37 -0
  51. package/plugins/lisa/rules/reference/dependency-internalization-kit.md +47 -0
  52. package/plugins/lisa/rules/reference/dependency-trust-classes.md +48 -0
  53. package/plugins/lisa/rules/reference/deployed-state-readback.md +52 -0
  54. package/plugins/lisa/rules/reference/derived-branch-plan.md +52 -0
  55. package/plugins/lisa/rules/reference/design-source-of-truth.md +43 -0
  56. package/plugins/lisa/rules/reference/design-value-binding.md +103 -0
  57. package/plugins/lisa/rules/reference/documentation-source-paths.md +18 -0
  58. package/plugins/lisa/rules/reference/leaf-only-lifecycle.md +75 -0
  59. package/plugins/lisa/rules/reference/observability-audit.md +20 -0
  60. package/plugins/lisa/rules/reference/prd-definition-of-ready.md +37 -0
  61. package/plugins/lisa/rules/reference/prd-lifecycle-rollup.md +36 -0
  62. package/plugins/lisa/rules/reference/pre-flight-autofill.md +88 -0
  63. package/plugins/lisa/rules/reference/promotion-contract.md +21 -0
  64. package/plugins/lisa/rules/reference/readiness-rubric.md +63 -0
  65. package/plugins/lisa/rules/reference/ready-role-filing.md +34 -0
  66. package/plugins/lisa/rules/reference/rejection-detection.md +69 -0
  67. package/plugins/lisa/rules/reference/repo-scope-split.md +48 -0
  68. package/plugins/lisa/rules/reference/reset-seed-coverage.md +55 -0
  69. package/plugins/lisa/rules/reference/usage-accounting.md +38 -0
  70. package/plugins/lisa/rules/reference/work-item-definition-of-ready.md +32 -0
  71. package/plugins/lisa/scripts/intake-blocker-reprobe.mjs +158 -1
  72. package/plugins/lisa/skills/lisa-drive-pr-to-merge/SKILL.md +17 -1
  73. package/plugins/lisa/skills/lisa-github-build-intake/SKILL.md +4 -0
  74. package/plugins/lisa/skills/lisa-jira-build-intake/SKILL.md +4 -0
  75. package/plugins/lisa/skills/lisa-linear-build-intake/SKILL.md +4 -0
  76. package/plugins/lisa/skills/lisa-repair-intake/SKILL.md +4 -1
  77. package/plugins/lisa-agy/hooks/block-direct-issue-create.sh +89 -10
  78. package/plugins/lisa-agy/hooks/parity-safety-net.sh +44 -0
  79. package/plugins/lisa-agy/plugin.json +1 -1
  80. package/plugins/lisa-agy/scripts/intake-blocker-reprobe.mjs +158 -1
  81. package/plugins/lisa-agy/skills/lisa-drive-pr-to-merge/SKILL.md +17 -1
  82. package/plugins/lisa-agy/skills/lisa-github-build-intake/SKILL.md +4 -0
  83. package/plugins/lisa-agy/skills/lisa-jira-build-intake/SKILL.md +4 -0
  84. package/plugins/lisa-agy/skills/lisa-linear-build-intake/SKILL.md +4 -0
  85. package/plugins/lisa-agy/skills/lisa-repair-intake/SKILL.md +4 -1
  86. package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
  87. package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
  88. package/plugins/lisa-cdk-agy/plugin.json +1 -1
  89. package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
  90. package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
  91. package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
  92. package/plugins/lisa-copilot/hooks/block-direct-issue-create.sh +89 -10
  93. package/plugins/lisa-copilot/hooks/discharge-work-item-gates.sh +7 -1
  94. package/plugins/lisa-copilot/hooks/parity-safety-net.sh +44 -0
  95. package/plugins/lisa-copilot/hooks/threshold-ratchet-families.mjs +12 -0
  96. package/plugins/lisa-copilot/rules/eager/00-rule-index.md +79 -0
  97. package/plugins/lisa-copilot/rules/eager/base-rules.md +10 -0
  98. package/plugins/lisa-copilot/rules/eager/config-resolution.md +1 -88
  99. package/plugins/lisa-copilot/rules/reference/automation-runbook-contract.md +97 -0
  100. package/plugins/lisa-copilot/rules/reference/bdd-e2e-coverage.md +56 -0
  101. package/plugins/lisa-copilot/rules/reference/blocker-containment.md +58 -0
  102. package/plugins/lisa-copilot/rules/reference/claim-archaeology.md +42 -0
  103. package/plugins/lisa-copilot/rules/reference/claim-evidence-mapping.md +83 -0
  104. package/plugins/lisa-copilot/rules/reference/claim-time-guards.md +37 -0
  105. package/plugins/lisa-copilot/rules/reference/config-resolution.md +97 -0
  106. package/plugins/lisa-copilot/rules/reference/control-reachability.md +44 -0
  107. package/plugins/lisa-copilot/rules/reference/convergent-review.md +31 -0
  108. package/plugins/lisa-copilot/rules/reference/credential-substrate-precedence.md +57 -0
  109. package/plugins/lisa-copilot/rules/reference/dependency-decision-records.md +37 -0
  110. package/plugins/lisa-copilot/rules/reference/dependency-internalization-kit.md +47 -0
  111. package/plugins/lisa-copilot/rules/reference/dependency-trust-classes.md +48 -0
  112. package/plugins/lisa-copilot/rules/reference/deployed-state-readback.md +52 -0
  113. package/plugins/lisa-copilot/rules/reference/derived-branch-plan.md +52 -0
  114. package/plugins/lisa-copilot/rules/reference/design-source-of-truth.md +43 -0
  115. package/plugins/lisa-copilot/rules/reference/design-value-binding.md +103 -0
  116. package/plugins/lisa-copilot/rules/reference/documentation-source-paths.md +18 -0
  117. package/plugins/lisa-copilot/rules/reference/leaf-only-lifecycle.md +75 -0
  118. package/plugins/lisa-copilot/rules/reference/observability-audit.md +20 -0
  119. package/plugins/lisa-copilot/rules/reference/prd-definition-of-ready.md +37 -0
  120. package/plugins/lisa-copilot/rules/reference/prd-lifecycle-rollup.md +36 -0
  121. package/plugins/lisa-copilot/rules/reference/pre-flight-autofill.md +88 -0
  122. package/plugins/lisa-copilot/rules/reference/promotion-contract.md +21 -0
  123. package/plugins/lisa-copilot/rules/reference/readiness-rubric.md +63 -0
  124. package/plugins/lisa-copilot/rules/reference/ready-role-filing.md +34 -0
  125. package/plugins/lisa-copilot/rules/reference/rejection-detection.md +69 -0
  126. package/plugins/lisa-copilot/rules/reference/repo-scope-split.md +48 -0
  127. package/plugins/lisa-copilot/rules/reference/reset-seed-coverage.md +55 -0
  128. package/plugins/lisa-copilot/rules/reference/usage-accounting.md +38 -0
  129. package/plugins/lisa-copilot/rules/reference/work-item-definition-of-ready.md +32 -0
  130. package/plugins/lisa-copilot/scripts/intake-blocker-reprobe.mjs +158 -1
  131. package/plugins/lisa-copilot/skills/lisa-drive-pr-to-merge/SKILL.md +17 -1
  132. package/plugins/lisa-copilot/skills/lisa-github-build-intake/SKILL.md +4 -0
  133. package/plugins/lisa-copilot/skills/lisa-jira-build-intake/SKILL.md +4 -0
  134. package/plugins/lisa-copilot/skills/lisa-linear-build-intake/SKILL.md +4 -0
  135. package/plugins/lisa-copilot/skills/lisa-repair-intake/SKILL.md +4 -1
  136. package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
  137. package/plugins/lisa-cursor/hooks/block-direct-issue-create.sh +89 -10
  138. package/plugins/lisa-cursor/hooks/discharge-work-item-gates.sh +7 -1
  139. package/plugins/lisa-cursor/hooks/parity-safety-net.sh +44 -0
  140. package/plugins/lisa-cursor/hooks/threshold-ratchet-families.mjs +12 -0
  141. package/plugins/lisa-cursor/rules/00-rule-index.mdc +84 -0
  142. package/plugins/lisa-cursor/rules/automation-runbook-contract-reference.mdc +97 -0
  143. package/plugins/lisa-cursor/rules/base-rules.mdc +10 -0
  144. package/plugins/lisa-cursor/rules/bdd-e2e-coverage-reference.mdc +56 -0
  145. package/plugins/lisa-cursor/rules/blocker-containment-reference.mdc +58 -0
  146. package/plugins/lisa-cursor/rules/claim-archaeology-reference.mdc +42 -0
  147. package/plugins/lisa-cursor/rules/claim-evidence-mapping-reference.mdc +83 -0
  148. package/plugins/lisa-cursor/rules/claim-time-guards-reference.mdc +37 -0
  149. package/plugins/lisa-cursor/rules/config-resolution-reference.mdc +97 -0
  150. package/plugins/lisa-cursor/rules/config-resolution.mdc +1 -88
  151. package/plugins/lisa-cursor/rules/control-reachability-reference.mdc +44 -0
  152. package/plugins/lisa-cursor/rules/convergent-review-reference.mdc +31 -0
  153. package/plugins/lisa-cursor/rules/credential-substrate-precedence-reference.mdc +57 -0
  154. package/plugins/lisa-cursor/rules/dependency-decision-records-reference.mdc +37 -0
  155. package/plugins/lisa-cursor/rules/dependency-internalization-kit-reference.mdc +47 -0
  156. package/plugins/lisa-cursor/rules/dependency-trust-classes-reference.mdc +48 -0
  157. package/plugins/lisa-cursor/rules/deployed-state-readback-reference.mdc +52 -0
  158. package/plugins/lisa-cursor/rules/derived-branch-plan-reference.mdc +52 -0
  159. package/plugins/lisa-cursor/rules/design-source-of-truth-reference.mdc +43 -0
  160. package/plugins/lisa-cursor/rules/design-value-binding-reference.mdc +103 -0
  161. package/plugins/lisa-cursor/rules/documentation-source-paths-reference.mdc +18 -0
  162. package/plugins/lisa-cursor/rules/leaf-only-lifecycle-reference.mdc +75 -0
  163. package/plugins/lisa-cursor/rules/observability-audit-reference.mdc +20 -0
  164. package/plugins/lisa-cursor/rules/prd-definition-of-ready-reference.mdc +37 -0
  165. package/plugins/lisa-cursor/rules/prd-lifecycle-rollup-reference.mdc +36 -0
  166. package/plugins/lisa-cursor/rules/pre-flight-autofill-reference.mdc +88 -0
  167. package/plugins/lisa-cursor/rules/promotion-contract-reference.mdc +21 -0
  168. package/plugins/lisa-cursor/rules/readiness-rubric-reference.mdc +63 -0
  169. package/plugins/lisa-cursor/rules/ready-role-filing-reference.mdc +34 -0
  170. package/plugins/lisa-cursor/rules/rejection-detection-reference.mdc +69 -0
  171. package/plugins/lisa-cursor/rules/repo-scope-split-reference.mdc +48 -0
  172. package/plugins/lisa-cursor/rules/reset-seed-coverage-reference.mdc +55 -0
  173. package/plugins/lisa-cursor/rules/usage-accounting-reference.mdc +38 -0
  174. package/plugins/lisa-cursor/rules/work-item-definition-of-ready-reference.mdc +32 -0
  175. package/plugins/lisa-cursor/scripts/intake-blocker-reprobe.mjs +158 -1
  176. package/plugins/lisa-cursor/skills/lisa-drive-pr-to-merge/SKILL.md +17 -1
  177. package/plugins/lisa-cursor/skills/lisa-github-build-intake/SKILL.md +4 -0
  178. package/plugins/lisa-cursor/skills/lisa-jira-build-intake/SKILL.md +4 -0
  179. package/plugins/lisa-cursor/skills/lisa-linear-build-intake/SKILL.md +4 -0
  180. package/plugins/lisa-cursor/skills/lisa-repair-intake/SKILL.md +4 -1
  181. package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
  182. package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
  183. package/plugins/lisa-expo-agy/plugin.json +1 -1
  184. package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
  185. package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
  186. package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
  187. package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
  188. package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
  189. package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
  190. package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
  191. package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
  192. package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
  193. package/plugins/lisa-nestjs-agy/plugin.json +1 -1
  194. package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
  195. package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
  196. package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
  197. package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
  198. package/plugins/lisa-openclaw-agy/plugin.json +1 -1
  199. package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
  200. package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
  201. package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
  202. package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
  203. package/plugins/lisa-phaser-agy/plugin.json +1 -1
  204. package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
  205. package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
  206. package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
  207. package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
  208. package/plugins/lisa-rails-agy/plugin.json +1 -1
  209. package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
  210. package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
  211. package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
  212. package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
  213. package/plugins/lisa-typescript-agy/plugin.json +1 -1
  214. package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
  215. package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
  216. package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
  217. package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
  218. package/plugins/lisa-wiki-agy/plugin.json +1 -1
  219. package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
  220. package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
  221. package/plugins/src/base/hooks/block-direct-issue-create.sh +89 -10
  222. package/plugins/src/base/hooks/discharge-work-item-gates.sh +7 -1
  223. package/plugins/src/base/hooks/parity-safety-net.sh +44 -0
  224. package/plugins/src/base/hooks/threshold-ratchet-families.mjs +12 -0
  225. package/plugins/src/base/rules/eager/00-rule-index.md +79 -0
  226. package/plugins/src/base/rules/eager/base-rules.md +10 -0
  227. package/plugins/src/base/rules/eager/config-resolution.md +1 -88
  228. package/plugins/src/base/rules/reference/automation-runbook-contract.md +97 -0
  229. package/plugins/src/base/rules/reference/bdd-e2e-coverage.md +56 -0
  230. package/plugins/src/base/rules/reference/blocker-containment.md +58 -0
  231. package/plugins/src/base/rules/reference/claim-archaeology.md +42 -0
  232. package/plugins/src/base/rules/reference/claim-evidence-mapping.md +83 -0
  233. package/plugins/src/base/rules/reference/claim-time-guards.md +37 -0
  234. package/plugins/src/base/rules/reference/config-resolution.md +97 -0
  235. package/plugins/src/base/rules/reference/control-reachability.md +44 -0
  236. package/plugins/src/base/rules/reference/convergent-review.md +31 -0
  237. package/plugins/src/base/rules/reference/credential-substrate-precedence.md +57 -0
  238. package/plugins/src/base/rules/reference/dependency-decision-records.md +37 -0
  239. package/plugins/src/base/rules/reference/dependency-internalization-kit.md +47 -0
  240. package/plugins/src/base/rules/reference/dependency-trust-classes.md +48 -0
  241. package/plugins/src/base/rules/reference/deployed-state-readback.md +52 -0
  242. package/plugins/src/base/rules/reference/derived-branch-plan.md +52 -0
  243. package/plugins/src/base/rules/reference/design-source-of-truth.md +43 -0
  244. package/plugins/src/base/rules/reference/design-value-binding.md +103 -0
  245. package/plugins/src/base/rules/reference/documentation-source-paths.md +18 -0
  246. package/plugins/src/base/rules/reference/leaf-only-lifecycle.md +75 -0
  247. package/plugins/src/base/rules/reference/observability-audit.md +20 -0
  248. package/plugins/src/base/rules/reference/prd-definition-of-ready.md +37 -0
  249. package/plugins/src/base/rules/reference/prd-lifecycle-rollup.md +36 -0
  250. package/plugins/src/base/rules/reference/pre-flight-autofill.md +88 -0
  251. package/plugins/src/base/rules/reference/promotion-contract.md +21 -0
  252. package/plugins/src/base/rules/reference/readiness-rubric.md +63 -0
  253. package/plugins/src/base/rules/reference/ready-role-filing.md +34 -0
  254. package/plugins/src/base/rules/reference/rejection-detection.md +69 -0
  255. package/plugins/src/base/rules/reference/repo-scope-split.md +48 -0
  256. package/plugins/src/base/rules/reference/reset-seed-coverage.md +55 -0
  257. package/plugins/src/base/rules/reference/usage-accounting.md +38 -0
  258. package/plugins/src/base/rules/reference/work-item-definition-of-ready.md +32 -0
  259. package/plugins/src/base/scripts/intake-blocker-reprobe.mjs +158 -1
  260. package/plugins/src/base/skills/lisa-drive-pr-to-merge/SKILL.md +17 -1
  261. package/plugins/src/base/skills/lisa-github-build-intake/SKILL.md +4 -0
  262. package/plugins/src/base/skills/lisa-jira-build-intake/SKILL.md +4 -0
  263. package/plugins/src/base/skills/lisa-linear-build-intake/SKILL.md +4 -0
  264. package/plugins/src/base/skills/lisa-repair-intake/SKILL.md +4 -1
  265. package/rails/copy-overwrite/ast-grep/rules/no-day-truncating-file-age-predicate.yml +50 -0
  266. package/rails/copy-overwrite/scripts/threshold-ratchet-families.mjs +12 -0
  267. package/scripts/check-eager-rule-budget.mjs +176 -0
  268. package/scripts/check-generated-artifact-merge-coverage.mjs +7 -0
  269. package/scripts/check-rules-pairing.sh +45 -14
  270. package/scripts/check-shipped-surface-removals.mjs +851 -0
  271. package/scripts/generate-export-surface.mjs +318 -0
  272. package/scripts/lib/shipped-surface.mjs +212 -0
  273. package/scripts/lisa-enforcement-fallback.sh +178 -1
  274. package/scripts/remedy-conformance.mjs +435 -0
  275. package/scripts/two-channel-couplings.json +2 -2
  276. package/typescript/copy-contents/.husky/pre-push +147 -2
  277. package/typescript/copy-overwrite/ast-grep/rules/no-day-truncating-file-age-predicate.yml +50 -0
  278. package/typescript/copy-overwrite/audit.ignore.config.json +0 -10
  279. package/typescript/copy-overwrite/scripts/lisa-mutation.mjs +180 -29
  280. package/typescript/copy-overwrite/scripts/threshold-ratchet-families.mjs +12 -0
  281. package/typescript/package-lisa/package.lisa.json +72 -42
  282. package/plugins/lisa/rules/eager/automation-runbook-contract.md +0 -92
  283. package/plugins/lisa/rules/eager/bdd-e2e-coverage.md +0 -51
  284. package/plugins/lisa/rules/eager/blocker-containment.md +0 -53
  285. package/plugins/lisa/rules/eager/claim-archaeology.md +0 -37
  286. package/plugins/lisa/rules/eager/claim-evidence-mapping.md +0 -78
  287. package/plugins/lisa/rules/eager/claim-time-guards.md +0 -32
  288. package/plugins/lisa/rules/eager/control-reachability.md +0 -39
  289. package/plugins/lisa/rules/eager/convergent-review.md +0 -24
  290. package/plugins/lisa/rules/eager/credential-substrate-precedence.md +0 -54
  291. package/plugins/lisa/rules/eager/dependency-decision-records.md +0 -32
  292. package/plugins/lisa/rules/eager/dependency-internalization-kit.md +0 -42
  293. package/plugins/lisa/rules/eager/dependency-trust-classes.md +0 -43
  294. package/plugins/lisa/rules/eager/deployed-state-readback.md +0 -47
  295. package/plugins/lisa/rules/eager/derived-branch-plan.md +0 -47
  296. package/plugins/lisa/rules/eager/design-source-of-truth.md +0 -38
  297. package/plugins/lisa/rules/eager/design-value-binding.md +0 -98
  298. package/plugins/lisa/rules/eager/documentation-source-paths.md +0 -13
  299. package/plugins/lisa/rules/eager/factory-model.md +0 -41
  300. package/plugins/lisa/rules/eager/leaf-only-lifecycle.md +0 -70
  301. package/plugins/lisa/rules/eager/observability-audit.md +0 -15
  302. package/plugins/lisa/rules/eager/prd-definition-of-ready.md +0 -32
  303. package/plugins/lisa/rules/eager/prd-lifecycle-rollup.md +0 -31
  304. package/plugins/lisa/rules/eager/pre-flight-autofill.md +0 -84
  305. package/plugins/lisa/rules/eager/project-learnings.md +0 -22
  306. package/plugins/lisa/rules/eager/promotion-contract.md +0 -18
  307. package/plugins/lisa/rules/eager/readiness-rubric.md +0 -58
  308. package/plugins/lisa/rules/eager/ready-role-filing.md +0 -29
  309. package/plugins/lisa/rules/eager/rejection-detection.md +0 -64
  310. package/plugins/lisa/rules/eager/repo-scope-split.md +0 -43
  311. package/plugins/lisa/rules/eager/reset-seed-coverage.md +0 -50
  312. package/plugins/lisa/rules/eager/usage-accounting.md +0 -33
  313. package/plugins/lisa/rules/eager/work-item-definition-of-ready.md +0 -27
  314. package/plugins/lisa-copilot/rules/eager/automation-runbook-contract.md +0 -92
  315. package/plugins/lisa-copilot/rules/eager/bdd-e2e-coverage.md +0 -51
  316. package/plugins/lisa-copilot/rules/eager/blocker-containment.md +0 -53
  317. package/plugins/lisa-copilot/rules/eager/claim-archaeology.md +0 -37
  318. package/plugins/lisa-copilot/rules/eager/claim-evidence-mapping.md +0 -78
  319. package/plugins/lisa-copilot/rules/eager/claim-time-guards.md +0 -32
  320. package/plugins/lisa-copilot/rules/eager/control-reachability.md +0 -39
  321. package/plugins/lisa-copilot/rules/eager/convergent-review.md +0 -24
  322. package/plugins/lisa-copilot/rules/eager/credential-substrate-precedence.md +0 -54
  323. package/plugins/lisa-copilot/rules/eager/dependency-decision-records.md +0 -32
  324. package/plugins/lisa-copilot/rules/eager/dependency-internalization-kit.md +0 -42
  325. package/plugins/lisa-copilot/rules/eager/dependency-trust-classes.md +0 -43
  326. package/plugins/lisa-copilot/rules/eager/deployed-state-readback.md +0 -47
  327. package/plugins/lisa-copilot/rules/eager/derived-branch-plan.md +0 -47
  328. package/plugins/lisa-copilot/rules/eager/design-source-of-truth.md +0 -38
  329. package/plugins/lisa-copilot/rules/eager/design-value-binding.md +0 -98
  330. package/plugins/lisa-copilot/rules/eager/documentation-source-paths.md +0 -13
  331. package/plugins/lisa-copilot/rules/eager/factory-model.md +0 -41
  332. package/plugins/lisa-copilot/rules/eager/leaf-only-lifecycle.md +0 -70
  333. package/plugins/lisa-copilot/rules/eager/observability-audit.md +0 -15
  334. package/plugins/lisa-copilot/rules/eager/prd-definition-of-ready.md +0 -32
  335. package/plugins/lisa-copilot/rules/eager/prd-lifecycle-rollup.md +0 -31
  336. package/plugins/lisa-copilot/rules/eager/pre-flight-autofill.md +0 -84
  337. package/plugins/lisa-copilot/rules/eager/project-learnings.md +0 -22
  338. package/plugins/lisa-copilot/rules/eager/promotion-contract.md +0 -18
  339. package/plugins/lisa-copilot/rules/eager/readiness-rubric.md +0 -58
  340. package/plugins/lisa-copilot/rules/eager/ready-role-filing.md +0 -29
  341. package/plugins/lisa-copilot/rules/eager/rejection-detection.md +0 -64
  342. package/plugins/lisa-copilot/rules/eager/repo-scope-split.md +0 -43
  343. package/plugins/lisa-copilot/rules/eager/reset-seed-coverage.md +0 -50
  344. package/plugins/lisa-copilot/rules/eager/usage-accounting.md +0 -33
  345. package/plugins/lisa-copilot/rules/eager/work-item-definition-of-ready.md +0 -27
  346. package/plugins/lisa-cursor/rules/automation-runbook-contract.mdc +0 -97
  347. package/plugins/lisa-cursor/rules/bdd-e2e-coverage.mdc +0 -56
  348. package/plugins/lisa-cursor/rules/blocker-containment.mdc +0 -58
  349. package/plugins/lisa-cursor/rules/claim-archaeology.mdc +0 -42
  350. package/plugins/lisa-cursor/rules/claim-evidence-mapping.mdc +0 -83
  351. package/plugins/lisa-cursor/rules/claim-time-guards.mdc +0 -37
  352. package/plugins/lisa-cursor/rules/control-reachability.mdc +0 -44
  353. package/plugins/lisa-cursor/rules/convergent-review.mdc +0 -29
  354. package/plugins/lisa-cursor/rules/credential-substrate-precedence.mdc +0 -59
  355. package/plugins/lisa-cursor/rules/dependency-decision-records.mdc +0 -37
  356. package/plugins/lisa-cursor/rules/dependency-internalization-kit.mdc +0 -47
  357. package/plugins/lisa-cursor/rules/dependency-trust-classes.mdc +0 -48
  358. package/plugins/lisa-cursor/rules/deployed-state-readback.mdc +0 -52
  359. package/plugins/lisa-cursor/rules/derived-branch-plan.mdc +0 -52
  360. package/plugins/lisa-cursor/rules/design-source-of-truth.mdc +0 -43
  361. package/plugins/lisa-cursor/rules/design-value-binding.mdc +0 -103
  362. package/plugins/lisa-cursor/rules/documentation-source-paths.mdc +0 -18
  363. package/plugins/lisa-cursor/rules/factory-model.mdc +0 -46
  364. package/plugins/lisa-cursor/rules/leaf-only-lifecycle.mdc +0 -75
  365. package/plugins/lisa-cursor/rules/observability-audit.mdc +0 -20
  366. package/plugins/lisa-cursor/rules/prd-definition-of-ready.mdc +0 -37
  367. package/plugins/lisa-cursor/rules/prd-lifecycle-rollup.mdc +0 -36
  368. package/plugins/lisa-cursor/rules/pre-flight-autofill.mdc +0 -89
  369. package/plugins/lisa-cursor/rules/project-learnings.mdc +0 -27
  370. package/plugins/lisa-cursor/rules/promotion-contract.mdc +0 -23
  371. package/plugins/lisa-cursor/rules/readiness-rubric.mdc +0 -63
  372. package/plugins/lisa-cursor/rules/ready-role-filing.mdc +0 -34
  373. package/plugins/lisa-cursor/rules/rejection-detection.mdc +0 -69
  374. package/plugins/lisa-cursor/rules/repo-scope-split.mdc +0 -48
  375. package/plugins/lisa-cursor/rules/reset-seed-coverage.mdc +0 -55
  376. package/plugins/lisa-cursor/rules/usage-accounting.mdc +0 -38
  377. package/plugins/lisa-cursor/rules/work-item-definition-of-ready.mdc +0 -32
  378. package/plugins/src/base/rules/eager/automation-runbook-contract.md +0 -92
  379. package/plugins/src/base/rules/eager/bdd-e2e-coverage.md +0 -51
  380. package/plugins/src/base/rules/eager/blocker-containment.md +0 -53
  381. package/plugins/src/base/rules/eager/claim-archaeology.md +0 -37
  382. package/plugins/src/base/rules/eager/claim-evidence-mapping.md +0 -78
  383. package/plugins/src/base/rules/eager/claim-time-guards.md +0 -32
  384. package/plugins/src/base/rules/eager/control-reachability.md +0 -39
  385. package/plugins/src/base/rules/eager/convergent-review.md +0 -24
  386. package/plugins/src/base/rules/eager/credential-substrate-precedence.md +0 -54
  387. package/plugins/src/base/rules/eager/dependency-decision-records.md +0 -32
  388. package/plugins/src/base/rules/eager/dependency-internalization-kit.md +0 -42
  389. package/plugins/src/base/rules/eager/dependency-trust-classes.md +0 -43
  390. package/plugins/src/base/rules/eager/deployed-state-readback.md +0 -47
  391. package/plugins/src/base/rules/eager/derived-branch-plan.md +0 -47
  392. package/plugins/src/base/rules/eager/design-source-of-truth.md +0 -38
  393. package/plugins/src/base/rules/eager/design-value-binding.md +0 -98
  394. package/plugins/src/base/rules/eager/documentation-source-paths.md +0 -13
  395. package/plugins/src/base/rules/eager/factory-model.md +0 -41
  396. package/plugins/src/base/rules/eager/leaf-only-lifecycle.md +0 -70
  397. package/plugins/src/base/rules/eager/observability-audit.md +0 -15
  398. package/plugins/src/base/rules/eager/prd-definition-of-ready.md +0 -32
  399. package/plugins/src/base/rules/eager/prd-lifecycle-rollup.md +0 -31
  400. package/plugins/src/base/rules/eager/pre-flight-autofill.md +0 -84
  401. package/plugins/src/base/rules/eager/project-learnings.md +0 -22
  402. package/plugins/src/base/rules/eager/promotion-contract.md +0 -18
  403. package/plugins/src/base/rules/eager/readiness-rubric.md +0 -58
  404. package/plugins/src/base/rules/eager/ready-role-filing.md +0 -29
  405. package/plugins/src/base/rules/eager/rejection-detection.md +0 -64
  406. package/plugins/src/base/rules/eager/repo-scope-split.md +0 -43
  407. package/plugins/src/base/rules/eager/reset-seed-coverage.md +0 -50
  408. package/plugins/src/base/rules/eager/usage-accounting.md +0 -33
  409. package/plugins/src/base/rules/eager/work-item-definition-of-ready.md +0 -27
@@ -3,7 +3,7 @@
3
3
  export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
4
4
  "all/copy-contents/.gitattributes": "e19d1a971de1a9142cb13d58ce56a98a3ec1c0594a6930ca7f92cb5ef4135d40",
5
5
  "all/copy-contents/gitignore": "66e105ae1b6874e6c587d128a04ff5a5005bf923759fc41cc31d73b9ba44bacf",
6
- "all/copy-overwrite/scripts/check-conflict-markers.mjs": "d30a12d0737381bfc97f2343dca78824a94c1e076848b5e0b18abce18d6f661c",
6
+ "all/copy-overwrite/scripts/check-conflict-markers.mjs": "8a4b2cab9ac32a855e2adc1a7a3c6f7a9ac35dcb75cda2fac7eea144ced50098",
7
7
  "all/copy-overwrite/scripts/check-npm-publish-landed.mjs": "bba6114e5e4643575749210819acfda207260ac1db5fcb48c33c320c3a9503ca",
8
8
  "all/copy-overwrite/scripts/check-orphaned-branches.mjs": "ba88891a0a9be364ae225e133642c719e2b79bf29847a5ddbda66b740b1d9909",
9
9
  "all/copy-overwrite/scripts/check-release-package-identity.mjs": "a0f17592d4436de4c240f7c78512537581aa2ed5e89f0caf1fe890694163a873",
@@ -11,7 +11,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
11
11
  "all/copy-overwrite/scripts/check-third-party-action-pins.mjs": "9f441b6b8697f0a64abd29125eb7881ebdb0c8d47487bdd18ff09633eb3dab19",
12
12
  "all/copy-overwrite/scripts/check-third-party-review-evidence.mjs": "95f91f2a74ed4e523d064d5d374eadd1c1114f03a3a4fa41532c9b0fd32089de",
13
13
  "all/copy-overwrite/scripts/lib/bounded-spawn.mjs": "72e277ada531914d7bc51c3cb8dc67b8881aa817d96fa2f9f4d81668a3d3bbc1",
14
- "all/copy-overwrite/scripts/lib/gate-failure-diagnosis.mjs": "59cdf9163880189a18e1b9ff6e587048101812f424d219f429189f0978df8a0f",
14
+ "all/copy-overwrite/scripts/lib/gate-failure-diagnosis.mjs": "c565984dcd33bc5d26a126c25cec9a0734d87c0d9540479168a77f51b980809f",
15
15
  "all/copy-overwrite/scripts/lib/invoked-as-script.mjs": "fbb9b88fc85a3e22f21af39e1c17acf67ff83fc6b5a6cdc8081bde333c48faa7",
16
16
  "all/copy-overwrite/scripts/lib/kill-marks.mjs": "13388da7203b02ba84a845abd7885074bc8a495e215437a97122060d69367030",
17
17
  "all/copy-overwrite/scripts/lib/placeholder-expiry.mjs": "101e8e230618aa817c88534c3b22d069afa5d30fc8e742a681af2f5edff6f1af",
@@ -20,28 +20,28 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
20
20
  "all/copy-overwrite/scripts/lisa-commit-msg-gates.mjs": "5d587fd849cef02e9706d084ac2b508f3885da0ba59b76311e3b666f4fbff01e",
21
21
  "all/copy-overwrite/scripts/lisa-cross-worktree-guard.mjs": "2ca521021c535be700caaaf4755a54363f685a9a85e435624833cb838a072c5d",
22
22
  "all/copy-overwrite/scripts/lisa-destructive-guard.mjs": "f0f3c43bbb6d1e389135b0205a051e64891e539d4272df2a87841ee82a8b7a55",
23
- "all/copy-overwrite/scripts/lisa-enforcement-fallback.sh": "916b2b48a2b55c2090468c48c972b6c7c5fad39fb53956ceffebdd1ff0c69230",
23
+ "all/copy-overwrite/scripts/lisa-enforcement-fallback.sh": "f558e398ff72a8cd3515316880fa648a679b8bfed3ce04afced136d22f1a4fd8",
24
24
  "all/copy-overwrite/scripts/lisa-environment-prepare.mjs": "94d1d76b5c25059d93ee888dc824d1621adc8e3dbe368904543b37a82259c4a3",
25
25
  "all/copy-overwrite/scripts/lisa-floor-collisions.mjs": "345832c63c85df32acbed9b183b06239fc10ccb1491bd11607b5840ac1d18573",
26
26
  "all/copy-overwrite/scripts/lisa-gates.mjs": "de1bb66dd26e504a98485e090691df43dd22e961929abfc1bf70a32a4fb84959",
27
27
  "all/copy-overwrite/scripts/lisa-hooks/block-blind-automerge.sh": "3f58a1bc31a36ae1720591013cd59fd3e9046c865aae2a795b29a2405aefb6a1",
28
- "all/copy-overwrite/scripts/lisa-hooks/block-direct-issue-create.sh": "d3d8598080c3b4512957588d6d280facca2da6bf18a5a985b1f2c0d53a7c34aa",
28
+ "all/copy-overwrite/scripts/lisa-hooks/block-direct-issue-create.sh": "b0693e6c7c73638ce9044c402b80999cebc0e2ada68dbb65dc94f810b732f3e7",
29
29
  "all/copy-overwrite/scripts/lisa-hooks/block-instruction-file-edits.sh": "3e709e1ec8a5843c00684bc477ad32ddab2c5fdb11f71d5aeec0c49609eaf025",
30
30
  "all/copy-overwrite/scripts/lisa-hooks/block-managed-file-edits.sh": "2bc98db04ded8aa64af5d894f485173fbfad81976cbd0c6938de6910acfbd577",
31
31
  "all/copy-overwrite/scripts/lisa-hooks/block-no-verify.sh": "e987dd924dbbdc35eddf607a27372bfac6cf743c9ddb888d8a81b4b128c10908",
32
32
  "all/copy-overwrite/scripts/lisa-hooks/block-shell-json-parsing.sh": "234cb82cc9033bd04940a553d4ddc95b078e585e41777d6529d887676edc40b1",
33
33
  "all/copy-overwrite/scripts/lisa-hooks/parity-safety-net-heredoc.py": "a76959fff54b59af0d46cc8066d75bdfaf8bfd0591505663ab7cfcdf38f34fa6",
34
- "all/copy-overwrite/scripts/lisa-hooks/parity-safety-net.sh": "6cefe613e6cf296fc10927ed886981b00e1f627cb98c1ad1de20db5c829ddfd2",
34
+ "all/copy-overwrite/scripts/lisa-hooks/parity-safety-net.sh": "c78524d4f11d1de4887c6df139c809dac05813ead6f1e0261f39b8c54f37263c",
35
35
  "all/copy-overwrite/scripts/lisa-hooks/sonar-secrets.sh": "e0b0073fe44f6e78b74f05cb232d30a3121acc3600bdbd5bc4299c1c710d56a2",
36
36
  "all/copy-overwrite/scripts/lisa-hooks/worktree-binding-guard.mjs": "cccc2f5ba33bc3abe03b850d3dd747c27553f985b9213d1b1a35297312fa1586",
37
37
  "all/copy-overwrite/scripts/lisa-hooks/worktree-binding-guard.sh": "662652c09e5eb70f14db61136ea1206e9b337fce49dcabc774a45a07a0fd718f",
38
- "all/copy-overwrite/scripts/lisa-lint-staged-preflight.mjs": "ce4bc224a102e3ac2bc29d8f2038eefd619129d4639c25954c93f05011f7f977",
38
+ "all/copy-overwrite/scripts/lisa-lint-staged-preflight.mjs": "76c568bb393c47ef0e48bf0aaaa092be60ab137e79a5bb39b03cd83decd7b91e",
39
39
  "all/copy-overwrite/scripts/lisa-postinstall.mjs": "f16196413b0050a805327f9d6d7b55913f9df70c8be4b8805bb9267e9abb4abf",
40
40
  "all/copy-overwrite/scripts/lisa-reconcile-policy.mjs": "adbf8dccc221ec83641f1f5358ccafc9ec70a4ea6372ae6ad874603d767d693d",
41
- "all/copy-overwrite/scripts/lisa-run-gates.mjs": "2a961b0ea1a8cbd0311dbb3643b427afdf46157c9372165b1a757ad8efb7062b",
41
+ "all/copy-overwrite/scripts/lisa-run-gates.mjs": "03f444baebafd72f5ecdc2088a599cb990e9e9f3aa79e3b9462904d6e7a560d7",
42
42
  "all/copy-overwrite/scripts/lisa-schema-validate.mjs": "f70ecd3712dd2ca77a8851c7505ce79f948a57e5a2e28f56c5d0ccd047712688",
43
43
  "all/copy-overwrite/scripts/lisa-test-node.mjs": "cd436584d756442fc393557a3244bbdacdf915bd0fb1a472ebe7afa8103d3475",
44
- "all/copy-overwrite/scripts/lisa-work-item.mjs": "e5e7d4322195d0e675fd62a8630cefa811d2459cea752163787d01cfa65e5ed7",
44
+ "all/copy-overwrite/scripts/lisa-work-item.mjs": "250d44a7a862e59cbbc35f66e8dd28e68c9a9df7cd1c27c547b3aadadc2b5956",
45
45
  "all/copy-overwrite/scripts/lisa-worktree-guard.mjs": "2535ef2a60b3413dacb8491c008ab28f0a07929196277d1d1fed54a04740c025",
46
46
  "all/copy-overwrite/scripts/schemas/lisa-command-envelope.v1.schema.json": "d153b7c2953a30f180e38f09e98240c63327f5196eeba9bdf545e5a1f125a879",
47
47
  "all/copy-overwrite/scripts/schemas/lisa-state-contract.v1.schema.json": "6b7afe4ffeba8aaa53871d8855172f7eacde05953b1321145218ec638ff5c1c4",
@@ -76,7 +76,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
76
76
  "cdk/deletions.json": "3469a25e885836f301e8d24599dd13f5195ef86ffdea1f03f3fbb86d6b1f1674",
77
77
  "cdk/merge/.claude/settings.json": "bc5eecf114d94f4894f8781e15248930d4a8009dce6431ec44e54cc5ee947300",
78
78
  "cdk/merge/.oxlintrc.json": "f7d248cf8a89561374d7e68e24aa780f4a6a523938475ad685f034ce0194d75c",
79
- "cdk/package-lisa/package.lisa.json": "13015b1a75fc15ef3673202084c7d5a72366ff17982674ff10c5ab394f61963d",
79
+ "cdk/package-lisa/package.lisa.json": "503c229ec5047a0e757270b0f2a89380225290d2a549f15fbc896a341596c0db",
80
80
  "eslint-plugin-code-organization/README.md": "e70c9e262ce3a97e1f9fe1897ffa71e3d1b124f10486b90ead5d4a5252977826",
81
81
  "eslint-plugin-code-organization/__tests__/enforce-statement-order.test.js": "27e8e2cdf9bae3c35c22f17407570a163cfe52bd848ec40f7f2f1068e97c10c9",
82
82
  "eslint-plugin-code-organization/index.js": "9be5ecb135bc30cf39a3371825e94f8a379d8339653297bd7e48c07624923c83",
@@ -171,7 +171,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
171
171
  "expo/github-rulesets/nightly-e2e-health.json": "af9556f52bbb04d303f557eb178d876d82348d15a991729b8a96fb1f06d5b03a",
172
172
  "expo/merge/.claude/settings.json": "88dead1b9146e016fb2b2e63b7234d6adf94a3b3e5e30b98214e5660a219f737",
173
173
  "expo/merge/.oxlintrc.json": "95b3069256c0040be0ef1a5adae46d14687ad56fb18f473a653ba2de45d106bb",
174
- "expo/package-lisa/package.lisa.json": "4ed407457ad644f74cb74e238e5cae6c298cbb5985f45a33cdab25193a3317ff",
174
+ "expo/package-lisa/package.lisa.json": "272c87c289ef8f174921d5ba3455e94d1bee90b278a9912844661f274a38c762",
175
175
  "harper-fabric/copy-contents/.prettierignore": "478c782f4c5611187e21584dfd5522e37fc636c5eb03394fea3db45321c6712c",
176
176
  "harper-fabric/copy-contents/gitignore": "d091c40fd0ea3068491f1be0d6510090ae872ca95d0d058ef4595d6492d13897",
177
177
  "harper-fabric/copy-overwrite/.github/workflows/ci.yml": "1fef0b72f890869e656dbe3b9463c83725ea8ca8e24e50b58d93c68502603fd0",
@@ -191,7 +191,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
191
191
  "harper-fabric/deletions.json": "699c6e445c053bc95cdf4b7ef6a852e243d1073d21087ed7c08db69d1d29ac9c",
192
192
  "harper-fabric/merge/.claude/settings.json": "3368043731215c6e2f107f1599eff1c90abc70d09a1d798f4ed79a280c4f3ffb",
193
193
  "harper-fabric/merge/.oxlintrc.json": "b41ea588eed47e0f1532aab5f6226b82586269b84edd1947bdde603e0a8513fa",
194
- "harper-fabric/package-lisa/package.lisa.json": "6692125830e71cbc9d7208532aca69d7b06de55bfacb5d7ab5dde46985dd4e1e",
194
+ "harper-fabric/package-lisa/package.lisa.json": "b801484de5c9dcaa4b7c9fe29d3d1b7fed601f68f53679a3b3dac6a3aa83aefb",
195
195
  "nestjs/copy-overwrite/eslint.config.ts": "300895743cd8e3041f164902e1c8e509d8ef07474848a70621ac354d73595477",
196
196
  "nestjs/copy-overwrite/eslint.nestjs.ts": "50986c80ebfcbef86b6c24d6a50ace0964d43fe85c65a732230388caffab453c",
197
197
  "nestjs/copy-overwrite/eslint.slow.config.ts": "602a21f47370a0a947e92bced1b93bf8fa4c146e07c944ffe1d56ef50914a688",
@@ -235,9 +235,9 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
235
235
  "nestjs/deletions.json": "25a66a505f9ef5c71169e2293c9f1b263f0a1e42b69851825c3cd3cc6e3f0b00",
236
236
  "nestjs/merge/.claude/settings.json": "28b1221fa0d18657af1b89392a1854c77777889f27c82162a9c37b79c81be5f8",
237
237
  "nestjs/merge/.oxlintrc.json": "1de29d135744df0258e8659ee0b684acf84e687bbefade51db0576813e6ff097",
238
- "nestjs/package-lisa/package.lisa.json": "4b651dbd8be238a11bdac24c45d1f075b1ac20dcd82424abb8e36d7b432f7308",
238
+ "nestjs/package-lisa/package.lisa.json": "4c61c138f38bac222540c9c27cb3637e9a22d102e32e9347d46efbf55feff593",
239
239
  "npm-package/create-only/.github/workflows/publish-to-npm.yml": "20760529dd59186baf870fb2d0ac555ff95bc3dc75ea96ba4564bf37d61f708e",
240
- "npm-package/package-lisa/package.lisa.json": "050ded0503308533a865149c0185a0fdfac8be1635e5e4eb14c091e5a2486960",
240
+ "npm-package/package-lisa/package.lisa.json": "26631370a868f6df3e114d60311a59312da832bf78dd08154a4829f6473a6e14",
241
241
  "oxlint/base.json": "8cbc563bdfbbaf455742cef24d33676f45b55baf1ea62b529018b2d112d70f8a",
242
242
  "oxlint/cdk.json": "9070da081a42990d8e32a58d1fdc577f9a75cc14040bf2fbf74b145179213d6f",
243
243
  "oxlint/expo.json": "75cd8305a86230d8493fc2cc136796c58b9ff77a92f12299b1ae93f9b5f0ad95",
@@ -250,6 +250,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
250
250
  "phaser/copy-overwrite/.github/workflows/ci.yml": "5640ec1c9b317e40749b8994487c24ad8123ebff66a2773696ad95f9b1c047b0",
251
251
  "phaser/copy-overwrite/.husky/pre-push.verify": "d03bc6d18e20c368d37abd4d1000589cbbfb67afab0ad58da4f18ed73ec65ee9",
252
252
  "phaser/copy-overwrite/ast-grep/rule-tests/.gitkeep": "fd9b902271d9cbaca0ead2a1e659776db904c10b06ceed7e5bc43fa57b89aba1",
253
+ "phaser/copy-overwrite/ast-grep/rules/no-day-truncating-file-age-predicate.yml": "6fad69e83ab937f6d929305be46fbe38390cd30c8b525ab0a24a5ac65d377ef6",
253
254
  "phaser/copy-overwrite/ast-grep/rules/phaser/no-canvas-renderer.yml": "6bd12358ba4147e11758b9b128404fc48964e6d1b7b1a046080c20b6f8d756f7",
254
255
  "phaser/copy-overwrite/ast-grep/rules/phaser/no-raw-webgl-context.yml": "1171bc19922cef9d09511531856ade7499e76a4174551d58d1b7a642082719e0",
255
256
  "phaser/copy-overwrite/ast-grep/utils/.gitkeep": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
@@ -264,7 +265,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
264
265
  "phaser/deletions.json": "699c6e445c053bc95cdf4b7ef6a852e243d1073d21087ed7c08db69d1d29ac9c",
265
266
  "phaser/merge/.claude/settings.json": "67214a76e1902a8a04a58eb938dba9eb8de39b55fda9f748eb9e7c4bbd31da99",
266
267
  "phaser/merge/.oxlintrc.json": "02c0d70e6e07bc0e981f94a1e2ccd01a2c295c4c66e8b8ea9b2f363d44fa5c06",
267
- "phaser/package-lisa/package.lisa.json": "4d4246e2e1da2d49a0ef6f73000cd87cd04df080ccd276acfba6e90bf12a8b80",
268
+ "phaser/package-lisa/package.lisa.json": "904be9a79354c652d34cac5c018349893bd69c23916698fac3c5265248ecbfc8",
268
269
  "plugins/src/base/agents/architecture-specialist.md": "076feb3a09ef056628bc33242f93278ce6b00f55878984a18a9337d326b5e1d4",
269
270
  "plugins/src/base/agents/bug-fixer.md": "e01e5d3678e464385105c9abf90e4b70ae262fd856f1e86b2ebe443dae9e17b1",
270
271
  "plugins/src/base/agents/builder.md": "75900b28a384539bba8c54f3c7b2a6ed83786e502093822ed308d324f0461c01",
@@ -370,7 +371,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
370
371
  "plugins/src/base/hooks/block-blind-automerge.agy.sh": "7a1263ea15df37a24d959944a9b9bfe579df189abf8e697f967bbaba9d3ffc90",
371
372
  "plugins/src/base/hooks/block-blind-automerge.sh": "943a362d5fd879911710689d3d317c78ce7d74718836af8f51b7ddc204c7e751",
372
373
  "plugins/src/base/hooks/block-direct-issue-create.agy.sh": "3e8e54a608e57b57e3fd372ad5b9a7b2794ce4934a67e36f374c8a06dc16e69e",
373
- "plugins/src/base/hooks/block-direct-issue-create.sh": "688cdd65c748dc35e91ae4415ff1a9a78ca3b731891625b229af1587d628e04d",
374
+ "plugins/src/base/hooks/block-direct-issue-create.sh": "5389e0991580eab0354a9b3f66bc8c5ef7935ef2e4187b032d12f80e87da0edf",
374
375
  "plugins/src/base/hooks/block-host-name-leak.agy.sh": "9522a2db621178d9cee5bf70ff3948251c5043868f372924bfee19126dbd1c41",
375
376
  "plugins/src/base/hooks/block-host-name-leak.mjs": "e8e2e6b63da631093d2f1bfee843ce913fa800a60e61274bda7222aaee195b9b",
376
377
  "plugins/src/base/hooks/block-host-name-leak.sh": "853a890c7fe9e490e9271d7606b087643e542954fcdec4631172a40ef36bf32b",
@@ -384,7 +385,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
384
385
  "plugins/src/base/hooks/block-shell-json-parsing.sh": "90601e31603c440d8f19d213d63bfef8d18596c60f88cb6e28c93d12453c5c0c",
385
386
  "plugins/src/base/hooks/cleanup-stale-worktrees.sh": "1dc1aa62e5873acba5471195710e2a5594091b94dc36287875ace14e0e2cd2d3",
386
387
  "plugins/src/base/hooks/debug-hook.sh": "8416fc2603cabf08245db998736a291d3b5aedf45b4a6f61c0060f07134e6530",
387
- "plugins/src/base/hooks/discharge-work-item-gates.sh": "877dc5ba2c8a26b7610346d53e47f4eac48dbe1c2474d01575b12921436b8c64",
388
+ "plugins/src/base/hooks/discharge-work-item-gates.sh": "68ece38c1f433e705c5bb284282468d65adbf46d8264ab0cd5855bab816bb0ea",
388
389
  "plugins/src/base/hooks/enforce-team-first.sh": "104922ba5912b797bf9ce15881dcef76916ea1782ac1e669151265b7db9fb263",
389
390
  "plugins/src/base/hooks/enforce-verification-gate.sh": "29885d07ff6da70f193ea0f0691d63f324deb79fbd7ede519596415875d94458",
390
391
  "plugins/src/base/hooks/enforcement-vintage.mjs": "06599ee8b5ae9e24125b12b5d79f0c704a71535efe3f27705b2db7e53a0c6ba1",
@@ -398,13 +399,13 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
398
399
  "plugins/src/base/hooks/install-pkgs.sh": "e9a13faba849a277410dde911ab102ee6f88ef915b33571bb1d4eef904172db5",
399
400
  "plugins/src/base/hooks/parity-safety-net-heredoc.py": "f21b1232ac82bd0e42d2ba43c68f4cc4546334fc885ba31747881f427097ef78",
400
401
  "plugins/src/base/hooks/parity-safety-net.agy.sh": "ce9bd2b4566ad9147e4ace56434cffbbe87edb4ccbb57549ab3fd9f4c671ced4",
401
- "plugins/src/base/hooks/parity-safety-net.sh": "f0bc51085b954b4fc9dcda8329069e8c23cc2a3a8bc388d69a1bb43e96af4bda",
402
+ "plugins/src/base/hooks/parity-safety-net.sh": "24264be94a7636db01c147b1eef6fcb718da802a9fbd4c870962c896a2122b81",
402
403
  "plugins/src/base/hooks/secrets-preflight.sh": "cdc638627e5769770aefb061ea0ddfacc1888a8eab3a5fade6c43129a2d3ff6e",
403
404
  "plugins/src/base/hooks/setup-jira-cli.sh": "384bc8d935a2ed5788d7185979b3e74c75c17cd4bc5c230d7d8f086ab2703443",
404
405
  "plugins/src/base/hooks/shell-write-nudge.sh": "69839af423f8792b1e52c71097316c3264425553031627c0a2f9409a9d5becd0",
405
406
  "plugins/src/base/hooks/sonar-secrets.sh": "8ec9d8eab090fd8aed69b6378160ae607b4341923ed076d9a5d08bf44d238064",
406
407
  "plugins/src/base/hooks/threshold-ratchet-compare.mjs": "2ae57ea1eb0a0199559a17ee69186953f41115986a276e641ff8b3070e2f9fa6",
407
- "plugins/src/base/hooks/threshold-ratchet-families.mjs": "41ace8a335792d00c028ea5dd4ce89491a30826aa542d39d94c7c8d20e98b6d5",
408
+ "plugins/src/base/hooks/threshold-ratchet-families.mjs": "04778f3fe4085638088b49e79e17d8ea8557913ccfd2262c0f6c63121eb98b12",
408
409
  "plugins/src/base/hooks/threshold-ratchet.mjs": "d49009c4b50e2d297a2dca730ab066dc68429fbb0d38746e0a055aae97dda9d2",
409
410
  "plugins/src/base/hooks/threshold-ratchet.sh": "b86f4d0b554e44fd119ad8a8920cd0ba6c9dbe779f7ee219d381cf0629453990",
410
411
  "plugins/src/base/hooks/ticket-sync-reminder.sh": "212f80bcdfd9e3ec2254987c5a7186d1d2d38065b330ddcdc631f76df7c4a6c0",
@@ -413,50 +414,21 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
413
414
  "plugins/src/base/hooks/withdrawn-rulings.sh": "5dbf429b6ec73c3c29fb96008efa1015feaa4812c1b4bb26aaa5d0b904a0ff9c",
414
415
  "plugins/src/base/hooks/worktree-binding-guard.mjs": "303cdf5eae2937f9a37d33a7db722881c082c670581fbbcfbc48c9b3a8e7c413",
415
416
  "plugins/src/base/hooks/worktree-binding-guard.sh": "db57cb8a5b1d6b644e0dbc28a2ce77b2eb00e30695a6270323ac5f1cf494e46d",
416
- "plugins/src/base/rules/eager/automation-runbook-contract.md": "0442c478cac32b2522534309bda96a30e1cd268b9041d2b6a7a63d08a5c49920",
417
- "plugins/src/base/rules/eager/base-rules.md": "d3a4bd518acf2c6f4e866042542f9155fdbf5b2fdad5747e1afd097bdef15351",
418
- "plugins/src/base/rules/eager/bdd-e2e-coverage.md": "379c0fcbf69be3f536d99a0034a3fe1548cfd05d37af6c6504a7e921401eb88b",
419
- "plugins/src/base/rules/eager/blocker-containment.md": "1f4bcc2a165dad8bcc700f8c97ab142beefbf943b16bcc4ed7428dc766e10a81",
420
- "plugins/src/base/rules/eager/claim-archaeology.md": "96afa034075593dfb7433c5c990b472a6b6f7320332da42ef54b1f01fa45664b",
421
- "plugins/src/base/rules/eager/claim-evidence-mapping.md": "d12a6153b8c22db2826153c479d107c7a885e22cbcdd49e4fd8193e0cbbe8ae3",
422
- "plugins/src/base/rules/eager/claim-time-guards.md": "1bd94591d65106b075b3114f62ed2a5523ccb929f258f310b1401914c6374805",
417
+ "plugins/src/base/rules/eager/00-rule-index.md": "d1d1c64b325665bc0e777b9ca36a4085420ea2a98452a3381679e9d073dd0ad6",
418
+ "plugins/src/base/rules/eager/base-rules.md": "0f4feae799871827c8ddbef342c6db7bb95aee13c55dec6ecfda9ba5a0a5bd78",
423
419
  "plugins/src/base/rules/eager/coding-philosophy.md": "cf2c52032e0368d81f17f002fed5c957ab350d01fc4a43f66b5f366516bac54a",
424
- "plugins/src/base/rules/eager/config-resolution.md": "2b7e1490943807b7161fd97d97591d905fdc452c2c69dfb404c8b2e925d305ee",
425
- "plugins/src/base/rules/eager/control-reachability.md": "d0ab078dfa93e386fb1734a0fe1baefb7cb8efc4cd71d31b90e09412ae0e5c5f",
426
- "plugins/src/base/rules/eager/convergent-review.md": "ba4ba53863ef99be353c07c01195fa4ae2923ef2b2a5ad4427072802c260d208",
427
- "plugins/src/base/rules/eager/credential-substrate-precedence.md": "f6013bc428294e6a1e3321e656dc74ad9ec44236b4e5d46d799c3467da1688bf",
428
- "plugins/src/base/rules/eager/dependency-decision-records.md": "e22888f107906992e863fca50f26c2c4b124da7132535cacfac71e4f3085728f",
429
- "plugins/src/base/rules/eager/dependency-internalization-kit.md": "9e2cc78afffc477c14718390ed88c42f781911c51fb7c13dada497f9e956b1a3",
430
- "plugins/src/base/rules/eager/dependency-trust-classes.md": "43a0932a7b8d4fd075b66bfe778025d808a13d9aa61ae793e9eb2fc8a555a381",
431
- "plugins/src/base/rules/eager/deployed-state-readback.md": "1080588a29353429fe22c4417f77d066e5397df1e71f3dc9eb2f79b09d3d53cd",
432
- "plugins/src/base/rules/eager/derived-branch-plan.md": "2e4d5a142d7a33da3d01a6a8b3c79cf8b89769b9039c8672f1a14badba30d172",
433
- "plugins/src/base/rules/eager/design-source-of-truth.md": "d85886aa5832f7952bc0768871a335f33a4899ce598bb1a114feb5f300cbc7f2",
434
- "plugins/src/base/rules/eager/design-value-binding.md": "06c28a87f32860ce6fb17fdef90a59b7be0baf99cc28d7cf0299bcd8a5e46c44",
420
+ "plugins/src/base/rules/eager/config-resolution.md": "f064147ecc33144ef1512fc1abeda253fcb420038eef498a5b986db0ea631639",
435
421
  "plugins/src/base/rules/eager/do-it-now.md": "de0c1565fa7b8a99a7f5d15af1118c3e5eb942a0d893bbb672533149fb82688e",
436
- "plugins/src/base/rules/eager/documentation-source-paths.md": "3a7c2a6264654a3cc44dd326441ba211a39c1c267033cc189c1c635adb84b52b",
437
422
  "plugins/src/base/rules/eager/empirical-inquiry.md": "67aa64ba3ecc4f3cd761111d2562662e0a2acf7892703b14ec83f7f7b073e670",
438
- "plugins/src/base/rules/eager/factory-model.md": "dee39b4276926ee27a2614bf26b985fd33bb3d115313fa6e2893de12da13ed7c",
439
423
  "plugins/src/base/rules/eager/falsifiable-checks.md": "8bf1a2b02cd1c44674ba3a131fa42f115ba693d66402264a3a365fdfaf656d1f",
440
424
  "plugins/src/base/rules/eager/history-audit.md": "e2365e3fb28230c643e943d26688a93906afa68e3e1355d3e86d4b22ab3db559",
441
425
  "plugins/src/base/rules/eager/integration-access-layer.md": "e5675ec414d0dcfbbf7a29912f39ea5fb02747aa4e6045493e636cba1e635eb7",
442
426
  "plugins/src/base/rules/eager/intent-routing.md": "a2ef2397a98fb3d991fcfb39b669e289c1e2b697191cbeb6c071d71eca836207",
443
- "plugins/src/base/rules/eager/leaf-only-lifecycle.md": "f8930b13cffd25ee2aa7d9b04839e5868e3e8565e5a718d570c13dbd7d31f682",
444
427
  "plugins/src/base/rules/eager/learnings-ladder.md": "58f70031f7ad720254e73db53f4f328f35cdce2a562c8f62e403be842abccab0",
445
428
  "plugins/src/base/rules/eager/local-ci-first.md": "8a0369f3b23c4c9906194ea2d5b6dab44bb82dee753571b7e3e27ed799a289f5",
446
429
  "plugins/src/base/rules/eager/measurement-integrity.md": "aff22dd8dfce9b527348c641a996374257fa8a552298713aae524c83858c2aa9",
447
430
  "plugins/src/base/rules/eager/not-blocked-just-waiting.md": "bd96e3a61bfd9ddf27d88b6cb62948c701b6335e9758a081cd5c1fc63048d9be",
448
- "plugins/src/base/rules/eager/observability-audit.md": "eef7f612937db85e2fb685f262a651ac0fea195fb79363224281f057dc1a6ef7",
449
- "plugins/src/base/rules/eager/prd-definition-of-ready.md": "5d30476344425f78961ed1412b06edd5e7cde478c81e1b945860b55aecf56e1f",
450
- "plugins/src/base/rules/eager/prd-lifecycle-rollup.md": "b5c58148a0ed78989e21bc7789ecf1d5448077879be01ee342ddb46d8f105a1e",
451
- "plugins/src/base/rules/eager/pre-flight-autofill.md": "b7f2deae0f0e9d4ee046c6775d5665c42c6da9ce18cae48c1e0e8449860bd515",
452
- "plugins/src/base/rules/eager/project-learnings.md": "6350cd0e21d1ca0bb391a12f700a4c1f10350269acd4353bee0b717bee42e102",
453
- "plugins/src/base/rules/eager/promotion-contract.md": "e10dc13b99c5c7621309d5764635d2465ab72e603c3c8a925c4eb27878256e8a",
454
- "plugins/src/base/rules/eager/readiness-rubric.md": "5fee9f6ce3855b147d2f03b3e82a5dc6acb60d5c99cb3d328a71d74986f8fad9",
455
- "plugins/src/base/rules/eager/ready-role-filing.md": "d471a9108bb9319297f2fb6a8b6cc14255400cdfba920aa50b065fd481e8676b",
456
- "plugins/src/base/rules/eager/rejection-detection.md": "81bec6786700322ef77b424d95c8b6676e7eba3ab6fbfa19aa0f3143b2531a84",
457
- "plugins/src/base/rules/eager/repo-scope-split.md": "a1702d6d0e9d80abc118b7c32a97ba9a988b195d86363b2d7a35e71752d9bd2e",
458
431
  "plugins/src/base/rules/eager/report-actionability.md": "7c4d5b2bea93b7cd5bb8694fa7c06f4ca8f94a19eb17832f1ccc5354b0207163",
459
- "plugins/src/base/rules/eager/reset-seed-coverage.md": "ff47c2813439e03e5cd559d7bf32cc4c7ae83544fc5616db6b9ee0e5675b6ee4",
460
432
  "plugins/src/base/rules/eager/security-audit-handling.md": "1f6effe92be66736a0c9fab634c5fdd6ad1e789865faa67bb783c67ddb4ad490",
461
433
  "plugins/src/base/rules/eager/session-status-updates.md": "bbb42e86b8eb68334b8b9c0bc70beb4895a54015e097bf745fc92156b3e24766",
462
434
  "plugins/src/base/rules/eager/settled-decisions.md": "ae1e8d1292db266038af41d9313708a3fba437c036de043ec6b0311418b56017",
@@ -464,55 +436,53 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
464
436
  "plugins/src/base/rules/eager/tool-access-gate.md": "a5413a43ec353f768586e0a1cde3836db025cb5d8b80821020602995e71aa296",
465
437
  "plugins/src/base/rules/eager/tracked-work.md": "24f04b4610eff1519d818741c6bd5ad6464a0833ef24ecb8bf6ceb35dced9a4b",
466
438
  "plugins/src/base/rules/eager/upstream-to-lisa.md": "eb8b37e789423dba78e3a77951db087c4d3f56a88478b63107ec6b9ddbf23b13",
467
- "plugins/src/base/rules/eager/usage-accounting.md": "b93fa782d61911579b25363e465bb1f4e9b7e4edb54465a346d52f74dffe5a97",
468
439
  "plugins/src/base/rules/eager/verification.md": "a6cc1d50c5b91080171490edce4d375f136a14790dcbb247ca8b736ad8f55cfd",
469
440
  "plugins/src/base/rules/eager/wiki-knowledge-source.md": "b3ae63fca40461fef19779d8f0c971553963ed8fe9c22fc504da3d8e757b3a36",
470
441
  "plugins/src/base/rules/eager/withdrawn-rulings.md": "d31ad0b430524038131474c4b7b8239a8d68562f502d2d7797f2de5bbe3b2495",
471
- "plugins/src/base/rules/eager/work-item-definition-of-ready.md": "9d9d800cba5420176705df9fae2aec0cfad81d7e6d2c306aea2f7a498eaa10a3",
472
- "plugins/src/base/rules/reference/automation-runbook-contract.md": "427be7bddf9a581dbb1c1fdbe07c02d4a1ff4ec96f4d91f409651b6ac4ff8a45",
442
+ "plugins/src/base/rules/reference/automation-runbook-contract.md": "f572c375e86290421642c1492655665d92ad94fa6b7c597e82277a0c33516f04",
473
443
  "plugins/src/base/rules/reference/base-rules.md": "938173f9e048a0f8e09bd825d97f2e3a3e97f03fc99037fcdae47a9bfa99f307",
474
- "plugins/src/base/rules/reference/bdd-e2e-coverage.md": "ba8ec8f40ecd2788d3293d424d74f0a73dd0a8b39c375c3c20dc95f40c0e9559",
475
- "plugins/src/base/rules/reference/blocker-containment.md": "2207d2687c220523a32a87771fd79f1f6441005bc4304a6cb43105750defac9d",
476
- "plugins/src/base/rules/reference/claim-archaeology.md": "fff025d47848c768d5b2c7047de744b7151eb2e44148d2df058c87310859457b",
477
- "plugins/src/base/rules/reference/claim-evidence-mapping.md": "49a3bbf4e8a9a8ca9e13eeafa672517d077060cfeb5d9710881ec9f5c3f3ec75",
478
- "plugins/src/base/rules/reference/claim-time-guards.md": "7ff87b8da8a4c79782768b203cdf9cebdac613509bfcee5a7def23f2e84f55f2",
444
+ "plugins/src/base/rules/reference/bdd-e2e-coverage.md": "ba3b4107149e2fb8399df9df416af917aece65c07b7b82b1e266617703225c9b",
445
+ "plugins/src/base/rules/reference/blocker-containment.md": "a759fb566e9614aaa99cf8e194e7ae647bd4e0a4699bd40eb5acb123051ca349",
446
+ "plugins/src/base/rules/reference/claim-archaeology.md": "4e9189652e3b11dd865e7eb8b7a3d2ce9be96b139084d414dc10017099764753",
447
+ "plugins/src/base/rules/reference/claim-evidence-mapping.md": "a747c4b19607eb782fd430942e54cf8f24465cde837c18d83a4853761c839f5f",
448
+ "plugins/src/base/rules/reference/claim-time-guards.md": "73fe5aa4e9f7af43f7295a477ed3ec2f228adf2db0abe246820ec44a5670700c",
479
449
  "plugins/src/base/rules/reference/coding-philosophy.md": "fed8381f16a5d6793a49d84d5813d62125808cb2f4981a558b119cf63e2586d9",
480
- "plugins/src/base/rules/reference/config-resolution.md": "11870d0b577fdefdb71960810b46372ff01335b099c4780bc44540d6021cd2c8",
481
- "plugins/src/base/rules/reference/control-reachability.md": "10ebbe71e9024ff79991dfbd6713614c144f5f4f895ebf7839ada2fe7704b503",
482
- "plugins/src/base/rules/reference/convergent-review.md": "788a9d4dc2af7a928c3ccbb4d53a92856bb3544941ce512cfe38068d6b35850d",
483
- "plugins/src/base/rules/reference/credential-substrate-precedence.md": "2ae7833b6a0d8416d78946e5bc480384002ec71bdf9dd6b10aded9186ddddf43",
484
- "plugins/src/base/rules/reference/dependency-decision-records.md": "84f9fb8fa0a606307e828ec355ccbf2258beeeb88795dd113abe9bb2c37db39f",
485
- "plugins/src/base/rules/reference/dependency-internalization-kit.md": "8c8e9bddbe2165905c3919ae9dd3d131b557cf9c7eb370393dfa85827076c73b",
486
- "plugins/src/base/rules/reference/dependency-trust-classes.md": "82216b80d4807e0ad302d04924032cc6a7a95b26f72ea853e378572a5c31821c",
487
- "plugins/src/base/rules/reference/deployed-state-readback.md": "74d27f8c4af5e8850398ce2b7962c68855e7a79f35454796e29313bb68d59068",
488
- "plugins/src/base/rules/reference/derived-branch-plan.md": "728ef5366d8d2645cce47e4544a7c175d7a7ba8bd6f7768ddb21e4415d53f4ad",
489
- "plugins/src/base/rules/reference/design-source-of-truth.md": "38f477cb0703627ac5daf561a9a1c42bd41be6d20113aba22f30d5e47d573dcf",
490
- "plugins/src/base/rules/reference/design-value-binding.md": "d93b79608cd7d6b5795a46c103a0cfa54d7b96d193058d08ce2139709353a008",
450
+ "plugins/src/base/rules/reference/config-resolution.md": "bc04eb47046c1195f53cfd21b1b90d29fee3d166097efe8621b33f332b248ec8",
451
+ "plugins/src/base/rules/reference/control-reachability.md": "787e48eab74f319d3b8e6591bc1cff0a794cd90bc613e058c8795299baf88dc1",
452
+ "plugins/src/base/rules/reference/convergent-review.md": "5238515a8bb2533b3ab50ca0a9bc0a51df672c5c804740a3050e1c9f95d3eeb2",
453
+ "plugins/src/base/rules/reference/credential-substrate-precedence.md": "0c4deadf6d3bc8e2d21dbc20451e2f428c5f01d905c40094e18b1cc934016c90",
454
+ "plugins/src/base/rules/reference/dependency-decision-records.md": "7991f1cc67ad4e91910ce158a192ffdc2a7020331edbf7eb15f85484fe2930fc",
455
+ "plugins/src/base/rules/reference/dependency-internalization-kit.md": "6bd4834cfa6f34d12faf8bb170ca1651a71ff50842dcbc91a2eff8eb9773fc1a",
456
+ "plugins/src/base/rules/reference/dependency-trust-classes.md": "cb67384ce622b8839900db81a98a6998d7847b936b82c24097f87341a061b9ca",
457
+ "plugins/src/base/rules/reference/deployed-state-readback.md": "636b763828561674e7a9976e3ef916e81420e3c3b6aeaccd000f77c52d2a7fa6",
458
+ "plugins/src/base/rules/reference/derived-branch-plan.md": "d4da20ff01573a31262e6d65e99191200354755bd477bb7ea179eff5cfad47eb",
459
+ "plugins/src/base/rules/reference/design-source-of-truth.md": "c54f3e2b9f7a8604008332b5a7e0b138cdd0f7053266c46d98b230ad05918c55",
460
+ "plugins/src/base/rules/reference/design-value-binding.md": "9b5e751a75b30a132104e76847f12f997779cd724bb3dbed50d7bbdbe2c02668",
491
461
  "plugins/src/base/rules/reference/do-it-now.md": "46fdcc335e115d0f387af398789f443ef8dd3ab17de5f7d95120c31f913a8fce",
492
- "plugins/src/base/rules/reference/documentation-source-paths.md": "555155889c9cf279865b9d8fc554bdd461c96a3ec76a5001dfeb361a71056999",
462
+ "plugins/src/base/rules/reference/documentation-source-paths.md": "0868cb4f7dbb96f30f58cab5de7e0559faede3fb2c0d95e5b299cc4e707722fe",
493
463
  "plugins/src/base/rules/reference/empirical-inquiry.md": "8cb166ab9eff4eb30287822a4d7843f76884d70d683d7c61d6a7ffd4ff9f7159",
494
464
  "plugins/src/base/rules/reference/factory-model.md": "b28a2ea4df7c33390111667a2807d9003cf8c9a14829f6fb0dbc929b05bfed3a",
495
465
  "plugins/src/base/rules/reference/falsifiable-checks.md": "8fab1429274b80f8dc82e4cdead0023ccc8ddd333f3d7d99cd3e0456578a90ab",
496
466
  "plugins/src/base/rules/reference/history-audit.md": "20a46390f71fadda499c61193d430c3d53df49b55a4cefa50a112f82fa4b05ef",
497
467
  "plugins/src/base/rules/reference/integration-access-layer.md": "c5fc07f5f46ba1f99403b6e4fd5603d153411a9bb1838bea320b26a5bd5273d6",
498
468
  "plugins/src/base/rules/reference/intent-routing.md": "988f8f45b41056c2adaa1a3e5f6ea926ac56a2fd041c07f98a9c2b271050efdd",
499
- "plugins/src/base/rules/reference/leaf-only-lifecycle.md": "08e95253161bbc2b670407a78a6c33731d4860e2ed46bac195f24e1a80b68a0f",
469
+ "plugins/src/base/rules/reference/leaf-only-lifecycle.md": "47dbe473b538098e49524fffaa68bf56fe49db18229bff5a52cb884954f40c7a",
500
470
  "plugins/src/base/rules/reference/learnings-ladder.md": "4b6760e8ec58dea0e646cfa1b0518f468cc959ef3be55e3f87c225ec076f53c7",
501
471
  "plugins/src/base/rules/reference/local-ci-first.md": "4db796a9e159d25e5edd0d8d8d713b6556a3024a96e3882a50e19928b0e81a18",
502
472
  "plugins/src/base/rules/reference/measurement-integrity.md": "f628573c591e2cbbbbedd22821d40a3687dc14dba3aba5aebdc75c37ebd62494",
503
473
  "plugins/src/base/rules/reference/not-blocked-just-waiting.md": "bef69d0cefa92e2b8ca589bb27f8e92749140e662d54110e12f0a47890e69f14",
504
- "plugins/src/base/rules/reference/observability-audit.md": "98cf4c849baf0801bd2c46a90e7a072196649d506fbda577cc5c4019d2194551",
505
- "plugins/src/base/rules/reference/prd-definition-of-ready.md": "041a8f3c9b703b3921acc30fe92acfb9e2ab43da04cf019c102ebca98b2f4ba3",
506
- "plugins/src/base/rules/reference/prd-lifecycle-rollup.md": "f539e7b43918e173dd7491a139be078815d26098f992cd7fc86cd05878c90b9b",
507
- "plugins/src/base/rules/reference/pre-flight-autofill.md": "e61b745bb1ddfbe24634246588c13e4e78c25b50817e5e8ff02e1a9681ad1130",
474
+ "plugins/src/base/rules/reference/observability-audit.md": "aafba16866a2e8076938bc9a252870dc81ef5f3d3ff9729ad6f6aee8def1cbca",
475
+ "plugins/src/base/rules/reference/prd-definition-of-ready.md": "f5491d0e2e602844e285b05396313a20cf66e096dfc68cef8824eaf8ca643377",
476
+ "plugins/src/base/rules/reference/prd-lifecycle-rollup.md": "6fc2fe1fd7a8e0061592d89ee9f44e6c1883a2484269b3b32e2be9d59d2bec3e",
477
+ "plugins/src/base/rules/reference/pre-flight-autofill.md": "a27af6f77fed77681d1a9156b17dfc62987050b485386a754d7747f1d3207b5f",
508
478
  "plugins/src/base/rules/reference/project-learnings.md": "4c267636d842ba87953edcfafb1a15c41d82166a84f87e93f20dc2ea504ad717",
509
- "plugins/src/base/rules/reference/promotion-contract.md": "d1370532bb79262ec2a1ca48376aed796051f5dd9930cf1f1b17c993e24f469b",
510
- "plugins/src/base/rules/reference/readiness-rubric.md": "6b09f171166a7fc8e85f6e2deea68f42d89a554767bc91e8eed08d1e08501672",
511
- "plugins/src/base/rules/reference/ready-role-filing.md": "be419bc1dff0f20e5d32700dfc632e8cfa29e8cb7fbbafa06617cc2795ffed04",
512
- "plugins/src/base/rules/reference/rejection-detection.md": "43e940f9318c3c701ba54763112e2b5e526410c9109010d8f2727a15566fa3a7",
513
- "plugins/src/base/rules/reference/repo-scope-split.md": "5df96b7a41a9c4102fd1f703f5ebf0f4dd86a07f142eb9b10088459c3d264ae6",
479
+ "plugins/src/base/rules/reference/promotion-contract.md": "5355d57f061bf1c6422a3d7b41935e2a059c5e5ac2ab1705dcedd977398637ab",
480
+ "plugins/src/base/rules/reference/readiness-rubric.md": "d28790daafa6e3a38f41d9f9286fae0200581cd386f83a77c505c4ee472268fb",
481
+ "plugins/src/base/rules/reference/ready-role-filing.md": "eaf5568a6a0e3dbf07ae68281435be602b8dcf869e9ce914e0156c9934c85219",
482
+ "plugins/src/base/rules/reference/rejection-detection.md": "1d695efb187ea1475a217a7eefa86545fd0711daf6f1d50970f83b2a79632c07",
483
+ "plugins/src/base/rules/reference/repo-scope-split.md": "c9deeeb003607fd9f60651645c6543233f55bb27f0247db3630ba41e733486a1",
514
484
  "plugins/src/base/rules/reference/report-actionability.md": "42fa86bb189467c7bc7ee64f6ebccd3926bb2aaf512ee5a498c232025b8a364b",
515
- "plugins/src/base/rules/reference/reset-seed-coverage.md": "741c49e0544aecfa2c4aadf6a36ef496a1a5d974f71962ae8e33cc625651f0c2",
485
+ "plugins/src/base/rules/reference/reset-seed-coverage.md": "dcc7e3776b39ca188b3ca7d56a46f3ed13dfd4d84e62699c47ccaa3dab1b7aee",
516
486
  "plugins/src/base/rules/reference/security-audit-handling.md": "9633e11ac89af26444a272449f36fe03f26e61fab40ca16a0ab50464725f7d8c",
517
487
  "plugins/src/base/rules/reference/session-status-updates.md": "8c34dc9399d6b20103edb3ed8d214aaa05a97065e4c78d8010f394cd041b3320",
518
488
  "plugins/src/base/rules/reference/settled-decisions.md": "a26eb4e879ab33468d2c55c1cf8128fbbfbec9c2cb634d9dd9f008304ad9aa05",
@@ -520,11 +490,11 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
520
490
  "plugins/src/base/rules/reference/tool-access-gate.md": "70fcd6cd92dc003a40886b1bef02540e6401f5b70ba97308d42bbbddc0206eab",
521
491
  "plugins/src/base/rules/reference/tracked-work.md": "e6a0f557fe161e63516d5e6fc5497fe4e08ad3efdbd95a4faadc89cf937e4d24",
522
492
  "plugins/src/base/rules/reference/upstream-to-lisa.md": "dcf07f8eba66aaf1d132bfaeff73cbf7576279822893235a3c3f8cbc4a4a3323",
523
- "plugins/src/base/rules/reference/usage-accounting.md": "79c00ed4a97c40de72cfccef16b6846ba668fc564354507907876489c038ab75",
493
+ "plugins/src/base/rules/reference/usage-accounting.md": "2dc19f971f04ed959519f6152703ca3ea906faeed7cdbfe62ae03b24335194e1",
524
494
  "plugins/src/base/rules/reference/verification.md": "9ae8db87b37c7700687fabd1b8632b3cddd0f1f1e4b04384c604f88f160056ed",
525
495
  "plugins/src/base/rules/reference/wiki-knowledge-source.md": "725a7415a0606f85164722bd4b4975bce1f496cc43c97e45b224810b1a685189",
526
496
  "plugins/src/base/rules/reference/withdrawn-rulings.md": "089ebd9f633ca739a10bdef0ac162b28aa8516da181f568923246cace9c00508",
527
- "plugins/src/base/rules/reference/work-item-definition-of-ready.md": "ebcfe89f5a33a8008c4a54c1c2f4a092952df3263adc8f537a4c0b6ad8dbe18d",
497
+ "plugins/src/base/rules/reference/work-item-definition-of-ready.md": "2409b6c4631cd1aa5e85c70cadfca68f66c0087cf7ba8adbf50e4f1753cbeddf",
528
498
  "plugins/src/base/scripts/automation-run-record.mjs": "24351f445c9c9dc7e9136be918bb0c4fbea567f0c3972cbe62afbdc83653ce2a",
529
499
  "plugins/src/base/scripts/automation-status-claude-adapter.mjs": "f377d6384d05a97af2a33dc6c1ddb255bc07c7af308c595f6f6fc2789e24d46b",
530
500
  "plugins/src/base/scripts/automation-status-codex-adapter.mjs": "6b0f1ae532a451c45975d8db09c776a03e50e65788b30286b3416e55e39078e7",
@@ -540,7 +510,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
540
510
  "plugins/src/base/scripts/design-variable-ids.mjs": "c04250c38cd1b27f1e26240889d7a741df3a0e4fb4b1882788475b7b7d806910",
541
511
  "plugins/src/base/scripts/doctor-report.mjs": "f183e62848ac539da56a525fe2105fc6251a49e555a01dd1bba10d9227b1a6bf",
542
512
  "plugins/src/base/scripts/install-remote-agent-aws.mjs": "defb299d4467829e010fe2c2e6ea50e3b5f9afa87262926c02f9dc12c1722efc",
543
- "plugins/src/base/scripts/intake-blocker-reprobe.mjs": "0dd4f991113fc19ff3883e214020c4b4622d005b5c2267847a6721f8f1ab4726",
513
+ "plugins/src/base/scripts/intake-blocker-reprobe.mjs": "3b00c579cd5bb4cea6c49bc807dd19c2b3e5450847f4b015f5ef48a99185e7be",
544
514
  "plugins/src/base/scripts/intake-prework-denominator.mjs": "0a40cb91ab1c0e810f42d035d9652af3033e97c692b93b911de851991c12eca1",
545
515
  "plugins/src/base/scripts/lifecycle-label-trust.mjs": "0a9892890da6011733bf9b1186fbe936253c2796c4ac448f1a55f63b8daaa154",
546
516
  "plugins/src/base/scripts/linear-state-write-target.mjs": "2c06525345b47a93e8ad75566d4a7d0cac6850ce30cf0481120ad88146d4c220",
@@ -580,7 +550,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
580
550
  "plugins/src/base/skills/lisa-detect-tooling/scripts/commands.mjs": "e28bd61fdde4a336b56ae3395423026943a5816015719d31d04f0d5a0ab50eec",
581
551
  "plugins/src/base/skills/lisa-detect-tooling/scripts/detect-tooling.mjs": "d9419814fc04c935bd7e320e85b1977c9bfc9275d9ea5fb557002ad438ee7925",
582
552
  "plugins/src/base/skills/lisa-doctor/SKILL.md": "ab7bb855fd3ebe321e41b0143815f202b70f6ba38f6678791d6d9e933e0c3fd8",
583
- "plugins/src/base/skills/lisa-drive-pr-to-merge/SKILL.md": "66ca887626233f31d3ae736a6588673a6911175b0151f0011fec066b9cd15d37",
553
+ "plugins/src/base/skills/lisa-drive-pr-to-merge/SKILL.md": "cb1ea1a70aa8051875290531fe0952f0b6f26079a99f1b887c449a2efea93aaa",
584
554
  "plugins/src/base/skills/lisa-epic-triage/SKILL.md": "d02760411249bddbd396f283191fe3e82bb7b95bf9393a19a7025dc5a57c3ab7",
585
555
  "plugins/src/base/skills/lisa-evaluation-suite/SKILL.md": "96b5c2091ccd22a565935a7b0b917f67998881b81055ce3e4d518319472eac8b",
586
556
  "plugins/src/base/skills/lisa-exploratory-qa/SKILL.md": "562b80ea0be5ffb1087386495a380bfb5808a1da4c08a7e253c5229d747bc5c7",
@@ -590,7 +560,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
590
560
  "plugins/src/base/skills/lisa-git-prune/SKILL.md": "11fad06d109538f1a8ee4ef8043bb0e083672e3c9a7cb7ae8a7233c5411d6dd2",
591
561
  "plugins/src/base/skills/lisa-git-submit-pr/SKILL.md": "7847ee39ea3a14445fbf1d459e3cd7d93ed67dcdcf8b6f161ca64bb307233245",
592
562
  "plugins/src/base/skills/lisa-github-add-journey/SKILL.md": "4ceda3474a9b32abae835c2676e8cb2b7e888c6ba04b95843dbe7254293bbf32",
593
- "plugins/src/base/skills/lisa-github-build-intake/SKILL.md": "48ecd7ed8fb69b2023ae87f04cc48963bbc67aec5a8d92d5021d39d83e33f305",
563
+ "plugins/src/base/skills/lisa-github-build-intake/SKILL.md": "9bd1a98c6e894ccfc159829923a44941a4aa96bd2fe26b383dadfcbe742271c8",
594
564
  "plugins/src/base/skills/lisa-github-claim/SKILL.md": "71301c6d45d7eb5523e74aa7f070bb2becf57ca68fb8bde9e02ee937b78815f7",
595
565
  "plugins/src/base/skills/lisa-github-create/SKILL.md": "2128a5069c2663a6a33cef7d0465e672682429b176183e101d3ea65f276a1b93",
596
566
  "plugins/src/base/skills/lisa-github-evidence/SKILL.md": "73142ef660766f4b4e4947ad25d00614b8fb9ad4dfa7e4f45b19379ae981d84d",
@@ -617,7 +587,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
617
587
  "plugins/src/base/skills/lisa-intake/SKILL.md": "45eaf0c19dfef43754a1e6a0781a046a65508294083445fbefd54476e1d2404b",
618
588
  "plugins/src/base/skills/lisa-jam-access/SKILL.md": "8c9007e4ef4b79ba6de30be0baf75972d1a68451204d7a29f5cc504d7095279e",
619
589
  "plugins/src/base/skills/lisa-jira-add-journey/SKILL.md": "a00606cc7927f034e847f34d7e44e72fa7f3a14ddf6a469deb7eae1e06531fd7",
620
- "plugins/src/base/skills/lisa-jira-build-intake/SKILL.md": "965a2a3ee544d3a7269bf6f1ae9c112f0716e6ba70922eb184ac0aad0ef153e5",
590
+ "plugins/src/base/skills/lisa-jira-build-intake/SKILL.md": "6461965ae8ab842eae4394964006c540737dac9742d147bf15e4214e487b2957",
621
591
  "plugins/src/base/skills/lisa-jira-claim/SKILL.md": "9c4935441a4e6b55df0949178f96e927184c4909bffff8929b39a304bc5ac00a",
622
592
  "plugins/src/base/skills/lisa-jira-create/SKILL.md": "77078002d2a16e0b2a65725f4e86b13caa1c43ba193eb37beb5b7da20feed3f1",
623
593
  "plugins/src/base/skills/lisa-jira-evidence/SKILL.md": "e6a2458a5de6587ad1a407997407198b856f32853c958c1e7adc53ca9bfd2e71",
@@ -636,7 +606,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
636
606
  "plugins/src/base/skills/lisa-learnings-audit/SKILL.md": "73624a3f94954c414c000d734a52a45528674afbeb43936ec746ea7591e10760",
637
607
  "plugins/src/base/skills/lisa-linear-access/SKILL.md": "2f25e54f3f91a8b3b4c0cdb7dc53f0314a20bb78e2fe102edd93fc4380cefbe0",
638
608
  "plugins/src/base/skills/lisa-linear-add-journey/SKILL.md": "e63ae35df1a928dac7b42535ce11e77e8c617e60838ba319f22081400e87886e",
639
- "plugins/src/base/skills/lisa-linear-build-intake/SKILL.md": "b2f2b5b453d9233ebc97e548964875f737a4cb9b111ed3d5a695edfec28a9f76",
609
+ "plugins/src/base/skills/lisa-linear-build-intake/SKILL.md": "00f77f6f318a737f8cee76a36c4f1dbf7dc41fcd28d3067d03b659d19880dbc5",
640
610
  "plugins/src/base/skills/lisa-linear-claim/SKILL.md": "efde30b5eac8b2cc56499ce391bd3d43ebb017c4ce948b5d547b52acb66715bb",
641
611
  "plugins/src/base/skills/lisa-linear-create/SKILL.md": "b9b0b89903fc980e7b591109cffcf377f7397cc6c7b6110975d0b21bafb6de2e",
642
612
  "plugins/src/base/skills/lisa-linear-evidence/SKILL.md": "e25f8ab93f5204ac55c99c6cba5fe53cc4ad792c0140553eef7d3478ffb69694",
@@ -688,7 +658,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
688
658
  "plugins/src/base/skills/lisa-queue-status/SKILL.md": "4bbb45c2db8d928897e2b901913b952860bbceaab3e9e7ffe54a71a4d60842a0",
689
659
  "plugins/src/base/skills/lisa-remote-dispatch/SKILL.md": "f3c48120a206d01db45f849ca5b61690d572abc16bc36d559a4cacc8f9422c06",
690
660
  "plugins/src/base/skills/lisa-remote-dispatch/scripts/dispatch.mjs": "2c51d388ecb681905f6b2280ffefc03434f91bfe4901e637869b716be81ccc93",
691
- "plugins/src/base/skills/lisa-repair-intake/SKILL.md": "aee9d9b6c6b127f14513057fb15b516de3dec83615db205f51d77f0dc1a99aa2",
661
+ "plugins/src/base/skills/lisa-repair-intake/SKILL.md": "e593b35c4468df750034ce18dd7bd84e4b01c949eac9efae4d18775a29c68fc4",
692
662
  "plugins/src/base/skills/lisa-reproduce-bug/SKILL.md": "49dee0ea4d444a6df050d85fd57566497df288490f64b467d0505b1863fc1039",
693
663
  "plugins/src/base/skills/lisa-research/SKILL.md": "9e2e7f3d02a18d9bb34f0b9e8c43d6b9b454d0f81987390839d40a84331b20f7",
694
664
  "plugins/src/base/skills/lisa-review-implementation/SKILL.md": "42134253cca50e384f36eaa085c0a1e6b8772e9f3e912a8d1231f1cd69199858",
@@ -1097,6 +1067,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1097
1067
  "rails/copy-overwrite/.versionrc": "b6c4c0258819fa186a91d96cdeac7a017f36cfe1d2c59ccb69cff75c1a8598e0",
1098
1068
  "rails/copy-overwrite/Gemfile.lisa": "c73ab0f02fe764ce2953761272d5302ef1f5cc17f346c70697f2d638a11b5a4d",
1099
1069
  "rails/copy-overwrite/ast-grep/rule-tests/.gitkeep": "fd9b902271d9cbaca0ead2a1e659776db904c10b06ceed7e5bc43fa57b89aba1",
1070
+ "rails/copy-overwrite/ast-grep/rules/no-day-truncating-file-age-predicate.yml": "6fad69e83ab937f6d929305be46fbe38390cd30c8b525ab0a24a5ac65d377ef6",
1100
1071
  "rails/copy-overwrite/ast-grep/rules/ruby/no-find-by-sql-without-params.yml": "313278315d8c8b0c0b0d905d78d56640c29fa5e367fc020a16d1868f7e44be83",
1101
1072
  "rails/copy-overwrite/ast-grep/rules/ruby/no-params-without-permit.yml": "87b1a9cabe0752a5b97c247cb9e0abfc737c2cde15ef3fee27a8e258d10db868",
1102
1073
  "rails/copy-overwrite/ast-grep/rules/ruby/no-raw-sql-in-where.yml": "5a60062a92ceede29dd091523c9e30def305075a229ebaf94cb611d8c2bb5f84",
@@ -1110,7 +1081,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1110
1081
  "rails/copy-overwrite/scripts/lisa-clean-git-env.sh": "d15af6f13eedbca41046070972380e69fc0af8f7d903aac12b8644389b9a0c91",
1111
1082
  "rails/copy-overwrite/scripts/lisa-scratch-run.sh": "ef3c38f8d1d2f48ba265e21f841310d25142228dac57b0a5742c7d902113ca9a",
1112
1083
  "rails/copy-overwrite/scripts/threshold-ratchet-compare.mjs": "874f0792beab000939d480c1a0547ce4dd351421b4e5f0fbb495aae246ab85c2",
1113
- "rails/copy-overwrite/scripts/threshold-ratchet-families.mjs": "7558bb84701eb2d1ce5f3571a40862c4d659ad9a8cda804aa31c8a4f460cce43",
1084
+ "rails/copy-overwrite/scripts/threshold-ratchet-families.mjs": "7d5cc48497705466adc05aecc0c0a475b18cbccbd73b4b4b986476de9c5cdb96",
1114
1085
  "rails/copy-overwrite/sgconfig.yml": "ff5b62de42eb969a851fdc53ee6932a32ffe010b567ed2c62460ed454ad2a24f",
1115
1086
  "rails/create-only/.github/workflows/ci.yml": "924375bcfcb8c13f546a7e323cf5ad99cee1427d3ba90386680db16b981e5ab4",
1116
1087
  "rails/create-only/.github/workflows/deploy.yml": "c769346cb4adae9460c472dd8c1426b0daf3ab9f05adfaeee8a41723cb2885e2",
@@ -1137,8 +1108,9 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1137
1108
  "scripts/check-delivery-deletion-conflicts.mjs": "77eed58c9ff076c4438a5fe01c343f25c1a1c8f29a8f5861d1e1081b1739d300",
1138
1109
  "scripts/check-derived-artifacts.mjs": "b30c86b6a8f0fabb5e5849e470f80429c97dcaa2619b0ed3d2f9807b89234a06",
1139
1110
  "scripts/check-duplicate-versions.mjs": "26b26351dd2735dfd8d9a2436b89e876ce2ed93871d0b264f611215dd03d70ae",
1111
+ "scripts/check-eager-rule-budget.mjs": "ec588e17a238a2bfc5c39f6a7a5090a8923b5bf464afd2c43f89972e53cefb4c",
1140
1112
  "scripts/check-empty-subject-guards.mjs": "02fc6af8de14fa2230e5f601225bda2f51d4ed7a462e67c46a36a6c7d92e1833",
1141
- "scripts/check-generated-artifact-merge-coverage.mjs": "cabd8dbdaa04f65b98d05a6241f3c69a7a0856a4017918285a4cc6b42d9b92f0",
1113
+ "scripts/check-generated-artifact-merge-coverage.mjs": "bb7e708f1f6e00b503a9b885bb52c335c5b238b0dd76032e02301e8883f990b3",
1142
1114
  "scripts/check-learnings-budget.ts": "6e9a735f090a7f1f73f0a447e6688c3dabe9edf61de5e9ad48b0c22701ee38d0",
1143
1115
  "scripts/check-merge-driver-registration.mjs": "8ed1aa50a640d4241c565cf8e0fcd45339e4e8f69a6b656117ca7ee18a5e3291",
1144
1116
  "scripts/check-npm-publish-landed.mjs": "9e79501cd7271b05149a275cf42cc092f6cb11a993696822ac6ef0d1f79a7e78",
@@ -1148,10 +1120,11 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1148
1120
  "scripts/check-probe-absence-direction.mjs": "5dfb12c8ac9a23220219cc8748f1fea03f55bb42c0a9cf045bccfd04a4646652",
1149
1121
  "scripts/check-release-package-identity.mjs": "a0f17592d4436de4c240f7c78512537581aa2ed5e89f0caf1fe890694163a873",
1150
1122
  "scripts/check-required-check-promotions.mjs": "ae7a3d80beb98d8069af12d2d588e76f73f7a329b1f883ddbe1818bb1b5cafa9",
1151
- "scripts/check-rules-pairing.sh": "4d4a0d9e8d36794a22020f419c879d7336b1c5bfe883acdcc826d26764560c7a",
1123
+ "scripts/check-rules-pairing.sh": "0fc26c4bb3e9283dbc775e794ee8abad98d59f401dfcc55deead0160c5c6bb71",
1152
1124
  "scripts/check-security-floors.mjs": "9cdb39f3d995b2f5539e0f2dc9de4b06d8539886efaa821f7964687e9a41609a",
1153
1125
  "scripts/check-self-dependency-pin.mjs": "f517c44a1058a87051b6bb9520e8596a37521f475ca67e0d47159163999ff692",
1154
1126
  "scripts/check-shell-guard-refusal-coverage.mjs": "95e4086965dde95d0aa17cb3db64a94c9e2d21822039aaf89aad4a8acc99689e",
1127
+ "scripts/check-shipped-surface-removals.mjs": "c6d1cb1c15254202977602e28b85e5cd0eef0ccdce849dcf5ff74299fd59adef",
1155
1128
  "scripts/check-state-classification.mjs": "26baaa85c0758fa41f1f66257f7d3a31ea4dd5cf17a9c0acaa3e89caaaf6265a",
1156
1129
  "scripts/check-template-workflow-refs.mjs": "89176394a933d0a42c39ab1805a45e782a2f3e1893d707ac1afb439062397088",
1157
1130
  "scripts/check-test-case-executed.mjs": "99c4e0f4544f67c920d787fe6a7fb801ac37c591b6392791b4e3d1802bec5359",
@@ -1177,6 +1150,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1177
1150
  "scripts/generate-codex-plugin-artifacts.mjs": "facb86910c07d1b8025868d24425fdaea7b6efbe282bace5ee5bf23957d6b51a",
1178
1151
  "scripts/generate-copilot-plugin-artifacts.mjs": "7af923118c49101e6ba46da73a8eee8aee9b797e074618aa5345913e638d7cdb",
1179
1152
  "scripts/generate-cursor-plugin-artifacts.mjs": "45d3bde7b6c55310f0d9436dd68a1bdeefb6fa817be4d15ef745421b39a2cf47",
1153
+ "scripts/generate-export-surface.mjs": "c0d12f32423dec5597000bc6fe87ac659ce267e6d720ca5d76e768ecae5eb31f",
1180
1154
  "scripts/generate-lisa-owned-hash-ledger.mjs": "987ed2f9cedefcb70778a6c6ad0f3fffd114fedc7e8bf62d6456b2d2e8e2de76",
1181
1155
  "scripts/generate-nightly-e2e-guard-certificate.mjs": "0407e1e2b98b3f837f4a0cfd85262711dbfa6387ed40f4f9ac81ca447aec2913",
1182
1156
  "scripts/generate-two-channel-couplings.ts": "8c1f5b8d6ac5043dec9789f3ac1fe83d9ba00d1e1eccf9c6a92f274ab8da919e",
@@ -1203,13 +1177,14 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1203
1177
  "scripts/lib/reusable-workflow-contract.mjs": "134ee2a327290f066f1eb318b5ed53c711557c3e10ed462c00ff5c97cfb20863",
1204
1178
  "scripts/lib/shell-guard-refusal-coverage.mjs": "9bd530bae922022870c8bb1b69925778fa609c67561228cc8cfa94a0ee3f5e7c",
1205
1179
  "scripts/lib/shell-guard-trace.mjs": "c3ec8f0a9c52090d8044bbc99fae50eaebc45a1469f62ef2f4fd21c80aa67277",
1180
+ "scripts/lib/shipped-surface.mjs": "9ba04034e2a3382d90a48d81b641ba52c6f1c95028d14aa2005ab0d4e3d65208",
1206
1181
  "scripts/lib/upstream-manifest-staleness.mjs": "c69fc5ba10228b7f4f8d0068db27ee8a289143094fa8718b14af83f4af31f76d",
1207
1182
  "scripts/lib/workflow-contract-probe.mjs": "e51e2872bfc074fccd27cb814d2a4b14e45b3981290a98300b415beecc2b1ec8",
1208
1183
  "scripts/lisa-assert-eas-profile.mjs": "624e40d7f33ca17208fc6b7a19320a785cff19da5d2ff8062b67a432b2a34022",
1209
1184
  "scripts/lisa-commit-and-pr-local.sh": "70749548e302bc709000b0721c39470388c58fb0d08cfd3a2679b96e2b539cc4",
1210
1185
  "scripts/lisa-commit-msg-gates.mjs": "f961cb70a525e7b0a94b8ca7a76d1e2bb5b1929d5477417e159dbf58312ce0d8",
1211
1186
  "scripts/lisa-enforcement-census.mjs": "41490f30f30cbb5ff05454a52caa1d3286db225667847eee22b7b994809e64d4",
1212
- "scripts/lisa-enforcement-fallback.sh": "4fc3ada8c2ac108fc9ec7a3a058cb9cdec117ef159abac0fbddcd91fcb91227c",
1187
+ "scripts/lisa-enforcement-fallback.sh": "a297262691f073f036b1a2abb5951d27f9e90f5f66eef438086484a096867e0d",
1213
1188
  "scripts/lisa-github-environments.sh": "0a76e92f108519abaf3e29991299ec3b0db20ea533e69e6d2a53d802dba9c370",
1214
1189
  "scripts/lisa-github-repo-settings.sh": "4afbccdfb08c62ba13afee42ec8561a28facf87c61f6f4b80000115328364d54",
1215
1190
  "scripts/lisa-github-repo-setup.sh": "4717873e339b3e615d0bf22b4cb290b3575df5aba8c3639dc0d3bebc23abf651",
@@ -1231,11 +1206,12 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1231
1206
  "scripts/plugin-routing-validate.mjs": "31b6a1ee9fdff0c8d56c8dda69f378d93493ffd4f07ee773ab2fed0c64977c1f",
1232
1207
  "scripts/probes/wave3-verification.sh": "c341c3682f2401339a433a48efc8b8dd80c9c190f12ec6287139bebd1e47c049",
1233
1208
  "scripts/reconcile-release-tags.mjs": "ff407babbd01123cbb2a55c194abe79b94b31ef6f6f4ab4142c64aa221d443b2",
1209
+ "scripts/remedy-conformance.mjs": "3205d842b03faa9e8b9e49b7cff46c3999317ab6f2b84e81b881e26e9d13354f",
1234
1210
  "scripts/remote-agent-aws-setup.sh": "f181062436c214c95fe15be8000cce18de0b553b3dab06b822a4fe55cb285ca6",
1235
1211
  "scripts/run-artifact-checks.mjs": "2992d673bb3c1ebfa50bda9ed323b8410afdab2ffc925eee6eab19fcab312a90",
1236
1212
  "scripts/setup-deploy-key.sh": "2bed19346810b7af18a5225fd463c4d553a7bcc7b2f11a21bd47b93e6b5e1719",
1237
1213
  "scripts/test-intent-routing.sh": "97b9dc86cbd805df8a7fdb8c99ffab9b8c5e751ba2e84c05420b2a124f80635d",
1238
- "scripts/two-channel-couplings.json": "34e80e8dd6d0a37f2158e432ba895541e4bce4e37ebf01a0761c8c1be8e006e5",
1214
+ "scripts/two-channel-couplings.json": "0ce47fff41296620105dc1946780420015ac14a735732c0e6f8459b5cca67c61",
1239
1215
  "scripts/update-node-version.ts": "dcfec9f8666f65925deb9efdc8a4bebb6c3f41d9fa1c1365be23edb82c40fffa",
1240
1216
  "scripts/update-test-skill-paths.mjs": "e26a3ac716c33013e22bf5223a58457452f5af2038218a0e3a51c244eab5ddc9",
1241
1217
  "scripts/verify-health-agentic-built.mjs": "4b0d20b2c94390ff6f5af881fc50c5c225215a282891db0b3e3d84a7e6455367",
@@ -1258,7 +1234,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1258
1234
  "typescript/copy-contents/.husky/post-checkout": "f3abc4528e12d3ad2bc48b236d19f105e2817595c744156a558c62ae5551ccfb",
1259
1235
  "typescript/copy-contents/.husky/post-merge": "8155564c7aed71d04bada189d66623e32a00d80598a8194782b6ecabec5134c0",
1260
1236
  "typescript/copy-contents/.husky/pre-commit": "d5f85c0b5d9a0277389c1ae96aec30db603ee38637d4ab749a659bb031d06d93",
1261
- "typescript/copy-contents/.husky/pre-push": "2f6274d3b42abed9b019d22b06b257fccf521b0308bd00d693f25fe76427d8c6",
1237
+ "typescript/copy-contents/.husky/pre-push": "20cbd929137965bddf19c280d69eec7b214f227b986e15347c9a1d04fac4d3e5",
1262
1238
  "typescript/copy-contents/.husky/prepare-commit-msg": "4a719c20da65653f266e7c8a346b5546ad05f1dfa34665fc7fec47e89d2f58d1",
1263
1239
  "typescript/copy-overwrite/.claude/hooks/worktree-create.sh": "888cfd16bd1ac04f9f8a835eae62f8bd2c956de654bce12ce9a6a52947b121ca",
1264
1240
  "typescript/copy-overwrite/.github/GITHUB_ACTIONS.md": "4289146bae8e112049387d4be86941c563b02376a06f0238364aaf3e61c2b127",
@@ -1270,12 +1246,13 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1270
1246
  "typescript/copy-overwrite/.yamllint": "685de50b905e024ac8882cdf6443850e96a44744ac03366cae636ceb384dd4e0",
1271
1247
  "typescript/copy-overwrite/ast-grep/rule-tests/.gitkeep": "fd9b902271d9cbaca0ead2a1e659776db904c10b06ceed7e5bc43fa57b89aba1",
1272
1248
  "typescript/copy-overwrite/ast-grep/rules/.gitkeep": "5068239f6c760759362d6a1cc83478d77eef0214fa7f4f23c8d1ce4b56f532c0",
1249
+ "typescript/copy-overwrite/ast-grep/rules/no-day-truncating-file-age-predicate.yml": "6fad69e83ab937f6d929305be46fbe38390cd30c8b525ab0a24a5ac65d377ef6",
1273
1250
  "typescript/copy-overwrite/ast-grep/rules/no-inline-component-in-container.yml": "cb3c9ba6ee7849f767f9c95423f271447254564dc97122a3c871c8d76c9f688b",
1274
1251
  "typescript/copy-overwrite/ast-grep/rules/no-inline-component-in-view.yml": "6ecf2527ded51d3ede76f80bb7f376e557bcf596523b5ca03e2afd2962a45d37",
1275
1252
  "typescript/copy-overwrite/ast-grep/rules/no-missing-fs-extra-namespace-member-js.yml": "a1c25176b326e26070870d65dcd6e4651880f4121563fc0082022e7f525e5e1b",
1276
1253
  "typescript/copy-overwrite/ast-grep/rules/no-missing-fs-extra-namespace-member.yml": "599df22bafdcf588a4cceac134dbca203266fd77ae4ac0c33b351b545372488c",
1277
1254
  "typescript/copy-overwrite/ast-grep/utils/.gitkeep": "6792ca57f00ff5a84a4713a08308a8ab3144858b0b0d9f8251b8c26c48948fb7",
1278
- "typescript/copy-overwrite/audit.ignore.config.json": "5484b8bd1a2d5d882fc89662f7a3ea02c1526e152a77b9d3c849dd3b46c4c724",
1255
+ "typescript/copy-overwrite/audit.ignore.config.json": "8635c912e0d41177f545f22248b2acc9f9683b3c04e5ade7829a8fa809966a0d",
1279
1256
  "typescript/copy-overwrite/commitlint.config.cjs": "a9f07b7097eee82e531dedfe3c1011ec61dc8c85c26d5430314a5999dc0675cc",
1280
1257
  "typescript/copy-overwrite/eslint.config.ts": "1a2f6eb5dd19a7dfc445c61bac8bd08a5f8908f023655c920aff08b633b30fb6",
1281
1258
  "typescript/copy-overwrite/eslint.ignore.config.json": "b9a6c5cdd82cd76fe1c6f409b1e7630bfb42f037728c4ff7354906ed960a03c6",
@@ -1287,7 +1264,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1287
1264
  "typescript/copy-overwrite/scripts/check-verification-coverage.mjs": "777e46c8e8147935f0b944dc21536f6238b26b5b7dca06c5fdb2d2898a9790dc",
1288
1265
  "typescript/copy-overwrite/scripts/lib/bounded-spawn.mjs": "72e277ada531914d7bc51c3cb8dc67b8881aa817d96fa2f9f4d81668a3d3bbc1",
1289
1266
  "typescript/copy-overwrite/scripts/lib/invoked-as-script.mjs": "fbb9b88fc85a3e22f21af39e1c17acf67ff83fc6b5a6cdc8081bde333c48faa7",
1290
- "typescript/copy-overwrite/scripts/lisa-mutation.mjs": "e8b1928b6fafbb04ae051972bc67fe97b044c99819a4c229943fa38b7129236c",
1267
+ "typescript/copy-overwrite/scripts/lisa-mutation.mjs": "41e6cfced41e9943e2fc27abec486a1c56b1c9c7c8b1d3edf6634a32de68f45a",
1291
1268
  "typescript/copy-overwrite/scripts/nightly-e2e-provider-action.mjs": "640b65e1caba4ba33e19e4a1ff49f869a99c15eb7d59a88498a5b2466acf438e",
1292
1269
  "typescript/copy-overwrite/scripts/nightly-e2e-provider-github-jira.mjs": "47251877ad7053036a748e9fe5b795198b6b058365a77421ef7b90cf8a35e0bc",
1293
1270
  "typescript/copy-overwrite/scripts/nightly-e2e-provider-linear-sentry.mjs": "1d536a57b13582553347c39c128baba5912182fe4b2b1f522e5aed453979db89",
@@ -1297,7 +1274,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1297
1274
  "typescript/copy-overwrite/scripts/reconcile-nightly-e2e-tracking-cli.mjs": "332d27d8836cda2469f67bea7269c951a46d0d3abcd299abcd288605940a73b3",
1298
1275
  "typescript/copy-overwrite/scripts/reconcile-nightly-e2e-tracking.mjs": "d061c7513acdf1e187cf916dca53432a06a78e43bd0068a0b315ad351a4b72db",
1299
1276
  "typescript/copy-overwrite/scripts/threshold-ratchet-compare.mjs": "874f0792beab000939d480c1a0547ce4dd351421b4e5f0fbb495aae246ab85c2",
1300
- "typescript/copy-overwrite/scripts/threshold-ratchet-families.mjs": "7558bb84701eb2d1ce5f3571a40862c4d659ad9a8cda804aa31c8a4f460cce43",
1277
+ "typescript/copy-overwrite/scripts/threshold-ratchet-families.mjs": "7d5cc48497705466adc05aecc0c0a475b18cbccbd73b4b4b986476de9c5cdb96",
1301
1278
  "typescript/copy-overwrite/sgconfig.yml": "ff5b62de42eb969a851fdc53ee6932a32ffe010b567ed2c62460ed454ad2a24f",
1302
1279
  "typescript/copy-overwrite/tsconfig.eslint.json": "8a8ae5e201b18887b8eeda5eb569747221695524d4193ea03b4338b97b7fa642",
1303
1280
  "typescript/copy-overwrite/tsconfig.json": "8f4257fcd2cfd4b23e83e0fdd4908d41ee8f1ae75bb95d632e653a0ac13d58e4",
@@ -1321,7 +1298,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1321
1298
  "typescript/github-rulesets/quality-checks.json": "3aa1c6dbc703ad2ecd87c6f7fdff1aae118696dba95c9795c2c954c6b8a444d9",
1322
1299
  "typescript/merge/.claude/settings.json": "a455fb55d5bf99f7f71136a3a4f8f21b283b9627556c3b22d039b01d093eb2a9",
1323
1300
  "typescript/merge/.oxlintrc.json": "9504c20db80470c242c4ffe8cccad6951ed8141dfb5bf6503053e0b2712ab276",
1324
- "typescript/package-lisa/package.lisa.json": "cc58815ec5cd6b7df3ab401fb3ff7b9b154f0aedb09857395273e7c1df7313a6",
1301
+ "typescript/package-lisa/package.lisa.json": "39bc34cc4367f20064c27649a1d83316b848d6a3d7bcc04d0d71ae3317b9e9c9",
1325
1302
  "ui/README.md": "9c4aa65ff4028eedfda1f284d47b620fff7353c07fd8084ccc427fe4c5a1ed72",
1326
1303
  "ui/index.html": "9e1a68cd70fe6e74bc615e9f012e5837fa9ad0d828202f998e8cf97551931906",
1327
1304
  });
@@ -1422,6 +1399,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
1422
1399
  ".github/workflows/duplicate-versions.yml": true,
1423
1400
  ".github/workflows/environment-prepare.yml": true,
1424
1401
  ".github/workflows/gates.yml": true,
1402
+ ".github/workflows/lifecycle-drift-sweep.yml": true,
1425
1403
  ".github/workflows/lighthouse.yml": true,
1426
1404
  ".github/workflows/lisa-build-intake.yml": true,
1427
1405
  ".github/workflows/load-test.yml": true,
@@ -1441,6 +1419,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
1441
1419
  ".github/workflows/release.yml": true,
1442
1420
  ".github/workflows/review-evidence.yml": true,
1443
1421
  ".github/workflows/security-floors.yml": true,
1422
+ ".github/workflows/sentry-deploy.yml": true,
1444
1423
  ".github/workflows/third-party-review-evidence.yml": true,
1445
1424
  ".github/workflows/weekly-mutation-wholelist-bite.yml": true,
1446
1425
  ".github/workflows/zap-baseline-expo.yml": true,
@@ -1526,12 +1505,14 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
1526
1505
  "ast-grep/rule-tests/__snapshots__/harper-no-empty-conditions-with-sort-snapshot.yml": true,
1527
1506
  "ast-grep/rule-tests/__snapshots__/harper-no-full-table-scan-snapshot.yml": true,
1528
1507
  "ast-grep/rule-tests/__snapshots__/harper-require-statuscode-on-thrown-error-snapshot.yml": true,
1508
+ "ast-grep/rule-tests/__snapshots__/no-day-truncating-file-age-predicate-snapshot.yml": true,
1529
1509
  "ast-grep/rule-tests/__snapshots__/phaser-no-canvas-renderer-snapshot.yml": true,
1530
1510
  "ast-grep/rule-tests/__snapshots__/phaser-no-raw-webgl-context-snapshot.yml": true,
1531
1511
  "ast-grep/rule-tests/harper-no-early-return-in-search-loop-test.yml": true,
1532
1512
  "ast-grep/rule-tests/harper-no-empty-conditions-with-sort-test.yml": true,
1533
1513
  "ast-grep/rule-tests/harper-no-full-table-scan-test.yml": true,
1534
1514
  "ast-grep/rule-tests/harper-require-statuscode-on-thrown-error-test.yml": true,
1515
+ "ast-grep/rule-tests/no-day-truncating-file-age-predicate-test.yml": true,
1535
1516
  "ast-grep/rule-tests/phaser-no-canvas-renderer-test.yml": true,
1536
1517
  "ast-grep/rule-tests/phaser-no-raw-webgl-context-test.yml": true,
1537
1518
  "ast-grep/rules/.gitkeep": true,
@@ -1539,6 +1520,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
1539
1520
  "ast-grep/rules/harper/no-empty-conditions-with-sort.yml": true,
1540
1521
  "ast-grep/rules/harper/no-full-table-scan.yml": true,
1541
1522
  "ast-grep/rules/harper/require-statuscode-on-thrown-error.yml": true,
1523
+ "ast-grep/rules/no-day-truncating-file-age-predicate.yml": true,
1542
1524
  "ast-grep/rules/no-inline-component-in-container.yml": true,
1543
1525
  "ast-grep/rules/no-inline-component-in-view.yml": true,
1544
1526
  "ast-grep/rules/no-missing-fs-extra-namespace-member-js.yml": true,
@@ -1599,6 +1581,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
1599
1581
  "docs/remote-agent-aws.md": true,
1600
1582
  "docs/wiki-inbox/.gitkeep": true,
1601
1583
  "docs/wiki-inbox/2026-08-12-lisa-improvement-notes.md": true,
1584
+ "eager-rules.thresholds.json": true,
1602
1585
  "eslint-plugin-code-organization/README.md": true,
1603
1586
  "eslint-plugin-code-organization/__tests__/enforce-statement-order.test.js": true,
1604
1587
  "eslint-plugin-code-organization/index.js": true,
@@ -1824,6 +1807,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
1824
1807
  "phaser/copy-overwrite/.github/workflows/ci.yml": true,
1825
1808
  "phaser/copy-overwrite/.husky/pre-push.verify": true,
1826
1809
  "phaser/copy-overwrite/ast-grep/rule-tests/.gitkeep": true,
1810
+ "phaser/copy-overwrite/ast-grep/rules/no-day-truncating-file-age-predicate.yml": true,
1827
1811
  "phaser/copy-overwrite/ast-grep/rules/phaser/no-canvas-renderer.yml": true,
1828
1812
  "phaser/copy-overwrite/ast-grep/rules/phaser/no-raw-webgl-context.yml": true,
1829
1813
  "phaser/copy-overwrite/ast-grep/utils/.gitkeep": true,
@@ -2761,50 +2745,21 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2761
2745
  "plugins/lisa-copilot/hooks/withdrawn-rulings.sh": true,
2762
2746
  "plugins/lisa-copilot/hooks/worktree-binding-guard.mjs": true,
2763
2747
  "plugins/lisa-copilot/hooks/worktree-binding-guard.sh": true,
2764
- "plugins/lisa-copilot/rules/eager/automation-runbook-contract.md": true,
2748
+ "plugins/lisa-copilot/rules/eager/00-rule-index.md": true,
2765
2749
  "plugins/lisa-copilot/rules/eager/base-rules.md": true,
2766
- "plugins/lisa-copilot/rules/eager/bdd-e2e-coverage.md": true,
2767
- "plugins/lisa-copilot/rules/eager/blocker-containment.md": true,
2768
- "plugins/lisa-copilot/rules/eager/claim-archaeology.md": true,
2769
- "plugins/lisa-copilot/rules/eager/claim-evidence-mapping.md": true,
2770
- "plugins/lisa-copilot/rules/eager/claim-time-guards.md": true,
2771
2750
  "plugins/lisa-copilot/rules/eager/coding-philosophy.md": true,
2772
2751
  "plugins/lisa-copilot/rules/eager/config-resolution.md": true,
2773
- "plugins/lisa-copilot/rules/eager/control-reachability.md": true,
2774
- "plugins/lisa-copilot/rules/eager/convergent-review.md": true,
2775
- "plugins/lisa-copilot/rules/eager/credential-substrate-precedence.md": true,
2776
- "plugins/lisa-copilot/rules/eager/dependency-decision-records.md": true,
2777
- "plugins/lisa-copilot/rules/eager/dependency-internalization-kit.md": true,
2778
- "plugins/lisa-copilot/rules/eager/dependency-trust-classes.md": true,
2779
- "plugins/lisa-copilot/rules/eager/deployed-state-readback.md": true,
2780
- "plugins/lisa-copilot/rules/eager/derived-branch-plan.md": true,
2781
- "plugins/lisa-copilot/rules/eager/design-source-of-truth.md": true,
2782
- "plugins/lisa-copilot/rules/eager/design-value-binding.md": true,
2783
2752
  "plugins/lisa-copilot/rules/eager/do-it-now.md": true,
2784
- "plugins/lisa-copilot/rules/eager/documentation-source-paths.md": true,
2785
2753
  "plugins/lisa-copilot/rules/eager/empirical-inquiry.md": true,
2786
- "plugins/lisa-copilot/rules/eager/factory-model.md": true,
2787
2754
  "plugins/lisa-copilot/rules/eager/falsifiable-checks.md": true,
2788
2755
  "plugins/lisa-copilot/rules/eager/history-audit.md": true,
2789
2756
  "plugins/lisa-copilot/rules/eager/integration-access-layer.md": true,
2790
2757
  "plugins/lisa-copilot/rules/eager/intent-routing.md": true,
2791
- "plugins/lisa-copilot/rules/eager/leaf-only-lifecycle.md": true,
2792
2758
  "plugins/lisa-copilot/rules/eager/learnings-ladder.md": true,
2793
2759
  "plugins/lisa-copilot/rules/eager/local-ci-first.md": true,
2794
2760
  "plugins/lisa-copilot/rules/eager/measurement-integrity.md": true,
2795
2761
  "plugins/lisa-copilot/rules/eager/not-blocked-just-waiting.md": true,
2796
- "plugins/lisa-copilot/rules/eager/observability-audit.md": true,
2797
- "plugins/lisa-copilot/rules/eager/prd-definition-of-ready.md": true,
2798
- "plugins/lisa-copilot/rules/eager/prd-lifecycle-rollup.md": true,
2799
- "plugins/lisa-copilot/rules/eager/pre-flight-autofill.md": true,
2800
- "plugins/lisa-copilot/rules/eager/project-learnings.md": true,
2801
- "plugins/lisa-copilot/rules/eager/promotion-contract.md": true,
2802
- "plugins/lisa-copilot/rules/eager/readiness-rubric.md": true,
2803
- "plugins/lisa-copilot/rules/eager/ready-role-filing.md": true,
2804
- "plugins/lisa-copilot/rules/eager/rejection-detection.md": true,
2805
- "plugins/lisa-copilot/rules/eager/repo-scope-split.md": true,
2806
2762
  "plugins/lisa-copilot/rules/eager/report-actionability.md": true,
2807
- "plugins/lisa-copilot/rules/eager/reset-seed-coverage.md": true,
2808
2763
  "plugins/lisa-copilot/rules/eager/security-audit-handling.md": true,
2809
2764
  "plugins/lisa-copilot/rules/eager/session-status-updates.md": true,
2810
2765
  "plugins/lisa-copilot/rules/eager/settled-decisions.md": true,
@@ -2812,11 +2767,9 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2812
2767
  "plugins/lisa-copilot/rules/eager/tool-access-gate.md": true,
2813
2768
  "plugins/lisa-copilot/rules/eager/tracked-work.md": true,
2814
2769
  "plugins/lisa-copilot/rules/eager/upstream-to-lisa.md": true,
2815
- "plugins/lisa-copilot/rules/eager/usage-accounting.md": true,
2816
2770
  "plugins/lisa-copilot/rules/eager/verification.md": true,
2817
2771
  "plugins/lisa-copilot/rules/eager/wiki-knowledge-source.md": true,
2818
2772
  "plugins/lisa-copilot/rules/eager/withdrawn-rulings.md": true,
2819
- "plugins/lisa-copilot/rules/eager/work-item-definition-of-ready.md": true,
2820
2773
  "plugins/lisa-copilot/rules/reference/automation-runbook-contract.md": true,
2821
2774
  "plugins/lisa-copilot/rules/reference/base-rules.md": true,
2822
2775
  "plugins/lisa-copilot/rules/reference/bdd-e2e-coverage.md": true,
@@ -3261,52 +3214,35 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
3261
3214
  "plugins/lisa-cursor/hooks/worktree-binding-guard.mjs": true,
3262
3215
  "plugins/lisa-cursor/hooks/worktree-binding-guard.sh": true,
3263
3216
  "plugins/lisa-cursor/mcp.json": true,
3217
+ "plugins/lisa-cursor/rules/00-rule-index.mdc": true,
3264
3218
  "plugins/lisa-cursor/rules/automation-runbook-contract-reference.mdc": true,
3265
- "plugins/lisa-cursor/rules/automation-runbook-contract.mdc": true,
3266
3219
  "plugins/lisa-cursor/rules/base-rules-reference.mdc": true,
3267
3220
  "plugins/lisa-cursor/rules/base-rules.mdc": true,
3268
3221
  "plugins/lisa-cursor/rules/bdd-e2e-coverage-reference.mdc": true,
3269
- "plugins/lisa-cursor/rules/bdd-e2e-coverage.mdc": true,
3270
3222
  "plugins/lisa-cursor/rules/blocker-containment-reference.mdc": true,
3271
- "plugins/lisa-cursor/rules/blocker-containment.mdc": true,
3272
3223
  "plugins/lisa-cursor/rules/claim-archaeology-reference.mdc": true,
3273
- "plugins/lisa-cursor/rules/claim-archaeology.mdc": true,
3274
3224
  "plugins/lisa-cursor/rules/claim-evidence-mapping-reference.mdc": true,
3275
- "plugins/lisa-cursor/rules/claim-evidence-mapping.mdc": true,
3276
3225
  "plugins/lisa-cursor/rules/claim-time-guards-reference.mdc": true,
3277
- "plugins/lisa-cursor/rules/claim-time-guards.mdc": true,
3278
3226
  "plugins/lisa-cursor/rules/coding-philosophy-reference.mdc": true,
3279
3227
  "plugins/lisa-cursor/rules/coding-philosophy.mdc": true,
3280
3228
  "plugins/lisa-cursor/rules/config-resolution-reference.mdc": true,
3281
3229
  "plugins/lisa-cursor/rules/config-resolution.mdc": true,
3282
3230
  "plugins/lisa-cursor/rules/control-reachability-reference.mdc": true,
3283
- "plugins/lisa-cursor/rules/control-reachability.mdc": true,
3284
3231
  "plugins/lisa-cursor/rules/convergent-review-reference.mdc": true,
3285
- "plugins/lisa-cursor/rules/convergent-review.mdc": true,
3286
3232
  "plugins/lisa-cursor/rules/credential-substrate-precedence-reference.mdc": true,
3287
- "plugins/lisa-cursor/rules/credential-substrate-precedence.mdc": true,
3288
3233
  "plugins/lisa-cursor/rules/dependency-decision-records-reference.mdc": true,
3289
- "plugins/lisa-cursor/rules/dependency-decision-records.mdc": true,
3290
3234
  "plugins/lisa-cursor/rules/dependency-internalization-kit-reference.mdc": true,
3291
- "plugins/lisa-cursor/rules/dependency-internalization-kit.mdc": true,
3292
3235
  "plugins/lisa-cursor/rules/dependency-trust-classes-reference.mdc": true,
3293
- "plugins/lisa-cursor/rules/dependency-trust-classes.mdc": true,
3294
3236
  "plugins/lisa-cursor/rules/deployed-state-readback-reference.mdc": true,
3295
- "plugins/lisa-cursor/rules/deployed-state-readback.mdc": true,
3296
3237
  "plugins/lisa-cursor/rules/derived-branch-plan-reference.mdc": true,
3297
- "plugins/lisa-cursor/rules/derived-branch-plan.mdc": true,
3298
3238
  "plugins/lisa-cursor/rules/design-source-of-truth-reference.mdc": true,
3299
- "plugins/lisa-cursor/rules/design-source-of-truth.mdc": true,
3300
3239
  "plugins/lisa-cursor/rules/design-value-binding-reference.mdc": true,
3301
- "plugins/lisa-cursor/rules/design-value-binding.mdc": true,
3302
3240
  "plugins/lisa-cursor/rules/do-it-now-reference.mdc": true,
3303
3241
  "plugins/lisa-cursor/rules/do-it-now.mdc": true,
3304
3242
  "plugins/lisa-cursor/rules/documentation-source-paths-reference.mdc": true,
3305
- "plugins/lisa-cursor/rules/documentation-source-paths.mdc": true,
3306
3243
  "plugins/lisa-cursor/rules/empirical-inquiry-reference.mdc": true,
3307
3244
  "plugins/lisa-cursor/rules/empirical-inquiry.mdc": true,
3308
3245
  "plugins/lisa-cursor/rules/factory-model-reference.mdc": true,
3309
- "plugins/lisa-cursor/rules/factory-model.mdc": true,
3310
3246
  "plugins/lisa-cursor/rules/falsifiable-checks-reference.mdc": true,
3311
3247
  "plugins/lisa-cursor/rules/falsifiable-checks.mdc": true,
3312
3248
  "plugins/lisa-cursor/rules/history-audit-reference.mdc": true,
@@ -3316,7 +3252,6 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
3316
3252
  "plugins/lisa-cursor/rules/intent-routing-reference.mdc": true,
3317
3253
  "plugins/lisa-cursor/rules/intent-routing.mdc": true,
3318
3254
  "plugins/lisa-cursor/rules/leaf-only-lifecycle-reference.mdc": true,
3319
- "plugins/lisa-cursor/rules/leaf-only-lifecycle.mdc": true,
3320
3255
  "plugins/lisa-cursor/rules/learnings-ladder-reference.mdc": true,
3321
3256
  "plugins/lisa-cursor/rules/learnings-ladder.mdc": true,
3322
3257
  "plugins/lisa-cursor/rules/local-ci-first-reference.mdc": true,
@@ -3326,29 +3261,18 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
3326
3261
  "plugins/lisa-cursor/rules/not-blocked-just-waiting-reference.mdc": true,
3327
3262
  "plugins/lisa-cursor/rules/not-blocked-just-waiting.mdc": true,
3328
3263
  "plugins/lisa-cursor/rules/observability-audit-reference.mdc": true,
3329
- "plugins/lisa-cursor/rules/observability-audit.mdc": true,
3330
3264
  "plugins/lisa-cursor/rules/prd-definition-of-ready-reference.mdc": true,
3331
- "plugins/lisa-cursor/rules/prd-definition-of-ready.mdc": true,
3332
3265
  "plugins/lisa-cursor/rules/prd-lifecycle-rollup-reference.mdc": true,
3333
- "plugins/lisa-cursor/rules/prd-lifecycle-rollup.mdc": true,
3334
3266
  "plugins/lisa-cursor/rules/pre-flight-autofill-reference.mdc": true,
3335
- "plugins/lisa-cursor/rules/pre-flight-autofill.mdc": true,
3336
3267
  "plugins/lisa-cursor/rules/project-learnings-reference.mdc": true,
3337
- "plugins/lisa-cursor/rules/project-learnings.mdc": true,
3338
3268
  "plugins/lisa-cursor/rules/promotion-contract-reference.mdc": true,
3339
- "plugins/lisa-cursor/rules/promotion-contract.mdc": true,
3340
3269
  "plugins/lisa-cursor/rules/readiness-rubric-reference.mdc": true,
3341
- "plugins/lisa-cursor/rules/readiness-rubric.mdc": true,
3342
3270
  "plugins/lisa-cursor/rules/ready-role-filing-reference.mdc": true,
3343
- "plugins/lisa-cursor/rules/ready-role-filing.mdc": true,
3344
3271
  "plugins/lisa-cursor/rules/rejection-detection-reference.mdc": true,
3345
- "plugins/lisa-cursor/rules/rejection-detection.mdc": true,
3346
3272
  "plugins/lisa-cursor/rules/repo-scope-split-reference.mdc": true,
3347
- "plugins/lisa-cursor/rules/repo-scope-split.mdc": true,
3348
3273
  "plugins/lisa-cursor/rules/report-actionability-reference.mdc": true,
3349
3274
  "plugins/lisa-cursor/rules/report-actionability.mdc": true,
3350
3275
  "plugins/lisa-cursor/rules/reset-seed-coverage-reference.mdc": true,
3351
- "plugins/lisa-cursor/rules/reset-seed-coverage.mdc": true,
3352
3276
  "plugins/lisa-cursor/rules/security-audit-handling-reference.mdc": true,
3353
3277
  "plugins/lisa-cursor/rules/security-audit-handling.mdc": true,
3354
3278
  "plugins/lisa-cursor/rules/session-status-updates-reference.mdc": true,
@@ -3364,7 +3288,6 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
3364
3288
  "plugins/lisa-cursor/rules/upstream-to-lisa-reference.mdc": true,
3365
3289
  "plugins/lisa-cursor/rules/upstream-to-lisa.mdc": true,
3366
3290
  "plugins/lisa-cursor/rules/usage-accounting-reference.mdc": true,
3367
- "plugins/lisa-cursor/rules/usage-accounting.mdc": true,
3368
3291
  "plugins/lisa-cursor/rules/verification-reference.mdc": true,
3369
3292
  "plugins/lisa-cursor/rules/verification.mdc": true,
3370
3293
  "plugins/lisa-cursor/rules/wiki-knowledge-source-reference.mdc": true,
@@ -3372,7 +3295,6 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
3372
3295
  "plugins/lisa-cursor/rules/withdrawn-rulings-reference.mdc": true,
3373
3296
  "plugins/lisa-cursor/rules/withdrawn-rulings.mdc": true,
3374
3297
  "plugins/lisa-cursor/rules/work-item-definition-of-ready-reference.mdc": true,
3375
- "plugins/lisa-cursor/rules/work-item-definition-of-ready.mdc": true,
3376
3298
  "plugins/lisa-cursor/scripts/automation-run-record.mjs": true,
3377
3299
  "plugins/lisa-cursor/scripts/automation-status-claude-adapter.mjs": true,
3378
3300
  "plugins/lisa-cursor/scripts/automation-status-codex-adapter.mjs": true,
@@ -5880,50 +5802,21 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
5880
5802
  "plugins/lisa/hooks/withdrawn-rulings.sh": true,
5881
5803
  "plugins/lisa/hooks/worktree-binding-guard.mjs": true,
5882
5804
  "plugins/lisa/hooks/worktree-binding-guard.sh": true,
5883
- "plugins/lisa/rules/eager/automation-runbook-contract.md": true,
5805
+ "plugins/lisa/rules/eager/00-rule-index.md": true,
5884
5806
  "plugins/lisa/rules/eager/base-rules.md": true,
5885
- "plugins/lisa/rules/eager/bdd-e2e-coverage.md": true,
5886
- "plugins/lisa/rules/eager/blocker-containment.md": true,
5887
- "plugins/lisa/rules/eager/claim-archaeology.md": true,
5888
- "plugins/lisa/rules/eager/claim-evidence-mapping.md": true,
5889
- "plugins/lisa/rules/eager/claim-time-guards.md": true,
5890
5807
  "plugins/lisa/rules/eager/coding-philosophy.md": true,
5891
5808
  "plugins/lisa/rules/eager/config-resolution.md": true,
5892
- "plugins/lisa/rules/eager/control-reachability.md": true,
5893
- "plugins/lisa/rules/eager/convergent-review.md": true,
5894
- "plugins/lisa/rules/eager/credential-substrate-precedence.md": true,
5895
- "plugins/lisa/rules/eager/dependency-decision-records.md": true,
5896
- "plugins/lisa/rules/eager/dependency-internalization-kit.md": true,
5897
- "plugins/lisa/rules/eager/dependency-trust-classes.md": true,
5898
- "plugins/lisa/rules/eager/deployed-state-readback.md": true,
5899
- "plugins/lisa/rules/eager/derived-branch-plan.md": true,
5900
- "plugins/lisa/rules/eager/design-source-of-truth.md": true,
5901
- "plugins/lisa/rules/eager/design-value-binding.md": true,
5902
5809
  "plugins/lisa/rules/eager/do-it-now.md": true,
5903
- "plugins/lisa/rules/eager/documentation-source-paths.md": true,
5904
5810
  "plugins/lisa/rules/eager/empirical-inquiry.md": true,
5905
- "plugins/lisa/rules/eager/factory-model.md": true,
5906
5811
  "plugins/lisa/rules/eager/falsifiable-checks.md": true,
5907
5812
  "plugins/lisa/rules/eager/history-audit.md": true,
5908
5813
  "plugins/lisa/rules/eager/integration-access-layer.md": true,
5909
5814
  "plugins/lisa/rules/eager/intent-routing.md": true,
5910
- "plugins/lisa/rules/eager/leaf-only-lifecycle.md": true,
5911
5815
  "plugins/lisa/rules/eager/learnings-ladder.md": true,
5912
5816
  "plugins/lisa/rules/eager/local-ci-first.md": true,
5913
5817
  "plugins/lisa/rules/eager/measurement-integrity.md": true,
5914
5818
  "plugins/lisa/rules/eager/not-blocked-just-waiting.md": true,
5915
- "plugins/lisa/rules/eager/observability-audit.md": true,
5916
- "plugins/lisa/rules/eager/prd-definition-of-ready.md": true,
5917
- "plugins/lisa/rules/eager/prd-lifecycle-rollup.md": true,
5918
- "plugins/lisa/rules/eager/pre-flight-autofill.md": true,
5919
- "plugins/lisa/rules/eager/project-learnings.md": true,
5920
- "plugins/lisa/rules/eager/promotion-contract.md": true,
5921
- "plugins/lisa/rules/eager/readiness-rubric.md": true,
5922
- "plugins/lisa/rules/eager/ready-role-filing.md": true,
5923
- "plugins/lisa/rules/eager/rejection-detection.md": true,
5924
- "plugins/lisa/rules/eager/repo-scope-split.md": true,
5925
5819
  "plugins/lisa/rules/eager/report-actionability.md": true,
5926
- "plugins/lisa/rules/eager/reset-seed-coverage.md": true,
5927
5820
  "plugins/lisa/rules/eager/security-audit-handling.md": true,
5928
5821
  "plugins/lisa/rules/eager/session-status-updates.md": true,
5929
5822
  "plugins/lisa/rules/eager/settled-decisions.md": true,
@@ -5931,11 +5824,9 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
5931
5824
  "plugins/lisa/rules/eager/tool-access-gate.md": true,
5932
5825
  "plugins/lisa/rules/eager/tracked-work.md": true,
5933
5826
  "plugins/lisa/rules/eager/upstream-to-lisa.md": true,
5934
- "plugins/lisa/rules/eager/usage-accounting.md": true,
5935
5827
  "plugins/lisa/rules/eager/verification.md": true,
5936
5828
  "plugins/lisa/rules/eager/wiki-knowledge-source.md": true,
5937
5829
  "plugins/lisa/rules/eager/withdrawn-rulings.md": true,
5938
- "plugins/lisa/rules/eager/work-item-definition-of-ready.md": true,
5939
5830
  "plugins/lisa/rules/reference/automation-runbook-contract.md": true,
5940
5831
  "plugins/lisa/rules/reference/base-rules.md": true,
5941
5832
  "plugins/lisa/rules/reference/bdd-e2e-coverage.md": true,
@@ -6566,50 +6457,21 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
6566
6457
  "plugins/src/base/hooks/withdrawn-rulings.sh": true,
6567
6458
  "plugins/src/base/hooks/worktree-binding-guard.mjs": true,
6568
6459
  "plugins/src/base/hooks/worktree-binding-guard.sh": true,
6569
- "plugins/src/base/rules/eager/automation-runbook-contract.md": true,
6460
+ "plugins/src/base/rules/eager/00-rule-index.md": true,
6570
6461
  "plugins/src/base/rules/eager/base-rules.md": true,
6571
- "plugins/src/base/rules/eager/bdd-e2e-coverage.md": true,
6572
- "plugins/src/base/rules/eager/blocker-containment.md": true,
6573
- "plugins/src/base/rules/eager/claim-archaeology.md": true,
6574
- "plugins/src/base/rules/eager/claim-evidence-mapping.md": true,
6575
- "plugins/src/base/rules/eager/claim-time-guards.md": true,
6576
6462
  "plugins/src/base/rules/eager/coding-philosophy.md": true,
6577
6463
  "plugins/src/base/rules/eager/config-resolution.md": true,
6578
- "plugins/src/base/rules/eager/control-reachability.md": true,
6579
- "plugins/src/base/rules/eager/convergent-review.md": true,
6580
- "plugins/src/base/rules/eager/credential-substrate-precedence.md": true,
6581
- "plugins/src/base/rules/eager/dependency-decision-records.md": true,
6582
- "plugins/src/base/rules/eager/dependency-internalization-kit.md": true,
6583
- "plugins/src/base/rules/eager/dependency-trust-classes.md": true,
6584
- "plugins/src/base/rules/eager/deployed-state-readback.md": true,
6585
- "plugins/src/base/rules/eager/derived-branch-plan.md": true,
6586
- "plugins/src/base/rules/eager/design-source-of-truth.md": true,
6587
- "plugins/src/base/rules/eager/design-value-binding.md": true,
6588
6464
  "plugins/src/base/rules/eager/do-it-now.md": true,
6589
- "plugins/src/base/rules/eager/documentation-source-paths.md": true,
6590
6465
  "plugins/src/base/rules/eager/empirical-inquiry.md": true,
6591
- "plugins/src/base/rules/eager/factory-model.md": true,
6592
6466
  "plugins/src/base/rules/eager/falsifiable-checks.md": true,
6593
6467
  "plugins/src/base/rules/eager/history-audit.md": true,
6594
6468
  "plugins/src/base/rules/eager/integration-access-layer.md": true,
6595
6469
  "plugins/src/base/rules/eager/intent-routing.md": true,
6596
- "plugins/src/base/rules/eager/leaf-only-lifecycle.md": true,
6597
6470
  "plugins/src/base/rules/eager/learnings-ladder.md": true,
6598
6471
  "plugins/src/base/rules/eager/local-ci-first.md": true,
6599
6472
  "plugins/src/base/rules/eager/measurement-integrity.md": true,
6600
6473
  "plugins/src/base/rules/eager/not-blocked-just-waiting.md": true,
6601
- "plugins/src/base/rules/eager/observability-audit.md": true,
6602
- "plugins/src/base/rules/eager/prd-definition-of-ready.md": true,
6603
- "plugins/src/base/rules/eager/prd-lifecycle-rollup.md": true,
6604
- "plugins/src/base/rules/eager/pre-flight-autofill.md": true,
6605
- "plugins/src/base/rules/eager/project-learnings.md": true,
6606
- "plugins/src/base/rules/eager/promotion-contract.md": true,
6607
- "plugins/src/base/rules/eager/readiness-rubric.md": true,
6608
- "plugins/src/base/rules/eager/ready-role-filing.md": true,
6609
- "plugins/src/base/rules/eager/rejection-detection.md": true,
6610
- "plugins/src/base/rules/eager/repo-scope-split.md": true,
6611
6474
  "plugins/src/base/rules/eager/report-actionability.md": true,
6612
- "plugins/src/base/rules/eager/reset-seed-coverage.md": true,
6613
6475
  "plugins/src/base/rules/eager/security-audit-handling.md": true,
6614
6476
  "plugins/src/base/rules/eager/session-status-updates.md": true,
6615
6477
  "plugins/src/base/rules/eager/settled-decisions.md": true,
@@ -6617,11 +6479,9 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
6617
6479
  "plugins/src/base/rules/eager/tool-access-gate.md": true,
6618
6480
  "plugins/src/base/rules/eager/tracked-work.md": true,
6619
6481
  "plugins/src/base/rules/eager/upstream-to-lisa.md": true,
6620
- "plugins/src/base/rules/eager/usage-accounting.md": true,
6621
6482
  "plugins/src/base/rules/eager/verification.md": true,
6622
6483
  "plugins/src/base/rules/eager/wiki-knowledge-source.md": true,
6623
6484
  "plugins/src/base/rules/eager/withdrawn-rulings.md": true,
6624
- "plugins/src/base/rules/eager/work-item-definition-of-ready.md": true,
6625
6485
  "plugins/src/base/rules/reference/automation-runbook-contract.md": true,
6626
6486
  "plugins/src/base/rules/reference/base-rules.md": true,
6627
6487
  "plugins/src/base/rules/reference/bdd-e2e-coverage.md": true,
@@ -7320,6 +7180,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7320
7180
  "rails/copy-overwrite/.versionrc": true,
7321
7181
  "rails/copy-overwrite/Gemfile.lisa": true,
7322
7182
  "rails/copy-overwrite/ast-grep/rule-tests/.gitkeep": true,
7183
+ "rails/copy-overwrite/ast-grep/rules/no-day-truncating-file-age-predicate.yml": true,
7323
7184
  "rails/copy-overwrite/ast-grep/rules/ruby/no-find-by-sql-without-params.yml": true,
7324
7185
  "rails/copy-overwrite/ast-grep/rules/ruby/no-params-without-permit.yml": true,
7325
7186
  "rails/copy-overwrite/ast-grep/rules/ruby/no-raw-sql-in-where.yml": true,
@@ -7361,6 +7222,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7361
7222
  "scripts/check-delivery-deletion-conflicts.mjs": true,
7362
7223
  "scripts/check-derived-artifacts.mjs": true,
7363
7224
  "scripts/check-duplicate-versions.mjs": true,
7225
+ "scripts/check-eager-rule-budget.mjs": true,
7364
7226
  "scripts/check-empty-subject-guards.mjs": true,
7365
7227
  "scripts/check-generated-artifact-merge-coverage.mjs": true,
7366
7228
  "scripts/check-learnings-budget.ts": true,
@@ -7376,6 +7238,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7376
7238
  "scripts/check-security-floors.mjs": true,
7377
7239
  "scripts/check-self-dependency-pin.mjs": true,
7378
7240
  "scripts/check-shell-guard-refusal-coverage.mjs": true,
7241
+ "scripts/check-shipped-surface-removals.mjs": true,
7379
7242
  "scripts/check-state-classification.mjs": true,
7380
7243
  "scripts/check-template-workflow-refs.mjs": true,
7381
7244
  "scripts/check-test-case-executed.mjs": true,
@@ -7401,6 +7264,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7401
7264
  "scripts/generate-codex-plugin-artifacts.mjs": true,
7402
7265
  "scripts/generate-copilot-plugin-artifacts.mjs": true,
7403
7266
  "scripts/generate-cursor-plugin-artifacts.mjs": true,
7267
+ "scripts/generate-export-surface.mjs": true,
7404
7268
  "scripts/generate-lisa-owned-hash-ledger.mjs": true,
7405
7269
  "scripts/generate-nightly-e2e-guard-certificate.mjs": true,
7406
7270
  "scripts/generate-two-channel-couplings.ts": true,
@@ -7427,6 +7291,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7427
7291
  "scripts/lib/reusable-workflow-contract.mjs": true,
7428
7292
  "scripts/lib/shell-guard-refusal-coverage.mjs": true,
7429
7293
  "scripts/lib/shell-guard-trace.mjs": true,
7294
+ "scripts/lib/shipped-surface.mjs": true,
7430
7295
  "scripts/lib/upstream-manifest-staleness.mjs": true,
7431
7296
  "scripts/lib/workflow-contract-probe.mjs": true,
7432
7297
  "scripts/lisa-assert-eas-profile.mjs": true,
@@ -7455,6 +7320,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7455
7320
  "scripts/plugin-routing-validate.mjs": true,
7456
7321
  "scripts/probes/wave3-verification.sh": true,
7457
7322
  "scripts/reconcile-release-tags.mjs": true,
7323
+ "scripts/remedy-conformance.mjs": true,
7458
7324
  "scripts/remote-agent-aws-setup.sh": true,
7459
7325
  "scripts/run-artifact-checks.mjs": true,
7460
7326
  "scripts/setup-deploy-key.sh": true,
@@ -7469,6 +7335,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7469
7335
  "scripts/verify-learner-frontmatter-built.mjs": true,
7470
7336
  "scripts/verify-packed-learnings-contract.mjs": true,
7471
7337
  "sgconfig.yml": true,
7338
+ "shipped-removals.json": true,
7472
7339
  "spec/tasc-0.1-draft.md": true,
7473
7340
  "specs/.keep": true,
7474
7341
  "src/agy/mcp-installer.ts": true,
@@ -7757,6 +7624,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7757
7624
  "src/core/enforcement-census-report.ts": true,
7758
7625
  "src/core/enforcement-census.ts": true,
7759
7626
  "src/core/enforcement-coverage.ts": true,
7627
+ "src/core/export-surface.json": true,
7760
7628
  "src/core/gate-context-owners.ts": true,
7761
7629
  "src/core/gate-declaration-drift.ts": true,
7762
7630
  "src/core/git-service.ts": true,
@@ -8139,6 +8007,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
8139
8007
  "tests/helpers/rollup-classifier-ladder-harness.ts": true,
8140
8008
  "tests/helpers/safety-net-guard-fixtures.ts": true,
8141
8009
  "tests/helpers/safety-net-guard-harness.ts": true,
8010
+ "tests/helpers/safety-net-read-tree-fixtures.ts": true,
8142
8011
  "tests/helpers/safety-net-stdin-deleter-fixtures.ts": true,
8143
8012
  "tests/helpers/safety-net-subst-fixtures.ts": true,
8144
8013
  "tests/helpers/shipped-mjs-roster.ts": true,
@@ -8205,6 +8074,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
8205
8074
  "tests/integration/hardcoded-invocation-fixture.ts": true,
8206
8075
  "tests/integration/hardcoded-invocation-inventory.test.ts": true,
8207
8076
  "tests/integration/host-lint-gate-survives-apply.test.ts": true,
8077
+ "tests/integration/host-test-scripts-survive-apply.test.ts": true,
8208
8078
  "tests/integration/inventory-covers-shipped-artifacts.test.ts": true,
8209
8079
  "tests/integration/jest-expo-haste-pruning.test.ts": true,
8210
8080
  "tests/integration/job-names-name-properties.test.ts": true,
@@ -8303,6 +8173,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
8303
8173
  "tests/integration/security-floors-gate.test.ts": true,
8304
8174
  "tests/integration/seeded-gates-preserve-hook-outcomes.test.ts": true,
8305
8175
  "tests/integration/self-pin-drift-gate-wiring.test.ts": true,
8176
+ "tests/integration/sentry-deploy-workflow.test.ts": true,
8306
8177
  "tests/integration/shell-guard-allow-controls.test.ts": true,
8307
8178
  "tests/integration/shell-guard-refusals.test.ts": true,
8308
8179
  "tests/integration/skipped-required-checks-gate-fail-closed.test.ts": true,
@@ -8328,6 +8199,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
8328
8199
  "tests/integration/work-item-contract-handshake.test.ts": true,
8329
8200
  "tests/integration/workflow-deletion-ownership.test.ts": true,
8330
8201
  "tests/integration/workflow-expression-not-truncated.test.ts": true,
8202
+ "tests/integration/zero-collection-gate-bite.test.ts": true,
8331
8203
  "tests/support/git-executable.ts": true,
8332
8204
  "tests/support/prune-fixtures.ts": true,
8333
8205
  "tests/support/work-item-cli.ts": true,
@@ -8549,6 +8421,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
8549
8421
  "tests/unit/config/expo-design-value-arming.test.ts": true,
8550
8422
  "tests/unit/config/expo-eslint-local-config.test.ts": true,
8551
8423
  "tests/unit/config/expo-view-purity-gate.test.ts": true,
8424
+ "tests/unit/config/fast-uri-audit-suppression.test.ts": true,
8552
8425
  "tests/unit/config/fast-xml-parser-security-floor.test.ts": true,
8553
8426
  "tests/unit/config/gate-default-tasks-resolve.test.ts": true,
8554
8427
  "tests/unit/config/gate-task-shipped-to-templates.test.ts": true,
@@ -8577,6 +8450,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
8577
8450
  "tests/unit/config/plugin-sync-push-gate-wired.test.ts": true,
8578
8451
  "tests/unit/config/postinstall-ci-guard.test.ts": true,
8579
8452
  "tests/unit/config/postinstall-cloud-session-guard.test.ts": true,
8453
+ "tests/unit/config/postinstall-tsc-stays-in-package.test.ts": true,
8580
8454
  "tests/unit/config/process-tree-runner-common-delivery.test.ts": true,
8581
8455
  "tests/unit/config/rails-scratch-supervisor-routes.test.ts": true,
8582
8456
  "tests/unit/config/rails-template.test.ts": true,
@@ -8634,6 +8508,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
8634
8508
  "tests/unit/core/deploy-release-dependence.test.ts": true,
8635
8509
  "tests/unit/core/enforcement-census-roster.test.ts": true,
8636
8510
  "tests/unit/core/enforcement-census.test.ts": true,
8511
+ "tests/unit/core/find-age-predicate-truncation.test.ts": true,
8637
8512
  "tests/unit/core/fs-extra-namespace-callsites.test.ts": true,
8638
8513
  "tests/unit/core/fs-extra-namespace-members.test.ts": true,
8639
8514
  "tests/unit/core/gate-context-owners.test.ts": true,
@@ -8786,6 +8661,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
8786
8661
  "tests/unit/hooks/enforce-verification-gate-v1.test.ts": true,
8787
8662
  "tests/unit/hooks/enforce-verification-gate-v2.test.ts": true,
8788
8663
  "tests/unit/hooks/enforcement-fallback-attribution.test.ts": true,
8664
+ "tests/unit/hooks/enforcement-fallback-channel-skew.test.ts": true,
8789
8665
  "tests/unit/hooks/enforcement-fallback-notice-rate.test.ts": true,
8790
8666
  "tests/unit/hooks/enforcement-fallback-staleness.test.ts": true,
8791
8667
  "tests/unit/hooks/enforcement-fallback-status-aggregation.test.ts": true,
@@ -8828,6 +8704,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
8828
8704
  "tests/unit/hooks/parity-safety-net-line-continuation.test.ts": true,
8829
8705
  "tests/unit/hooks/parity-safety-net-no-stash-advice.test.ts": true,
8830
8706
  "tests/unit/hooks/parity-safety-net-noexec.test.ts": true,
8707
+ "tests/unit/hooks/parity-safety-net-plumbing-discard.test.ts": true,
8831
8708
  "tests/unit/hooks/parity-safety-net-preserve-remedy.test.ts": true,
8832
8709
  "tests/unit/hooks/parity-safety-net-prose-remedy.test.ts": true,
8833
8710
  "tests/unit/hooks/parity-safety-net-scan-failure.test.ts": true,
@@ -8838,7 +8715,11 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
8838
8715
  "tests/unit/hooks/pre-push-coverage-scope.test.ts": true,
8839
8716
  "tests/unit/hooks/pre-push-deletion-guard.test.ts": true,
8840
8717
  "tests/unit/hooks/pre-push-git-environment.test.ts": true,
8718
+ "tests/unit/hooks/pre-push-pushed-refs-file.test.ts": true,
8719
+ "tests/unit/hooks/pre-push-pushed-tree-scope.test.ts": true,
8841
8720
  "tests/unit/hooks/pre-push-traceability-gate.test.ts": true,
8721
+ "tests/unit/hooks/remedy-conformance-live.test.ts": true,
8722
+ "tests/unit/hooks/remedy-conformance.test.ts": true,
8842
8723
  "tests/unit/hooks/safety-net-worktree-delete.test.ts": true,
8843
8724
  "tests/unit/hooks/secrets-preflight-hook.test.ts": true,
8844
8725
  "tests/unit/hooks/shellcheck-directives.test.ts": true,
@@ -8860,6 +8741,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
8860
8741
  "tests/unit/hooks/work-item-wiring.test.ts": true,
8861
8742
  "tests/unit/hooks/worktree-binding-first-call.test.ts": true,
8862
8743
  "tests/unit/hooks/worktree-binding-guard-script-reach.test.ts": true,
8744
+ "tests/unit/hooks/worktree-binding-guard-wrapper.test.ts": true,
8863
8745
  "tests/unit/hooks/worktree-binding-guard.test.ts": true,
8864
8746
  "tests/unit/hooks/worktree-create-failure.test.ts": true,
8865
8747
  "tests/unit/hooks/worktree-create.test.ts": true,
@@ -8956,6 +8838,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
8956
8838
  "tests/unit/scripts/check-release-package-identity.test.ts": true,
8957
8839
  "tests/unit/scripts/check-self-dependency-pin.test.ts": true,
8958
8840
  "tests/unit/scripts/check-shell-guard-refusal-coverage.test.ts": true,
8841
+ "tests/unit/scripts/check-shipped-surface-removals.test.ts": true,
8959
8842
  "tests/unit/scripts/check-template-workflow-refs.test.ts": true,
8960
8843
  "tests/unit/scripts/check-test-case-executed.test.ts": true,
8961
8844
  "tests/unit/scripts/check-third-party-action-pins.test.ts": true,
@@ -8965,6 +8848,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
8965
8848
  "tests/unit/scripts/check-workflow-package-contracts.test.ts": true,
8966
8849
  "tests/unit/scripts/check-workflow-package-paths.test.ts": true,
8967
8850
  "tests/unit/scripts/cleanup-worktrees-apply.test.ts": true,
8851
+ "tests/unit/scripts/cleanup-worktrees-refusals.test.ts": true,
8968
8852
  "tests/unit/scripts/cleanup-worktrees-unreadable.test.ts": true,
8969
8853
  "tests/unit/scripts/codex-hook-filter.test.ts": true,
8970
8854
  "tests/unit/scripts/command-envelope.test.ts": true,
@@ -8984,12 +8868,14 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
8984
8868
  "tests/unit/scripts/e2e-coverage-interpolation-wildcard.test.ts": true,
8985
8869
  "tests/unit/scripts/e2e-coverage-run-awareness.test.ts": true,
8986
8870
  "tests/unit/scripts/e2e-coverage.test.ts": true,
8871
+ "tests/unit/scripts/export-surface.test.ts": true,
8987
8872
  "tests/unit/scripts/floor-collisions.test.ts": true,
8988
8873
  "tests/unit/scripts/gate-declared-failure-shapes.test.ts": true,
8989
8874
  "tests/unit/scripts/gate-diagnosis-comment-terminated.test.ts": true,
8990
8875
  "tests/unit/scripts/gate-diagnosis-no-tests-ran.test.ts": true,
8991
8876
  "tests/unit/scripts/gate-diagnosis-type-errors.test.ts": true,
8992
8877
  "tests/unit/scripts/gate-failure-diagnosis.test.ts": true,
8878
+ "tests/unit/scripts/gate-hollow-success.test.ts": true,
8993
8879
  "tests/unit/scripts/gate-killed-under-load.test.ts": true,
8994
8880
  "tests/unit/scripts/gate-resource-refused.test.ts": true,
8995
8881
  "tests/unit/scripts/generate-agy-plugin-artifacts.test.ts": true,
@@ -9141,6 +9027,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
9141
9027
  "tests/unit/scripts/security-floors.test.ts": true,
9142
9028
  "tests/unit/scripts/setup-jira-cli-config.test.ts": true,
9143
9029
  "tests/unit/scripts/setup-jira-cli-project-dir.test.ts": true,
9030
+ "tests/unit/scripts/shipped-surface.test.ts": true,
9144
9031
  "tests/unit/scripts/skipped-required-checks-wiring.test.ts": true,
9145
9032
  "tests/unit/scripts/skipped-required-checks.test.ts": true,
9146
9033
  "tests/unit/scripts/slow-lint-dead-code-enforcement.test.ts": true,
@@ -9176,6 +9063,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
9176
9063
  "tests/unit/scripts/work-item-optional-validation.test.ts": true,
9177
9064
  "tests/unit/scripts/work-item-push-destination.test.ts": true,
9178
9065
  "tests/unit/scripts/work-item-push-merge-defer.test.ts": true,
9066
+ "tests/unit/scripts/work-item-push-refs-file.test.ts": true,
9179
9067
  "tests/unit/scripts/work-item-push-success-attribution.test.ts": true,
9180
9068
  "tests/unit/scripts/work-item-run-and-gh-version.test.ts": true,
9181
9069
  "tests/unit/scripts/work-item-tracker-unreachable.test.ts": true,
@@ -9391,6 +9279,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
9391
9279
  "tests/unit/strategies/harness-parity-council-skill.test.ts": true,
9392
9280
  "tests/unit/strategies/harper-fabric-template-no-advisory-pollution.test.ts": true,
9393
9281
  "tests/unit/strategies/health-skill-contract.test.ts": true,
9282
+ "tests/unit/strategies/human-gate-declaration-precision.test.ts": true,
9394
9283
  "tests/unit/strategies/implement-env-base-branch.test.ts": true,
9395
9284
  "tests/unit/strategies/improve-harness-skill.test.ts": true,
9396
9285
  "tests/unit/strategies/intake-assignee-filter.test.ts": true,
@@ -9441,6 +9330,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
9441
9330
  "tests/unit/strategies/package-lisa-override-floor-remedy.test.ts": true,
9442
9331
  "tests/unit/strategies/package-lisa-script-composition.test.ts": true,
9443
9332
  "tests/unit/strategies/package-lisa-script-report.test.ts": true,
9333
+ "tests/unit/strategies/package-lisa-test-script-governance.test.ts": true,
9444
9334
  "tests/unit/strategies/package-lisa-version-pin.test.ts": true,
9445
9335
  "tests/unit/strategies/package-lisa.test.ts": true,
9446
9336
  "tests/unit/strategies/parent-status-rollup.test.ts": true,
@@ -9599,6 +9489,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
9599
9489
  "typescript/copy-overwrite/.yamllint": true,
9600
9490
  "typescript/copy-overwrite/ast-grep/rule-tests/.gitkeep": true,
9601
9491
  "typescript/copy-overwrite/ast-grep/rules/.gitkeep": true,
9492
+ "typescript/copy-overwrite/ast-grep/rules/no-day-truncating-file-age-predicate.yml": true,
9602
9493
  "typescript/copy-overwrite/ast-grep/rules/no-inline-component-in-container.yml": true,
9603
9494
  "typescript/copy-overwrite/ast-grep/rules/no-inline-component-in-view.yml": true,
9604
9495
  "typescript/copy-overwrite/ast-grep/rules/no-missing-fs-extra-namespace-member-js.yml": true,
@@ -9678,7 +9569,9 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
9678
9569
  "wiki/decisions/2026-08-12-in-session-ticket-ready-role.md": true,
9679
9570
  "wiki/decisions/2026-08-12-ratchet-policy.md": true,
9680
9571
  "wiki/decisions/2026-08-19-guard-mutation-gate.md": true,
9572
+ "wiki/decisions/2026-09-04-absence-shaped-like-a-verdict.md": true,
9681
9573
  "wiki/decisions/2026-09-04-state-change-without-inverse.md": true,
9574
+ "wiki/decisions/2026-09-05-find-age-predicates.md": true,
9682
9575
  "wiki/documentation/assets/lisa-architecture.svg": true,
9683
9576
  "wiki/documentation/claude/overinstructions.md": true,
9684
9577
  "wiki/documentation/claude/review.md": true,