@codyswann/lisa 3.16.0 → 3.17.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 (119) hide show
  1. package/all/copy-overwrite/scripts/lisa-gates.mjs +1165 -0
  2. package/all/copy-overwrite/scripts/lisa-reconcile-policy.mjs +1188 -0
  3. package/all/copy-overwrite/scripts/lisa-run-gates.mjs +597 -0
  4. package/dist/core/lisa-owned-hash-ledger.d.ts.map +1 -1
  5. package/dist/core/lisa-owned-hash-ledger.js +24 -0
  6. package/dist/core/lisa-owned-hash-ledger.js.map +1 -1
  7. package/dist/core/upstream-evidence-manifest.d.ts.map +1 -1
  8. package/dist/core/upstream-evidence-manifest.js +72 -8
  9. package/dist/core/upstream-evidence-manifest.js.map +1 -1
  10. package/package.json +6 -2
  11. package/plugins/lisa/.claude-plugin/plugin.json +10 -1
  12. package/plugins/lisa/.codex-plugin/hooks.json +9 -0
  13. package/plugins/lisa/.codex-plugin/plugin.json +1 -1
  14. package/plugins/lisa/.codex-plugin/skills/lisa-doctor/SKILL.md +108 -2
  15. package/plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/preflight-secrets.mjs +324 -0
  16. package/plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/routing-floor.mjs +153 -0
  17. package/plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/surfaces.mjs +55 -7
  18. package/plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/validate-config.mjs +89 -17
  19. package/plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/scripts/preflight-tools.mjs +242 -0
  20. package/plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/scripts/tool-floor.mjs +94 -0
  21. package/plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/scripts/verify-remote-env.mjs +14 -32
  22. package/plugins/lisa/hooks/secrets-preflight.sh +72 -0
  23. package/plugins/lisa/skills/lisa-doctor/SKILL.md +108 -2
  24. package/plugins/lisa/skills/lisa-secrets-access/scripts/preflight-secrets.mjs +324 -0
  25. package/plugins/lisa/skills/lisa-secrets-access/scripts/routing-floor.mjs +153 -0
  26. package/plugins/lisa/skills/lisa-secrets-access/scripts/surfaces.mjs +55 -7
  27. package/plugins/lisa/skills/lisa-secrets-access/scripts/validate-config.mjs +89 -17
  28. package/plugins/lisa/skills/lisa-setup-remote-env/scripts/preflight-tools.mjs +242 -0
  29. package/plugins/lisa/skills/lisa-setup-remote-env/scripts/tool-floor.mjs +94 -0
  30. package/plugins/lisa/skills/lisa-setup-remote-env/scripts/verify-remote-env.mjs +14 -32
  31. package/plugins/lisa-agy/plugin.json +1 -1
  32. package/plugins/lisa-agy/skills/lisa-doctor/SKILL.md +108 -2
  33. package/plugins/lisa-agy/skills/lisa-secrets-access/scripts/preflight-secrets.mjs +324 -0
  34. package/plugins/lisa-agy/skills/lisa-secrets-access/scripts/routing-floor.mjs +153 -0
  35. package/plugins/lisa-agy/skills/lisa-secrets-access/scripts/surfaces.mjs +55 -7
  36. package/plugins/lisa-agy/skills/lisa-secrets-access/scripts/validate-config.mjs +89 -17
  37. package/plugins/lisa-agy/skills/lisa-setup-remote-env/scripts/preflight-tools.mjs +242 -0
  38. package/plugins/lisa-agy/skills/lisa-setup-remote-env/scripts/tool-floor.mjs +94 -0
  39. package/plugins/lisa-agy/skills/lisa-setup-remote-env/scripts/verify-remote-env.mjs +14 -32
  40. package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
  41. package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
  42. package/plugins/lisa-cdk-agy/plugin.json +1 -1
  43. package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
  44. package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
  45. package/plugins/lisa-copilot/.claude-plugin/plugin.json +10 -1
  46. package/plugins/lisa-copilot/hooks/secrets-preflight.sh +72 -0
  47. package/plugins/lisa-copilot/skills/lisa-doctor/SKILL.md +108 -2
  48. package/plugins/lisa-copilot/skills/lisa-secrets-access/scripts/preflight-secrets.mjs +324 -0
  49. package/plugins/lisa-copilot/skills/lisa-secrets-access/scripts/routing-floor.mjs +153 -0
  50. package/plugins/lisa-copilot/skills/lisa-secrets-access/scripts/surfaces.mjs +55 -7
  51. package/plugins/lisa-copilot/skills/lisa-secrets-access/scripts/validate-config.mjs +89 -17
  52. package/plugins/lisa-copilot/skills/lisa-setup-remote-env/scripts/preflight-tools.mjs +242 -0
  53. package/plugins/lisa-copilot/skills/lisa-setup-remote-env/scripts/tool-floor.mjs +94 -0
  54. package/plugins/lisa-copilot/skills/lisa-setup-remote-env/scripts/verify-remote-env.mjs +14 -32
  55. package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
  56. package/plugins/lisa-cursor/hooks/hooks.json +3 -0
  57. package/plugins/lisa-cursor/hooks/secrets-preflight.sh +72 -0
  58. package/plugins/lisa-cursor/skills/lisa-doctor/SKILL.md +108 -2
  59. package/plugins/lisa-cursor/skills/lisa-secrets-access/scripts/preflight-secrets.mjs +324 -0
  60. package/plugins/lisa-cursor/skills/lisa-secrets-access/scripts/routing-floor.mjs +153 -0
  61. package/plugins/lisa-cursor/skills/lisa-secrets-access/scripts/surfaces.mjs +55 -7
  62. package/plugins/lisa-cursor/skills/lisa-secrets-access/scripts/validate-config.mjs +89 -17
  63. package/plugins/lisa-cursor/skills/lisa-setup-remote-env/scripts/preflight-tools.mjs +242 -0
  64. package/plugins/lisa-cursor/skills/lisa-setup-remote-env/scripts/tool-floor.mjs +94 -0
  65. package/plugins/lisa-cursor/skills/lisa-setup-remote-env/scripts/verify-remote-env.mjs +14 -32
  66. package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
  67. package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
  68. package/plugins/lisa-expo-agy/plugin.json +1 -1
  69. package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
  70. package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
  71. package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
  72. package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
  73. package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
  74. package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
  75. package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
  76. package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
  77. package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
  78. package/plugins/lisa-nestjs-agy/plugin.json +1 -1
  79. package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
  80. package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
  81. package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
  82. package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
  83. package/plugins/lisa-openclaw-agy/plugin.json +1 -1
  84. package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
  85. package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
  86. package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
  87. package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
  88. package/plugins/lisa-phaser-agy/plugin.json +1 -1
  89. package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
  90. package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
  91. package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
  92. package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
  93. package/plugins/lisa-rails-agy/plugin.json +1 -1
  94. package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
  95. package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
  96. package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
  97. package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
  98. package/plugins/lisa-typescript-agy/plugin.json +1 -1
  99. package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
  100. package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
  101. package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
  102. package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
  103. package/plugins/lisa-wiki-agy/plugin.json +1 -1
  104. package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
  105. package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
  106. package/plugins/src/base/.claude-plugin/plugin.json +9 -0
  107. package/plugins/src/base/hooks/secrets-preflight.sh +72 -0
  108. package/plugins/src/base/skills/lisa-doctor/SKILL.md +108 -2
  109. package/plugins/src/base/skills/lisa-secrets-access/scripts/preflight-secrets.mjs +324 -0
  110. package/plugins/src/base/skills/lisa-secrets-access/scripts/routing-floor.mjs +153 -0
  111. package/plugins/src/base/skills/lisa-secrets-access/scripts/surfaces.mjs +55 -7
  112. package/plugins/src/base/skills/lisa-secrets-access/scripts/validate-config.mjs +89 -17
  113. package/plugins/src/base/skills/lisa-setup-remote-env/scripts/preflight-tools.mjs +242 -0
  114. package/plugins/src/base/skills/lisa-setup-remote-env/scripts/tool-floor.mjs +94 -0
  115. package/plugins/src/base/skills/lisa-setup-remote-env/scripts/verify-remote-env.mjs +14 -32
  116. package/scripts/generate-lisa-owned-hash-ledger.mjs +10 -1
  117. package/scripts/lib/per-agent-hook-filter.mjs +18 -0
  118. package/typescript/copy-contents/.husky/pre-commit +130 -21
  119. package/typescript/copy-contents/.husky/pre-push +202 -22
