@codyswann/lisa 4.11.3 → 4.12.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.
- package/all/copy-contents/.gitattributes +4 -0
- package/dist/core/learnings-merge-driver.d.ts.map +1 -1
- package/dist/core/learnings-merge-driver.js +15 -0
- package/dist/core/learnings-merge-driver.js.map +1 -1
- package/dist/core/upstream-evidence-manifest.d.ts.map +1 -1
- package/dist/core/upstream-evidence-manifest.js +14 -1
- package/dist/core/upstream-evidence-manifest.js.map +1 -1
- package/package.json +2 -1
- package/plugins/lisa/.claude-plugin/plugin.json +10 -1
- package/plugins/lisa/.codex-plugin/hooks.json +9 -0
- package/plugins/lisa/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa/hooks/failure-signature-index.mjs +482 -0
- package/plugins/lisa/hooks/failure-signature-index.sh +26 -0
- package/plugins/lisa-agy/plugin.json +1 -1
- package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-agy/plugin.json +1 -1
- package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-copilot/.claude-plugin/plugin.json +10 -1
- package/plugins/lisa-copilot/hooks/failure-signature-index.mjs +482 -0
- package/plugins/lisa-copilot/hooks/failure-signature-index.sh +26 -0
- package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cursor/hooks/failure-signature-index.mjs +482 -0
- package/plugins/lisa-cursor/hooks/failure-signature-index.sh +26 -0
- package/plugins/lisa-cursor/hooks/hooks.json +4 -0
- package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-agy/plugin.json +1 -1
- package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-agy/plugin.json +1 -1
- package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-agy/plugin.json +1 -1
- package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-agy/plugin.json +1 -1
- package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-agy/plugin.json +1 -1
- package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-agy/plugin.json +1 -1
- package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-agy/plugin.json +1 -1
- package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/src/base/.claude-plugin/plugin.json +10 -1
- package/plugins/src/base/hooks/failure-signature-index.mjs +482 -0
- package/plugins/src/base/hooks/failure-signature-index.sh +26 -0
|
@@ -4,6 +4,10 @@
|
|
|
4
4
|
# each run on their own branch. Git's default line merge corrupts it with
|
|
5
5
|
# conflict markers; this driver unions entries by id instead. The driver
|
|
6
6
|
# command is machine-local — run `lisa install-merge-driver` to register it.
|
|
7
|
+
# `lisa doctor` already reports this as "Merge drivers registered?" when a
|
|
8
|
+
# mapping here has no registered driver — named at the symptom site on
|
|
9
|
+
# purpose, because the guard is unreachable from the conflict markers you
|
|
10
|
+
# arrived with (CodySwannGT/lisa#3061).
|
|
7
11
|
.lisa/PROJECT_LEARNINGS.md merge=lisa-learnings
|
|
8
12
|
|
|
9
13
|
# The overflow buffer holds captures the ledger had no budget for, until
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"learnings-merge-driver.d.ts","sourceRoot":"","sources":["../../src/core/learnings-merge-driver.ts"],"names":[],"mappings":"AAmCA,iFAAiF;AACjF,eAAO,MAAM,2BAA2B,mBAAmB,CAAC;AAE5D,iEAAiE;AACjE,eAAO,MAAM,kCAAkC,wCACR,CAAC;AAExC,wEAAwE;AACxE,eAAO,MAAM,0BAA0B,2BAA2B,CAAC;AAEnE,wEAAwE;AACxE,eAAO,MAAM,wBAAwB,yBAAyB,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,gCAAgC,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE3E;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEtE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iCAAiC,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"learnings-merge-driver.d.ts","sourceRoot":"","sources":["../../src/core/learnings-merge-driver.ts"],"names":[],"mappings":"AAmCA,iFAAiF;AACjF,eAAO,MAAM,2BAA2B,mBAAmB,CAAC;AAE5D,iEAAiE;AACjE,eAAO,MAAM,kCAAkC,wCACR,CAAC;AAExC,wEAAwE;AACxE,eAAO,MAAM,0BAA0B,2BAA2B,CAAC;AAEnE,wEAAwE;AACxE,eAAO,MAAM,wBAAwB,yBAAyB,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,gCAAgC,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE3E;AAED;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAEtE;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,iCAAiC,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAkC5E"}
|
|
@@ -100,6 +100,21 @@ export function renderLearningsGitattributesBlock(ledgerPath) {
|
|
|
100
100
|
"# each run on their own branch. Git's default line merge corrupts it with",
|
|
101
101
|
"# conflict markers; this driver unions entries by id instead. The driver",
|
|
102
102
|
"# command is machine-local — run `lisa install-merge-driver` to register it.",
|
|
103
|
+
// Named at the SYMPTOM site on purpose. A person arriving from the effect —
|
|
104
|
+
// conflict markers in a file mapped to a union driver — reads this file;
|
|
105
|
+
// the guard that already reports the condition lives in `lisa doctor`,
|
|
106
|
+
// which is reachable only by someone who already suspects a guard exists.
|
|
107
|
+
// Without this line the natural next move is to build a SECOND control for
|
|
108
|
+
// a condition one control already covers (CodySwannGT/lisa#3061).
|
|
109
|
+
//
|
|
110
|
+
// The literal is pinned rather than imported because `src/cli` may not be
|
|
111
|
+
// imported from `src/core`. It cannot drift silently: the check name is a
|
|
112
|
+
// `guard` anchor in `failure-signatures.json`, so renaming the doctor check
|
|
113
|
+
// without updating this fails `bun run check:failure-signatures`.
|
|
114
|
+
'# `lisa doctor` already reports this as "Merge drivers registered?" when a',
|
|
115
|
+
"# mapping here has no registered driver — named at the symptom site on",
|
|
116
|
+
"# purpose, because the guard is unreachable from the conflict markers you",
|
|
117
|
+
"# arrived with (CodySwannGT/lisa#3061).",
|
|
103
118
|
buildLearningsAttributeLine(ledgerPath),
|
|
104
119
|
"",
|
|
105
120
|
"# The overflow buffer holds captures the ledger had no budget for, until",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"learnings-merge-driver.js","sourceRoot":"","sources":["../../src/core/learnings-merge-driver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AAEvE,iFAAiF;AACjF,MAAM,CAAC,MAAM,2BAA2B,GAAG,gBAAgB,CAAC;AAE5D,iEAAiE;AACjE,MAAM,CAAC,MAAM,kCAAkC,GAC7C,qCAAqC,CAAC;AAExC,wEAAwE;AACxE,MAAM,CAAC,MAAM,0BAA0B,GAAG,wBAAwB,CAAC;AAEnE,wEAAwE;AACxE,MAAM,CAAC,MAAM,wBAAwB,GAAG,sBAAsB,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,gCAAgC,CAAC,UAAkB;IACjE,OAAO,GAAG,UAAU,4DAA4D,CAAC;AACnF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CAAC,UAAkB;IAC5D,OAAO,GAAG,UAAU,UAAU,2BAA2B,EAAE,CAAC;AAC9D,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,iCAAiC,CAAC,UAAkB;IAClE,OAAO;QACL,0BAA0B;QAC1B,EAAE;QACF,6EAA6E;QAC7E,2EAA2E;QAC3E,0EAA0E;QAC1E,8EAA8E;QAC9E,2BAA2B,CAAC,UAAU,CAAC;QACvC,EAAE;QACF,0EAA0E;QAC1E,2EAA2E;QAC3E,4EAA4E;QAC5E,0BAA0B;QAC1B,2BAA2B,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAC;QACrE,EAAE;QACF,wBAAwB;QACxB,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
|
|
1
|
+
{"version":3,"file":"learnings-merge-driver.js","sourceRoot":"","sources":["../../src/core/learnings-merge-driver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,OAAO,EAAE,4BAA4B,EAAE,MAAM,yBAAyB,CAAC;AAEvE,iFAAiF;AACjF,MAAM,CAAC,MAAM,2BAA2B,GAAG,gBAAgB,CAAC;AAE5D,iEAAiE;AACjE,MAAM,CAAC,MAAM,kCAAkC,GAC7C,qCAAqC,CAAC;AAExC,wEAAwE;AACxE,MAAM,CAAC,MAAM,0BAA0B,GAAG,wBAAwB,CAAC;AAEnE,wEAAwE;AACxE,MAAM,CAAC,MAAM,wBAAwB,GAAG,sBAAsB,CAAC;AAE/D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,gCAAgC,CAAC,UAAkB;IACjE,OAAO,GAAG,UAAU,4DAA4D,CAAC;AACnF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CAAC,UAAkB;IAC5D,OAAO,GAAG,UAAU,UAAU,2BAA2B,EAAE,CAAC;AAC9D,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,iCAAiC,CAAC,UAAkB;IAClE,OAAO;QACL,0BAA0B;QAC1B,EAAE;QACF,6EAA6E;QAC7E,2EAA2E;QAC3E,0EAA0E;QAC1E,8EAA8E;QAC9E,4EAA4E;QAC5E,yEAAyE;QACzE,uEAAuE;QACvE,0EAA0E;QAC1E,2EAA2E;QAC3E,kEAAkE;QAClE,EAAE;QACF,0EAA0E;QAC1E,0EAA0E;QAC1E,4EAA4E;QAC5E,kEAAkE;QAClE,4EAA4E;QAC5E,wEAAwE;QACxE,2EAA2E;QAC3E,yCAAyC;QACzC,2BAA2B,CAAC,UAAU,CAAC;QACvC,EAAE;QACF,0EAA0E;QAC1E,2EAA2E;QAC3E,4EAA4E;QAC5E,0BAA0B;QAC1B,2BAA2B,CAAC,4BAA4B,CAAC,UAAU,CAAC,CAAC;QACrE,EAAE;QACF,wBAAwB;QACxB,EAAE;KACH,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"upstream-evidence-manifest.d.ts","sourceRoot":"","sources":["../../src/core/upstream-evidence-manifest.ts"],"names":[],"mappings":"AACA,iFAAiF;AACjF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"upstream-evidence-manifest.d.ts","sourceRoot":"","sources":["../../src/core/upstream-evidence-manifest.ts"],"names":[],"mappings":"AACA,iFAAiF;AACjF,eAAO,MAAM,0BAA0B,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CA85EpE,CAAC;AAEL,4EAA4E;AAC5E,eAAO,MAAM,yBAAyB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAqrPjE,CAAC;AAEL,sFAAsF;AACtF,eAAO,MAAM,uBAAuB,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAk6I/D,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/* eslint-disable max-lines -- generated exact public-evidence allowlist */
|
|
2
2
|
/** Generated by scripts/generate-upstream-evidence-manifest.mjs. Do not edit. */
|
|
3
3
|
export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
|
|
4
|
-
"all/copy-contents/.gitattributes": "
|
|
4
|
+
"all/copy-contents/.gitattributes": "b23282f829ee514a25d8e334b31597851c1d89c1c58f119787eb4c99ecdc8407",
|
|
5
5
|
"all/copy-contents/gitignore": "06fc4bca36fabe2abc81e60b3e3886dcb9a0eacb4ae9d670beb2125a4eb4f850",
|
|
6
6
|
"all/copy-overwrite/scripts/check-conflict-markers.mjs": "d7a689bcc122af7f38d1c536924fc2f3dcb503b09658ffc6035ccbe720d14d6b",
|
|
7
7
|
"all/copy-overwrite/scripts/check-state-classification.mjs": "a72910f9885629dd6d8a739b900f5603e4b53d68ece64100a2a5647016b58e1e",
|
|
@@ -358,6 +358,8 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
|
|
|
358
358
|
"plugins/src/base/hooks/debug-hook.sh": "8416fc2603cabf08245db998736a291d3b5aedf45b4a6f61c0060f07134e6530",
|
|
359
359
|
"plugins/src/base/hooks/enforce-team-first.sh": "104922ba5912b797bf9ce15881dcef76916ea1782ac1e669151265b7db9fb263",
|
|
360
360
|
"plugins/src/base/hooks/enforce-verification-gate.sh": "29885d07ff6da70f193ea0f0691d63f324deb79fbd7ede519596415875d94458",
|
|
361
|
+
"plugins/src/base/hooks/failure-signature-index.mjs": "06cf3f7d917a793f283ced2997d3b9dade47f33d40904ca6914b9879313ab7df",
|
|
362
|
+
"plugins/src/base/hooks/failure-signature-index.sh": "08ed520f59cf97056c3d17bc342e1a4d24802e8d460d77b546017c15a4ba2c55",
|
|
361
363
|
"plugins/src/base/hooks/inject-flow-context.sh": "f4ab07065762d592c0fc36be2e4918e767b293aaa4094b9d85d69010576c6dbf",
|
|
362
364
|
"plugins/src/base/hooks/inject-rules.sh": "89a3780250e21aefa0eb83235523835ec0f83b25807b1ccc21f7a397a0459842",
|
|
363
365
|
"plugins/src/base/hooks/install-pkgs.sh": "e9a13faba849a277410dde911ab102ee6f88ef915b33571bb1d4eef904172db5",
|
|
@@ -1586,6 +1588,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
|
|
|
1586
1588
|
"expo/merge/.claude/settings.json": true,
|
|
1587
1589
|
"expo/merge/.oxlintrc.json": true,
|
|
1588
1590
|
"expo/package-lisa/package.lisa.json": true,
|
|
1591
|
+
"failure-signatures.json": true,
|
|
1589
1592
|
"harper-fabric/copy-contents/.prettierignore": true,
|
|
1590
1593
|
"harper-fabric/copy-contents/gitignore": true,
|
|
1591
1594
|
"harper-fabric/copy-overwrite/.github/workflows/ci.yml": true,
|
|
@@ -2592,6 +2595,8 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
|
|
|
2592
2595
|
"plugins/lisa-copilot/hooks/block-shell-json-parsing.sh": true,
|
|
2593
2596
|
"plugins/lisa-copilot/hooks/cleanup-stale-worktrees.sh": true,
|
|
2594
2597
|
"plugins/lisa-copilot/hooks/enforce-verification-gate.sh": true,
|
|
2598
|
+
"plugins/lisa-copilot/hooks/failure-signature-index.mjs": true,
|
|
2599
|
+
"plugins/lisa-copilot/hooks/failure-signature-index.sh": true,
|
|
2595
2600
|
"plugins/lisa-copilot/hooks/inject-rules.sh": true,
|
|
2596
2601
|
"plugins/lisa-copilot/hooks/install-pkgs.sh": true,
|
|
2597
2602
|
"plugins/lisa-copilot/hooks/parity-safety-net-heredoc.py": true,
|
|
@@ -3059,6 +3064,8 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
|
|
|
3059
3064
|
"plugins/lisa-cursor/hooks/block-shell-json-parsing.sh": true,
|
|
3060
3065
|
"plugins/lisa-cursor/hooks/cleanup-stale-worktrees.sh": true,
|
|
3061
3066
|
"plugins/lisa-cursor/hooks/enforce-verification-gate.sh": true,
|
|
3067
|
+
"plugins/lisa-cursor/hooks/failure-signature-index.mjs": true,
|
|
3068
|
+
"plugins/lisa-cursor/hooks/failure-signature-index.sh": true,
|
|
3062
3069
|
"plugins/lisa-cursor/hooks/hooks.json": true,
|
|
3063
3070
|
"plugins/lisa-cursor/hooks/install-pkgs.sh": true,
|
|
3064
3071
|
"plugins/lisa-cursor/hooks/parity-safety-net-heredoc.py": true,
|
|
@@ -5637,6 +5644,8 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
|
|
|
5637
5644
|
"plugins/lisa/hooks/debug-hook.sh": true,
|
|
5638
5645
|
"plugins/lisa/hooks/enforce-team-first.sh": true,
|
|
5639
5646
|
"plugins/lisa/hooks/enforce-verification-gate.sh": true,
|
|
5647
|
+
"plugins/lisa/hooks/failure-signature-index.mjs": true,
|
|
5648
|
+
"plugins/lisa/hooks/failure-signature-index.sh": true,
|
|
5640
5649
|
"plugins/lisa/hooks/inject-flow-context.sh": true,
|
|
5641
5650
|
"plugins/lisa/hooks/inject-rules.sh": true,
|
|
5642
5651
|
"plugins/lisa/hooks/install-pkgs.sh": true,
|
|
@@ -6288,6 +6297,8 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
|
|
|
6288
6297
|
"plugins/src/base/hooks/debug-hook.sh": true,
|
|
6289
6298
|
"plugins/src/base/hooks/enforce-team-first.sh": true,
|
|
6290
6299
|
"plugins/src/base/hooks/enforce-verification-gate.sh": true,
|
|
6300
|
+
"plugins/src/base/hooks/failure-signature-index.mjs": true,
|
|
6301
|
+
"plugins/src/base/hooks/failure-signature-index.sh": true,
|
|
6291
6302
|
"plugins/src/base/hooks/inject-flow-context.sh": true,
|
|
6292
6303
|
"plugins/src/base/hooks/inject-rules.sh": true,
|
|
6293
6304
|
"plugins/src/base/hooks/install-pkgs.sh": true,
|
|
@@ -8166,6 +8177,8 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
|
|
|
8166
8177
|
"tests/unit/hooks/enforcement-fallback-zero-guards.test.ts": true,
|
|
8167
8178
|
"tests/unit/hooks/enforcement-fallback.test.ts": true,
|
|
8168
8179
|
"tests/unit/hooks/enforcement-gates-e2e.test.ts": true,
|
|
8180
|
+
"tests/unit/hooks/failure-signature-index-wiring.test.ts": true,
|
|
8181
|
+
"tests/unit/hooks/failure-signature-index.test.ts": true,
|
|
8169
8182
|
"tests/unit/hooks/gate-coverage-handover.test.ts": true,
|
|
8170
8183
|
"tests/unit/hooks/generated-shell-parsing-regressions.test.ts": true,
|
|
8171
8184
|
"tests/unit/hooks/hook-scripts-parse.test.ts": true,
|