@@ -9,12 +9,15 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
9
9
  "all/copy-overwrite/scripts/lisa-destructive-guard.mjs": "66ade2c9cc0554c4934ed94a44563fd9d648b37cacfa9a5d31f17ac4f181e5a3",
10
10
  "all/copy-overwrite/scripts/lisa-enforcement-fallback.sh": "68e1b78d5d4471fadbe2eb575ae46221838217290123a9910d76dba0f1c34131",
11
11
  "all/copy-overwrite/scripts/lisa-floor-collisions.mjs": "2d11968f6852ab745cba939de03c6d6cb5f413975d2cfc8fc447bdd0b218e91a",
12
+ "all/copy-overwrite/scripts/lisa-gates.mjs": "cc4270e365f53c60a5eefb58a8ac8e22be184c0821fcdcc8fe67bcfc1df5e3dd",
12
13
  "all/copy-overwrite/scripts/lisa-hooks/block-direct-issue-create.sh": "8d1f04ef5c5da9db9190e22b37a435e118e39d6e7deafc5402b4593c8e9db2b2",
13
14
  "all/copy-overwrite/scripts/lisa-hooks/block-instruction-file-edits.sh": "3e709e1ec8a5843c00684bc477ad32ddab2c5fdb11f71d5aeec0c49609eaf025",
14
15
  "all/copy-overwrite/scripts/lisa-hooks/block-no-verify.sh": "83a8b8108654086afb6a6f23a8f09f9f041eb2cd4094c5531fa7ab1f75e873dc",
15
16
  "all/copy-overwrite/scripts/lisa-hooks/block-shell-json-parsing.sh": "234cb82cc9033bd04940a553d4ddc95b078e585e41777d6529d887676edc40b1",
16
17
  "all/copy-overwrite/scripts/lisa-hooks/parity-safety-net.sh": "1d4fbe135f1bb4e861d286a6512ed201d4522250dfe3f9eba6584bc5ff166a95",
17
18
  "all/copy-overwrite/scripts/lisa-hooks/sonar-secrets.sh": "18e63683064305dab1200456896cbb9384ab35ee6bc51d3789ffbba46d1b1081",
19
+ "all/copy-overwrite/scripts/lisa-reconcile-policy.mjs": "3c062d0b79961a9a93a822507e893dcdaa71d65d735557727d20464c2489d812",
20
+ "all/copy-overwrite/scripts/lisa-run-gates.mjs": "235c541534fc0eca510135ac39b9fbd196965fbeb54d42a09fbf052da1c925cd",
18
21
  "all/copy-overwrite/scripts/lisa-schema-validate.mjs": "2ace82daacdebbbb00a7eceb09fbe82cabec04330a083ca10417b2ee4e0a63eb",
19
22
  "all/copy-overwrite/scripts/lisa-work-item.mjs": "b4e8aea72219f2c568429686a2ff1acd0da75ca26f244a66f3c4334297c8cd8e",
20
23
  "all/copy-overwrite/scripts/schemas/lisa-command-envelope.v1.schema.json": "d153b7c2953a30f180e38f09e98240c63327f5196eeba9bdf545e5a1f125a879",
@@ -346,6 +349,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
346
349
  "plugins/src/base/hooks/parity-safety-net-heredoc.py": "f21b1232ac82bd0e42d2ba43c68f4cc4546334fc885ba31747881f427097ef78",
347
350
  "plugins/src/base/hooks/parity-safety-net.agy.sh": "ce9bd2b4566ad9147e4ace56434cffbbe87edb4ccbb57549ab3fd9f4c671ced4",
348
351
  "plugins/src/base/hooks/parity-safety-net.sh": "d9ea58150aa27e7f0aa9a4ef155ed446d30bdfc932d01c64e2b8ca211aa0de7b",
352
+ "plugins/src/base/hooks/secrets-preflight.sh": "cdc638627e5769770aefb061ea0ddfacc1888a8eab3a5fade6c43129a2d3ff6e",
349
353
  "plugins/src/base/hooks/setup-jira-cli.sh": "a675f6b17ce7f0d6b9fb7daeba6d2bc59bcb48ef79b034076ea73b2b1e72ee09",
350
354
  "plugins/src/base/hooks/shell-write-nudge.sh": "69839af423f8792b1e52c71097316c3264425553031627c0a2f9409a9d5becd0",
351
355
  "plugins/src/base/hooks/sonar-secrets.sh": "bf4132e49ba18e2f7e941520c299c15aeeacfd220e489f3d2eb8397f2048157b",
@@ -496,7 +500,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
496
500
  "plugins/src/base/skills/lisa-detect-tooling/SKILL.md": "4ef9b5004e13beb46cac5ae994c24d91c3715363771e3d89c32b0610408fc887",
497
501
  "plugins/src/base/skills/lisa-detect-tooling/scripts/commands.mjs": "e28bd61fdde4a336b56ae3395423026943a5816015719d31d04f0d5a0ab50eec",
498
502
  "plugins/src/base/skills/lisa-detect-tooling/scripts/detect-tooling.mjs": "9d06590e6b99cce33e5fb10bd5b9e7515318133e3635368ef47162abc123bdfa",
499
- "plugins/src/base/skills/lisa-doctor/SKILL.md": "ed46df59bfd1097acad4a5ad960811ffb37b318c94e36e5f78ea3b96c2d76136",
503
+ "plugins/src/base/skills/lisa-doctor/SKILL.md": "3202e5ce094c499c401a0fe554ea02fb75f08ae9d0d7f3fca30b1df338b3fc40",
500
504
  "plugins/src/base/skills/lisa-drive-pr-to-merge/SKILL.md": "3919c6161900916090ee315df322938efc5b53bdfabf78efe8683432cf8ae488",
501
505
  "plugins/src/base/skills/lisa-epic-triage/SKILL.md": "d02760411249bddbd396f283191fe3e82bb7b95bf9393a19a7025dc5a57c3ab7",
502
506
  "plugins/src/base/skills/lisa-evaluation-suite/SKILL.md": "96b5c2091ccd22a565935a7b0b917f67998881b81055ce3e4d518319472eac8b",
@@ -620,15 +624,17 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
620
624
  "plugins/src/base/skills/lisa-secrets-access/scripts/inspect-vault.mjs": "ce48f609f1434d75d00422ab3251f327233596ccac46d5f6437523b435dda164",
621
625
  "plugins/src/base/skills/lisa-secrets-access/scripts/materialize-secrets.mjs": "694f2660df23871d470701d1fb9fc7e24fcf7be137d9c275059ae7f7383340e9",
622
626
  "plugins/src/base/skills/lisa-secrets-access/scripts/note-format.mjs": "09bd6904bc84a5a93a32499ac94db5ec7728db68908a661698445ef5e6974f3e",
627
+ "plugins/src/base/skills/lisa-secrets-access/scripts/preflight-secrets.mjs": "f6c6f87bb309d755fb715abcf5f7f1802d3ed7375a0d052118c547c3c46d5e37",
623
628
  "plugins/src/base/skills/lisa-secrets-access/scripts/prompt-secret.mjs": "22b28bcdf49b9b0fcd1b15639e031655efacc028b74d48d57e2275f3e1557508",
624
629
  "plugins/src/base/skills/lisa-secrets-access/scripts/providers.mjs": "f295709e2d14267db89d03d7d61cec9611897d816d5b31eed4b397b9c52d54af",
625
630
  "plugins/src/base/skills/lisa-secrets-access/scripts/read-secret-note.mjs": "1471d2108058f3059e242f9c71208c99fdbc212bde32de34b798eaa9a27ffbcc",
626
631
  "plugins/src/base/skills/lisa-secrets-access/scripts/resolve-secret.mjs": "75ae143c971a7d442d513f2458ac64322d2394dec77ec806af82f39c5ed815be",
627
632
  "plugins/src/base/skills/lisa-secrets-access/scripts/rotate-secret.mjs": "546dc1c2f279cee6db56c0f55c01aabae0c316842f32d3219c5af6d638936a9c",
628
- "plugins/src/base/skills/lisa-secrets-access/scripts/surfaces.mjs": "29489edfa2265df08f3ebce80693e4579c8cc2e0e6f9e259d5fa807585f48201",
633
+ "plugins/src/base/skills/lisa-secrets-access/scripts/routing-floor.mjs": "fa1bdeda4e38bbd149f993ab0288f11b7ba6f2a3b9bf91a5918de7356e21f786",
634
+ "plugins/src/base/skills/lisa-secrets-access/scripts/surfaces.mjs": "945957bbb54d184a07703cf727844f0838810d33dd385b068934b571252934e6",
629
635
  "plugins/src/base/skills/lisa-secrets-access/scripts/sync-secret-to-ci.mjs": "4887a65b7589a47c7da3b5ed04907bfcb9773289c0dd3597c69a35ba239f14d9",
630
636
  "plugins/src/base/skills/lisa-secrets-access/scripts/tools-from-notes.mjs": "360f740cac081151491428043b04fec2f5db6f3ba36394f7378af312396d53ca",
631
- "plugins/src/base/skills/lisa-secrets-access/scripts/validate-config.mjs": "3131d94fd3b1cebaf16977d79d1e75eb10157b2afeb2f53560790b1125bfcef3",
637
+ "plugins/src/base/skills/lisa-secrets-access/scripts/validate-config.mjs": "b521aa3e3e4049d2c40f81382c28b8d81ecad9221d147d3be8c94a444ae518a5",
632
638
  "plugins/src/base/skills/lisa-security-review/SKILL.md": "5a980eaf5efc4fcce66e75521ec5b1eda143a5b0d36e7157234a705dac94e3f5",
633
639
  "plugins/src/base/skills/lisa-security-zap-scan/SKILL.md": "a5189442dbf970cc49fd089ab03c386c8a205b856e09501f6ad1966321e7e4b5",
634
640
  "plugins/src/base/skills/lisa-sentry-access/SKILL.md": "e8ea8e6e4288385202f88b04e258b6d86f304a05d6dc118ebde6e88a7e8b5f44",
@@ -649,9 +655,11 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
649
655
  "plugins/src/base/skills/lisa-setup-remote-env/assets/session-start.sh": "cb63d08b14ab7aa2d405e6770e0cf7db5d6588ae1dcb924ea6224b026fcff496",
650
656
  "plugins/src/base/skills/lisa-setup-remote-env/assets/setup.sh": "c30d98a5645f033fc1d3a723043691b9ad997ae5666df539ff6aa19c563431b2",
651
657
  "plugins/src/base/skills/lisa-setup-remote-env/scripts/environment.mjs": "3b9be11691d81a896fc779c37fb6d69e8e7222f95e23f84aa03d4e590f9d9108",
658
+ "plugins/src/base/skills/lisa-setup-remote-env/scripts/preflight-tools.mjs": "eb8ee672fbfdb0ab41dde5f17337dae59912f18eafa6f15a05fd203906d16352",
652
659
  "plugins/src/base/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs": "b4b831f8900360bbb36922edcddaef6bbe4b3730cb21cf0a365d76b914bcbe4e",
660
+ "plugins/src/base/skills/lisa-setup-remote-env/scripts/tool-floor.mjs": "8bf279a2b198c7a6d4163420ec73f871fb9c9cb70d7c87d852026bc5dbf97091",
653
661
  "plugins/src/base/skills/lisa-setup-remote-env/scripts/toolchain.mjs": "496de5aed034692fee421dc3a1fbad9f85ed9e1d0c83a1080f781a486d0274e6",
654
- "plugins/src/base/skills/lisa-setup-remote-env/scripts/verify-remote-env.mjs": "82bc2a27a0a5afb2ff413a88365c619fd7f0eaada5de3ccabf2000938f0607a4",
662
+ "plugins/src/base/skills/lisa-setup-remote-env/scripts/verify-remote-env.mjs": "362ff4a8196cbdcac3633e7d41437b0e8f966eb628924c8dba64646dd1e671c1",
655
663
  "plugins/src/base/skills/lisa-setup-sonar/SKILL.md": "b18e07ae942f75aad5730c0535840ef5f7115072f1b6cc62afac83196b28d6a3",
656
664
  "plugins/src/base/skills/lisa-setup-workstation/SKILL.md": "e57e64083c292f0402b704eeb647244be0f33ab17394a688bce57a1efd59f169",
657
665
  "plugins/src/base/skills/lisa-setup-workstation/scripts/catalogue.mjs": "eb0b8ec8a5d4fd81402dcbf40e6ccb55eb5e0c960f11aa928e45b99de43fabbc",
@@ -1066,7 +1074,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1066
1074
  "scripts/generate-codex-plugin-artifacts.mjs": "1d1a362afb8dba408741a3eed9fe583296f6bcb048608979f73f359cd609c03d",
1067
1075
  "scripts/generate-copilot-plugin-artifacts.mjs": "70d283eed7cb7c1351d13cf0497f06dec175562c5918921c404393a76f11278f",
1068
1076
  "scripts/generate-cursor-plugin-artifacts.mjs": "d8806197a723f0c2b50a8155ffc5b6f0abc30c68dc2385cb80b0dd066d061231",
1069
- "scripts/generate-lisa-owned-hash-ledger.mjs": "6227966f11514cf5d03f35cfa2f876bede9ceabc133c1ff9f4c5abc2c8cc9a3d",
1077
+ "scripts/generate-lisa-owned-hash-ledger.mjs": "4e7a6dd9325fff77faec49c1dcbf8a8cfeb987052eeed89885deb4f7b0a107bc",
1070
1078
  "scripts/generate-upstream-evidence-manifest.mjs": "de1eb5adaa6252b4abe5859933bff0ab2a52e19cc5a3fc5a41018fbb57b766d1",
1071
1079
  "scripts/github-status-check.sh": "c6a4a13ff5cf689fcbd7a6aca718f9e7d46d54ccb6687f662b055c1ca20e792f",
1072
1080
  "scripts/install-claude-plugins.sh": "0e96ebbae1e59304bb432286eccba38900a6008b80f2c53a1ec2c95801d4087c",
@@ -1078,7 +1086,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1078
1086
  "scripts/internal-opencode-skill-policy.json": "d7191650d8a12727549b67df61dbfa61e16cfb9cc31e461cd98d253ceab1612a",
1079
1087
  "scripts/lib/invoked-as-script.mjs": "4711b3e900dc85c000c287dd6a675f519fd0f5f288508ae1d5acefdab136ad4e",
1080
1088
  "scripts/lib/nest-plugin-commands.mjs": "c52b2f48edbc17edcc60ae33536549829cbc279c60c5d85d912ac6609cae9bea",
1081
- "scripts/lib/per-agent-hook-filter.mjs": "42cedb0f57c6b89fe84eac7aa7109965ba44e6da1b560b5d5ecc2f7a5459b025",
1089
+ "scripts/lib/per-agent-hook-filter.mjs": "04ea61ea616614fb545024f98ab27fb08af3f0331da06bb60943d6262e264000",
1082
1090
  "scripts/lib/reusable-workflow-contract.d.mts": "791f01b55dd7a6b5d9a5f4cb9c44167caa146c2fc3c31a2ae4c2d8a350adc2f1",
1083
1091
  "scripts/lib/reusable-workflow-contract.mjs": "134ee2a327290f066f1eb318b5ed53c711557c3e10ed462c00ff5c97cfb20863",
1084
1092
  "scripts/lisa-commit-and-pr-local.sh": "605409c3ce6ec38ad3275604291a1ceae98f7807a605654263bc14f811c03903",
@@ -1118,8 +1126,8 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
1118
1126
  "tsconfig/typescript.json": "8cf66a6535640e0a723e24bdf7a2d8e58a634c451f0754875c7880811381a914",
1119
1127
  "typescript/copy-contents/.husky/commit-msg": "3ab9b5d3c3998307be86be038b39a945f542ff425f795f305db23ceba8eb21b7",
1120
1128
  "typescript/copy-contents/.husky/post-checkout": "f3abc4528e12d3ad2bc48b236d19f105e2817595c744156a558c62ae5551ccfb",
1121
- "typescript/copy-contents/.husky/pre-commit": "3a10db0ec1eb9bf5ff42cbcded2d6412a833ee31107d43c5b4c3d32baf84d330",
1122
- "typescript/copy-contents/.husky/pre-push": "bb929b9fa108586e5591e80e5d3682d6540fc681543f1e02d7a626022bbffb15",
1129
+ "typescript/copy-contents/.husky/pre-commit": "c29bb23a8466dd7f1e04ecbd2df5faaa5eb286f261cff948b9451430c0ca716b",
1130
+ "typescript/copy-contents/.husky/pre-push": "13da67af0060558dd0a81320efe2719ff23ca3e8488000479e063f5ae9025f2c",
1123
1131
  "typescript/copy-contents/.husky/prepare-commit-msg": "58671fb61f6fcc1fc384a2d7295f16949faa58150a8213e0a39d3c70fad728b5",
1124
1132
  "typescript/copy-overwrite/.claude/hooks/worktree-create.sh": "8dbddc0297ca574d150b3e669550320bd2df6e592c083317626f53a91f36d349",
1125
1133
  "typescript/copy-overwrite/.github/GITHUB_ACTIONS.md": "c6ea804e74b62ee11ec881909fb0d6fe7088e44e9af3d832fad91a7aa5df0d8b",
@@ -1345,12 +1353,15 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
1345
1353
  "all/copy-overwrite/scripts/lisa-destructive-guard.mjs": true,
1346
1354
  "all/copy-overwrite/scripts/lisa-enforcement-fallback.sh": true,
1347
1355
  "all/copy-overwrite/scripts/lisa-floor-collisions.mjs": true,
1356
+ "all/copy-overwrite/scripts/lisa-gates.mjs": true,
1348
1357
  "all/copy-overwrite/scripts/lisa-hooks/block-direct-issue-create.sh": true,
1349
1358
  "all/copy-overwrite/scripts/lisa-hooks/block-instruction-file-edits.sh": true,
1350
1359
  "all/copy-overwrite/scripts/lisa-hooks/block-no-verify.sh": true,
1351
1360
  "all/copy-overwrite/scripts/lisa-hooks/block-shell-json-parsing.sh": true,
1352
1361
  "all/copy-overwrite/scripts/lisa-hooks/parity-safety-net.sh": true,
1353
1362
  "all/copy-overwrite/scripts/lisa-hooks/sonar-secrets.sh": true,
1363
+ "all/copy-overwrite/scripts/lisa-reconcile-policy.mjs": true,
1364
+ "all/copy-overwrite/scripts/lisa-run-gates.mjs": true,
1354
1365
  "all/copy-overwrite/scripts/lisa-schema-validate.mjs": true,
1355
1366
  "all/copy-overwrite/scripts/lisa-work-item.mjs": true,
1356
1367
  "all/copy-overwrite/scripts/schemas/lisa-command-envelope.v1.schema.json": true,
@@ -1423,6 +1434,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
1423
1434
  "commitlint.config.cjs": true,
1424
1435
  "docs/agentic-readiness-questionnaire.md": true,
1425
1436
  "docs/bdd-coverage-schema.md": true,
1437
+ "docs/design/gates-and-policy.md": true,
1426
1438
  "docs/design/reset-production-absence.md": true,
1427
1439
  "docs/design/uat-acceptance-verification-gate.md": true,
1428
1440
  "docs/kane-cli-integration.md": true,
@@ -2336,11 +2348,13 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2336
2348
  "plugins/lisa-agy/skills/lisa-secrets-access/scripts/inspect-vault.mjs": true,
2337
2349
  "plugins/lisa-agy/skills/lisa-secrets-access/scripts/materialize-secrets.mjs": true,
2338
2350
  "plugins/lisa-agy/skills/lisa-secrets-access/scripts/note-format.mjs": true,
2351
+ "plugins/lisa-agy/skills/lisa-secrets-access/scripts/preflight-secrets.mjs": true,
2339
2352
  "plugins/lisa-agy/skills/lisa-secrets-access/scripts/prompt-secret.mjs": true,
2340
2353
  "plugins/lisa-agy/skills/lisa-secrets-access/scripts/providers.mjs": true,
2341
2354
  "plugins/lisa-agy/skills/lisa-secrets-access/scripts/read-secret-note.mjs": true,
2342
2355
  "plugins/lisa-agy/skills/lisa-secrets-access/scripts/resolve-secret.mjs": true,
2343
2356
  "plugins/lisa-agy/skills/lisa-secrets-access/scripts/rotate-secret.mjs": true,
2357
+ "plugins/lisa-agy/skills/lisa-secrets-access/scripts/routing-floor.mjs": true,
2344
2358
  "plugins/lisa-agy/skills/lisa-secrets-access/scripts/surfaces.mjs": true,
2345
2359
  "plugins/lisa-agy/skills/lisa-secrets-access/scripts/sync-secret-to-ci.mjs": true,
2346
2360
  "plugins/lisa-agy/skills/lisa-secrets-access/scripts/tools-from-notes.mjs": true,
@@ -2365,7 +2379,9 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2365
2379
  "plugins/lisa-agy/skills/lisa-setup-remote-env/assets/session-start.sh": true,
2366
2380
  "plugins/lisa-agy/skills/lisa-setup-remote-env/assets/setup.sh": true,
2367
2381
  "plugins/lisa-agy/skills/lisa-setup-remote-env/scripts/environment.mjs": true,
2382
+ "plugins/lisa-agy/skills/lisa-setup-remote-env/scripts/preflight-tools.mjs": true,
2368
2383
  "plugins/lisa-agy/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs": true,
2384
+ "plugins/lisa-agy/skills/lisa-setup-remote-env/scripts/tool-floor.mjs": true,
2369
2385
  "plugins/lisa-agy/skills/lisa-setup-remote-env/scripts/toolchain.mjs": true,
2370
2386
  "plugins/lisa-agy/skills/lisa-setup-remote-env/scripts/verify-remote-env.mjs": true,
2371
2387
  "plugins/lisa-agy/skills/lisa-setup-sonar/SKILL.md": true,
@@ -2529,6 +2545,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2529
2545
  "plugins/lisa-copilot/hooks/install-pkgs.sh": true,
2530
2546
  "plugins/lisa-copilot/hooks/parity-safety-net-heredoc.py": true,
2531
2547
  "plugins/lisa-copilot/hooks/parity-safety-net.sh": true,
2548
+ "plugins/lisa-copilot/hooks/secrets-preflight.sh": true,
2532
2549
  "plugins/lisa-copilot/hooks/setup-jira-cli.sh": true,
2533
2550
  "plugins/lisa-copilot/hooks/shell-write-nudge.sh": true,
2534
2551
  "plugins/lisa-copilot/hooks/sonar-secrets.sh": true,
@@ -2800,11 +2817,13 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2800
2817
  "plugins/lisa-copilot/skills/lisa-secrets-access/scripts/inspect-vault.mjs": true,
2801
2818
  "plugins/lisa-copilot/skills/lisa-secrets-access/scripts/materialize-secrets.mjs": true,
2802
2819
  "plugins/lisa-copilot/skills/lisa-secrets-access/scripts/note-format.mjs": true,
2820
+ "plugins/lisa-copilot/skills/lisa-secrets-access/scripts/preflight-secrets.mjs": true,
2803
2821
  "plugins/lisa-copilot/skills/lisa-secrets-access/scripts/prompt-secret.mjs": true,
2804
2822
  "plugins/lisa-copilot/skills/lisa-secrets-access/scripts/providers.mjs": true,
2805
2823
  "plugins/lisa-copilot/skills/lisa-secrets-access/scripts/read-secret-note.mjs": true,
2806
2824
  "plugins/lisa-copilot/skills/lisa-secrets-access/scripts/resolve-secret.mjs": true,
2807
2825
  "plugins/lisa-copilot/skills/lisa-secrets-access/scripts/rotate-secret.mjs": true,
2826
+ "plugins/lisa-copilot/skills/lisa-secrets-access/scripts/routing-floor.mjs": true,
2808
2827
  "plugins/lisa-copilot/skills/lisa-secrets-access/scripts/surfaces.mjs": true,
2809
2828
  "plugins/lisa-copilot/skills/lisa-secrets-access/scripts/sync-secret-to-ci.mjs": true,
2810
2829
  "plugins/lisa-copilot/skills/lisa-secrets-access/scripts/tools-from-notes.mjs": true,
@@ -2829,7 +2848,9 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2829
2848
  "plugins/lisa-copilot/skills/lisa-setup-remote-env/assets/session-start.sh": true,
2830
2849
  "plugins/lisa-copilot/skills/lisa-setup-remote-env/assets/setup.sh": true,
2831
2850
  "plugins/lisa-copilot/skills/lisa-setup-remote-env/scripts/environment.mjs": true,
2851
+ "plugins/lisa-copilot/skills/lisa-setup-remote-env/scripts/preflight-tools.mjs": true,
2832
2852
  "plugins/lisa-copilot/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs": true,
2853
+ "plugins/lisa-copilot/skills/lisa-setup-remote-env/scripts/tool-floor.mjs": true,
2833
2854
  "plugins/lisa-copilot/skills/lisa-setup-remote-env/scripts/toolchain.mjs": true,
2834
2855
  "plugins/lisa-copilot/skills/lisa-setup-remote-env/scripts/verify-remote-env.mjs": true,
2835
2856
  "plugins/lisa-copilot/skills/lisa-setup-sonar/SKILL.md": true,
@@ -2978,6 +2999,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2978
2999
  "plugins/lisa-cursor/hooks/install-pkgs.sh": true,
2979
3000
  "plugins/lisa-cursor/hooks/parity-safety-net-heredoc.py": true,
2980
3001
  "plugins/lisa-cursor/hooks/parity-safety-net.sh": true,
3002
+ "plugins/lisa-cursor/hooks/secrets-preflight.sh": true,
2981
3003
  "plugins/lisa-cursor/hooks/setup-jira-cli.sh": true,
2982
3004
  "plugins/lisa-cursor/hooks/shell-write-nudge.sh": true,
2983
3005
  "plugins/lisa-cursor/hooks/sonar-secrets.sh": true,
@@ -3250,11 +3272,13 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
3250
3272
  "plugins/lisa-cursor/skills/lisa-secrets-access/scripts/inspect-vault.mjs": true,
3251
3273
  "plugins/lisa-cursor/skills/lisa-secrets-access/scripts/materialize-secrets.mjs": true,
3252
3274
  "plugins/lisa-cursor/skills/lisa-secrets-access/scripts/note-format.mjs": true,
3275
+ "plugins/lisa-cursor/skills/lisa-secrets-access/scripts/preflight-secrets.mjs": true,
3253
3276
  "plugins/lisa-cursor/skills/lisa-secrets-access/scripts/prompt-secret.mjs": true,
3254
3277
  "plugins/lisa-cursor/skills/lisa-secrets-access/scripts/providers.mjs": true,
3255
3278
  "plugins/lisa-cursor/skills/lisa-secrets-access/scripts/read-secret-note.mjs": true,
3256
3279
  "plugins/lisa-cursor/skills/lisa-secrets-access/scripts/resolve-secret.mjs": true,
3257
3280
  "plugins/lisa-cursor/skills/lisa-secrets-access/scripts/rotate-secret.mjs": true,
3281
+ "plugins/lisa-cursor/skills/lisa-secrets-access/scripts/routing-floor.mjs": true,
3258
3282
  "plugins/lisa-cursor/skills/lisa-secrets-access/scripts/surfaces.mjs": true,
3259
3283
  "plugins/lisa-cursor/skills/lisa-secrets-access/scripts/sync-secret-to-ci.mjs": true,
3260
3284
  "plugins/lisa-cursor/skills/lisa-secrets-access/scripts/tools-from-notes.mjs": true,
@@ -3279,7 +3303,9 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
3279
3303
  "plugins/lisa-cursor/skills/lisa-setup-remote-env/assets/session-start.sh": true,
3280
3304
  "plugins/lisa-cursor/skills/lisa-setup-remote-env/assets/setup.sh": true,
3281
3305
  "plugins/lisa-cursor/skills/lisa-setup-remote-env/scripts/environment.mjs": true,
3306
+ "plugins/lisa-cursor/skills/lisa-setup-remote-env/scripts/preflight-tools.mjs": true,
3282
3307
  "plugins/lisa-cursor/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs": true,
3308
+ "plugins/lisa-cursor/skills/lisa-setup-remote-env/scripts/tool-floor.mjs": true,
3283
3309
  "plugins/lisa-cursor/skills/lisa-setup-remote-env/scripts/toolchain.mjs": true,
3284
3310
  "plugins/lisa-cursor/skills/lisa-setup-remote-env/scripts/verify-remote-env.mjs": true,
3285
3311
  "plugins/lisa-cursor/skills/lisa-setup-sonar/SKILL.md": true,
@@ -5287,11 +5313,13 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
5287
5313
  "plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/inspect-vault.mjs": true,
5288
5314
  "plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/materialize-secrets.mjs": true,
5289
5315
  "plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/note-format.mjs": true,
5316
+ "plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/preflight-secrets.mjs": true,
5290
5317
  "plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/prompt-secret.mjs": true,
5291
5318
  "plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/providers.mjs": true,
5292
5319
  "plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/read-secret-note.mjs": true,
5293
5320
  "plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/resolve-secret.mjs": true,
5294
5321
  "plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/rotate-secret.mjs": true,
5322
+ "plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/routing-floor.mjs": true,
5295
5323
  "plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/surfaces.mjs": true,
5296
5324
  "plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/sync-secret-to-ci.mjs": true,
5297
5325
  "plugins/lisa/.codex-plugin/skills/lisa-secrets-access/scripts/tools-from-notes.mjs": true,
@@ -5331,7 +5359,9 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
5331
5359
  "plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/assets/session-start.sh": true,
5332
5360
  "plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/assets/setup.sh": true,
5333
5361
  "plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/scripts/environment.mjs": true,
5362
+ "plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/scripts/preflight-tools.mjs": true,
5334
5363
  "plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs": true,
5364
+ "plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/scripts/tool-floor.mjs": true,
5335
5365
  "plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/scripts/toolchain.mjs": true,
5336
5366
  "plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/scripts/verify-remote-env.mjs": true,
5337
5367
  "plugins/lisa/.codex-plugin/skills/lisa-setup-sonar/SKILL.md": true,
@@ -5520,6 +5550,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
5520
5550
  "plugins/lisa/hooks/parity-safety-net-heredoc.py": true,
5521
5551
  "plugins/lisa/hooks/parity-safety-net.agy.sh": true,
5522
5552
  "plugins/lisa/hooks/parity-safety-net.sh": true,
5553
+ "plugins/lisa/hooks/secrets-preflight.sh": true,
5523
5554
  "plugins/lisa/hooks/setup-jira-cli.sh": true,
5524
5555
  "plugins/lisa/hooks/shell-write-nudge.sh": true,
5525
5556
  "plugins/lisa/hooks/sonar-secrets.sh": true,
@@ -5918,11 +5949,13 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
5918
5949
  "plugins/lisa/skills/lisa-secrets-access/scripts/inspect-vault.mjs": true,
5919
5950
  "plugins/lisa/skills/lisa-secrets-access/scripts/materialize-secrets.mjs": true,
5920
5951
  "plugins/lisa/skills/lisa-secrets-access/scripts/note-format.mjs": true,
5952
+ "plugins/lisa/skills/lisa-secrets-access/scripts/preflight-secrets.mjs": true,
5921
5953
  "plugins/lisa/skills/lisa-secrets-access/scripts/prompt-secret.mjs": true,
5922
5954
  "plugins/lisa/skills/lisa-secrets-access/scripts/providers.mjs": true,
5923
5955
  "plugins/lisa/skills/lisa-secrets-access/scripts/read-secret-note.mjs": true,
5924
5956
  "plugins/lisa/skills/lisa-secrets-access/scripts/resolve-secret.mjs": true,
5925
5957
  "plugins/lisa/skills/lisa-secrets-access/scripts/rotate-secret.mjs": true,
5958
+ "plugins/lisa/skills/lisa-secrets-access/scripts/routing-floor.mjs": true,
5926
5959
  "plugins/lisa/skills/lisa-secrets-access/scripts/surfaces.mjs": true,
5927
5960
  "plugins/lisa/skills/lisa-secrets-access/scripts/sync-secret-to-ci.mjs": true,
5928
5961
  "plugins/lisa/skills/lisa-secrets-access/scripts/tools-from-notes.mjs": true,
@@ -5962,7 +5995,9 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
5962
5995
  "plugins/lisa/skills/lisa-setup-remote-env/assets/session-start.sh": true,
5963
5996
  "plugins/lisa/skills/lisa-setup-remote-env/assets/setup.sh": true,
5964
5997
  "plugins/lisa/skills/lisa-setup-remote-env/scripts/environment.mjs": true,
5998
+ "plugins/lisa/skills/lisa-setup-remote-env/scripts/preflight-tools.mjs": true,
5965
5999
  "plugins/lisa/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs": true,
6000
+ "plugins/lisa/skills/lisa-setup-remote-env/scripts/tool-floor.mjs": true,
5966
6001
  "plugins/lisa/skills/lisa-setup-remote-env/scripts/toolchain.mjs": true,
5967
6002
  "plugins/lisa/skills/lisa-setup-remote-env/scripts/verify-remote-env.mjs": true,
5968
6003
  "plugins/lisa/skills/lisa-setup-sonar/SKILL.md": true,
@@ -6151,6 +6186,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
6151
6186
  "plugins/src/base/hooks/parity-safety-net-heredoc.py": true,
6152
6187
  "plugins/src/base/hooks/parity-safety-net.agy.sh": true,
6153
6188
  "plugins/src/base/hooks/parity-safety-net.sh": true,
6189
+ "plugins/src/base/hooks/secrets-preflight.sh": true,
6154
6190
  "plugins/src/base/hooks/setup-jira-cli.sh": true,
6155
6191
  "plugins/src/base/hooks/shell-write-nudge.sh": true,
6156
6192
  "plugins/src/base/hooks/sonar-secrets.sh": true,
@@ -6425,11 +6461,13 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
6425
6461
  "plugins/src/base/skills/lisa-secrets-access/scripts/inspect-vault.mjs": true,
6426
6462
  "plugins/src/base/skills/lisa-secrets-access/scripts/materialize-secrets.mjs": true,
6427
6463
  "plugins/src/base/skills/lisa-secrets-access/scripts/note-format.mjs": true,
6464
+ "plugins/src/base/skills/lisa-secrets-access/scripts/preflight-secrets.mjs": true,
6428
6465
  "plugins/src/base/skills/lisa-secrets-access/scripts/prompt-secret.mjs": true,
6429
6466
  "plugins/src/base/skills/lisa-secrets-access/scripts/providers.mjs": true,
6430
6467
  "plugins/src/base/skills/lisa-secrets-access/scripts/read-secret-note.mjs": true,
6431
6468
  "plugins/src/base/skills/lisa-secrets-access/scripts/resolve-secret.mjs": true,
6432
6469
  "plugins/src/base/skills/lisa-secrets-access/scripts/rotate-secret.mjs": true,
6470
+ "plugins/src/base/skills/lisa-secrets-access/scripts/routing-floor.mjs": true,
6433
6471
  "plugins/src/base/skills/lisa-secrets-access/scripts/surfaces.mjs": true,
6434
6472
  "plugins/src/base/skills/lisa-secrets-access/scripts/sync-secret-to-ci.mjs": true,
6435
6473
  "plugins/src/base/skills/lisa-secrets-access/scripts/tools-from-notes.mjs": true,
@@ -6454,7 +6492,9 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
6454
6492
  "plugins/src/base/skills/lisa-setup-remote-env/assets/session-start.sh": true,
6455
6493
  "plugins/src/base/skills/lisa-setup-remote-env/assets/setup.sh": true,
6456
6494
  "plugins/src/base/skills/lisa-setup-remote-env/scripts/environment.mjs": true,
6495
+ "plugins/src/base/skills/lisa-setup-remote-env/scripts/preflight-tools.mjs": true,
6457
6496
  "plugins/src/base/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs": true,
6497
+ "plugins/src/base/skills/lisa-setup-remote-env/scripts/tool-floor.mjs": true,
6458
6498
  "plugins/src/base/skills/lisa-setup-remote-env/scripts/toolchain.mjs": true,
6459
6499
  "plugins/src/base/skills/lisa-setup-remote-env/scripts/verify-remote-env.mjs": true,
6460
6500
  "plugins/src/base/skills/lisa-setup-sonar/SKILL.md": true,
@@ -7436,6 +7476,8 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7436
7476
  "tests/integration/nightly-e2e-health-workflow.test.ts": true,
7437
7477
  "tests/integration/nightly-e2e-report-workflow.test.ts": true,
7438
7478
  "tests/integration/oxlint-worktree-resolution.test.ts": true,
7479
+ "tests/integration/quality-gate-facade-fixture.ts": true,
7480
+ "tests/integration/quality-gate-facade.test.ts": true,
7439
7481
  "tests/integration/quality-workflow.test.ts": true,
7440
7482
  "tests/integration/release-changelog-entry.test.ts": true,
7441
7483
  "tests/integration/release-changelog-push-recovery.test.ts": true,
@@ -7694,6 +7736,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7694
7736
  "tests/unit/hooks/enforcement-fallback-status-aggregation.test.ts": true,
7695
7737
  "tests/unit/hooks/enforcement-fallback.test.ts": true,
7696
7738
  "tests/unit/hooks/enforcement-gates-e2e.test.ts": true,
7739
+ "tests/unit/hooks/gate-coverage-handover.test.ts": true,
7697
7740
  "tests/unit/hooks/host-enforcement-fallback.test.ts": true,
7698
7741
  "tests/unit/hooks/inject-rules.test.ts": true,
7699
7742
  "tests/unit/hooks/install-pkgs-worktree-node-modules.test.ts": true,
@@ -7707,7 +7750,9 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7707
7750
  "tests/unit/hooks/parity-safety-net-line-continuation.test.ts": true,
7708
7751
  "tests/unit/hooks/parity-safety-net.test.ts": true,
7709
7752
  "tests/unit/hooks/post-checkout.test.ts": true,
7753
+ "tests/unit/hooks/pre-push-audit-transport-parity.test.ts": true,
7710
7754
  "tests/unit/hooks/pre-push-git-environment.test.ts": true,
7755
+ "tests/unit/hooks/secrets-preflight-hook.test.ts": true,
7711
7756
  "tests/unit/hooks/sonar-secrets.test.ts": true,
7712
7757
  "tests/unit/hooks/support/direct-issue-create.ts": true,
7713
7758
  "tests/unit/hooks/track-plan-sessions.test.ts": true,
@@ -7787,10 +7832,23 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7787
7832
  "tests/unit/scripts/github-governance.test.ts": true,
7788
7833
  "tests/unit/scripts/install-claude-plugins-self.test.ts": true,
7789
7834
  "tests/unit/scripts/invoked-as-script.test.ts": true,
7835
+ "tests/unit/scripts/lisa-gates-evidence.test.ts": true,
7836
+ "tests/unit/scripts/lisa-gates-fixtures.ts": true,
7837
+ "tests/unit/scripts/lisa-gates-resolution.test.ts": true,
7838
+ "tests/unit/scripts/lisa-gates-self-config.test.ts": true,
7839
+ "tests/unit/scripts/lisa-gates.test.ts": true,
7790
7840
  "tests/unit/scripts/lisa-github-environments.test.ts": true,
7791
7841
  "tests/unit/scripts/lisa-github-repo-settings.test.ts": true,
7792
7842
  "tests/unit/scripts/lisa-github-rulesets.test.ts": true,
7793
7843
  "tests/unit/scripts/lisa-owned-hash-ledger.test.ts": true,
7844
+ "tests/unit/scripts/lisa-reconcile-policy-fixtures.ts": true,
7845
+ "tests/unit/scripts/lisa-reconcile-policy-units.test.ts": true,
7846
+ "tests/unit/scripts/lisa-reconcile-policy-verdicts.test.ts": true,
7847
+ "tests/unit/scripts/lisa-reconcile-policy.test.ts": true,
7848
+ "tests/unit/scripts/lisa-run-gates-conditional-floor.test.ts": true,
7849
+ "tests/unit/scripts/lisa-run-gates-fixtures.ts": true,
7850
+ "tests/unit/scripts/lisa-run-gates-floor.test.ts": true,
7851
+ "tests/unit/scripts/lisa-run-gates.test.ts": true,
7794
7852
  "tests/unit/scripts/lisa-work-item.test.ts": true,
7795
7853
  "tests/unit/scripts/maestro-flake-classification.test.ts": true,
7796
7854
  "tests/unit/scripts/maestro-flake-helpers.ts": true,
@@ -7849,6 +7907,9 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7849
7907
  "tests/unit/secrets/neutral-tenant-var.test.ts": true,
7850
7908
  "tests/unit/secrets/note-enforcement-parity.test.ts": true,
7851
7909
  "tests/unit/secrets/note-format.test.ts": true,
7910
+ "tests/unit/secrets/preflight-hardening.test.ts": true,
7911
+ "tests/unit/secrets/preflight-secrets.test.ts": true,
7912
+ "tests/unit/secrets/preflight-tools.test.ts": true,
7852
7913
  "tests/unit/secrets/profile-sourcing.test.ts": true,
7853
7914
  "tests/unit/secrets/prompt-secret.test.ts": true,
7854
7915
  "tests/unit/secrets/propagate-declaration.test.ts": true,
@@ -7863,7 +7924,9 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7863
7924
  "tests/unit/secrets/remote-env-setup-field.test.ts": true,
7864
7925
  "tests/unit/secrets/remote-env-skill-resolution.test.ts": true,
7865
7926
  "tests/unit/secrets/remote-env-toolchain.test.ts": true,
7927
+ "tests/unit/secrets/require-surface-scope.test.ts": true,
7866
7928
  "tests/unit/secrets/rotation-view.test.ts": true,
7929
+ "tests/unit/secrets/routing-floor.test.ts": true,
7867
7930
  "tests/unit/secrets/secrets-access-contract.test.ts": true,
7868
7931
  "tests/unit/secrets/setup-field-budget.test.ts": true,
7869
7932
  "tests/unit/secrets/setup-field-first-failure.test.ts": true,
@@ -7872,6 +7935,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7872
7935
  "tests/unit/secrets/setup-field-notes-tools.test.ts": true,
7873
7936
  "tests/unit/secrets/setup-field-path.test.ts": true,
7874
7937
  "tests/unit/secrets/setup-secrets-nonfatal.test.ts": true,
7938
+ "tests/unit/secrets/tool-floor.test.ts": true,
7875
7939
  "tests/unit/secrets/toolchain-platforms.test.ts": true,
7876
7940
  "tests/unit/secrets/toolchain-release-binary.test.ts": true,
7877
7941
  "tests/unit/secrets/toolchain-release-tree.test.ts": true,