@codyswann/lisa 2.324.0 → 2.325.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 (110) hide show
  1. package/all/copy-overwrite/scripts/lisa-enforcement-fallback.sh +71 -0
  2. package/all/copy-overwrite/scripts/lisa-hooks/block-no-verify.sh +102 -0
  3. package/all/copy-overwrite/scripts/lisa-hooks/block-shell-json-parsing.sh +220 -0
  4. package/all/copy-overwrite/scripts/lisa-hooks/parity-safety-net.sh +562 -0
  5. package/all/merge/.claude/settings.json +19 -4
  6. package/dist/core/upstream-evidence-manifest.d.ts.map +1 -1
  7. package/dist/core/upstream-evidence-manifest.js +42 -9
  8. package/dist/core/upstream-evidence-manifest.js.map +1 -1
  9. package/dist/standards/git-state.d.ts.map +1 -1
  10. package/dist/standards/git-state.js +10 -1
  11. package/dist/standards/git-state.js.map +1 -1
  12. package/package.json +1 -1
  13. package/plugins/lisa/.claude-plugin/plugin.json +1 -1
  14. package/plugins/lisa/.codex-plugin/plugin.json +1 -1
  15. package/plugins/lisa/.codex-plugin/skills/lisa-detect-tooling/SKILL.md +60 -0
  16. package/plugins/lisa/.codex-plugin/skills/lisa-detect-tooling/agents/openai.yaml +4 -0
  17. package/plugins/lisa/.codex-plugin/skills/lisa-detect-tooling/scripts/detect-tooling.mjs +311 -0
  18. package/plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/SKILL.md +18 -2
  19. package/plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +74 -3
  20. package/plugins/lisa/.codex-plugin/skills/lisa-setup-remote-env/scripts/toolchain.mjs +50 -3
  21. package/plugins/lisa/commands/detect-tooling.md +7 -0
  22. package/plugins/lisa/rules/eager/tracked-work.md +1 -1
  23. package/plugins/lisa/rules/reference/tracked-work.md +1 -1
  24. package/plugins/lisa/skills/lisa-detect-tooling/SKILL.md +60 -0
  25. package/plugins/lisa/skills/lisa-detect-tooling/agents/openai.yaml +4 -0
  26. package/plugins/lisa/skills/lisa-detect-tooling/scripts/detect-tooling.mjs +311 -0
  27. package/plugins/lisa/skills/lisa-setup-remote-env/SKILL.md +18 -2
  28. package/plugins/lisa/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +74 -3
  29. package/plugins/lisa/skills/lisa-setup-remote-env/scripts/toolchain.mjs +50 -3
  30. package/plugins/lisa-agy/commands/lisa/detect-tooling.md +7 -0
  31. package/plugins/lisa-agy/plugin.json +1 -1
  32. package/plugins/lisa-agy/skills/lisa-detect-tooling/SKILL.md +60 -0
  33. package/plugins/lisa-agy/skills/lisa-detect-tooling/scripts/detect-tooling.mjs +311 -0
  34. package/plugins/lisa-agy/skills/lisa-setup-remote-env/SKILL.md +18 -2
  35. package/plugins/lisa-agy/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +74 -3
  36. package/plugins/lisa-agy/skills/lisa-setup-remote-env/scripts/toolchain.mjs +50 -3
  37. package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
  38. package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
  39. package/plugins/lisa-cdk-agy/plugin.json +1 -1
  40. package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
  41. package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
  42. package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
  43. package/plugins/lisa-copilot/commands/lisa/detect-tooling.md +7 -0
  44. package/plugins/lisa-copilot/rules/eager/tracked-work.md +1 -1
  45. package/plugins/lisa-copilot/rules/reference/tracked-work.md +1 -1
  46. package/plugins/lisa-copilot/skills/lisa-detect-tooling/SKILL.md +60 -0
  47. package/plugins/lisa-copilot/skills/lisa-detect-tooling/scripts/detect-tooling.mjs +311 -0
  48. package/plugins/lisa-copilot/skills/lisa-setup-remote-env/SKILL.md +18 -2
  49. package/plugins/lisa-copilot/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +74 -3
  50. package/plugins/lisa-copilot/skills/lisa-setup-remote-env/scripts/toolchain.mjs +50 -3
  51. package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
  52. package/plugins/lisa-cursor/commands/lisa/detect-tooling.md +7 -0
  53. package/plugins/lisa-cursor/rules/tracked-work-reference.mdc +1 -1
  54. package/plugins/lisa-cursor/rules/tracked-work.mdc +1 -1
  55. package/plugins/lisa-cursor/skills/lisa-detect-tooling/SKILL.md +60 -0
  56. package/plugins/lisa-cursor/skills/lisa-detect-tooling/scripts/detect-tooling.mjs +311 -0
  57. package/plugins/lisa-cursor/skills/lisa-setup-remote-env/SKILL.md +18 -2
  58. package/plugins/lisa-cursor/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +74 -3
  59. package/plugins/lisa-cursor/skills/lisa-setup-remote-env/scripts/toolchain.mjs +50 -3
  60. package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
  61. package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
  62. package/plugins/lisa-expo-agy/plugin.json +1 -1
  63. package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
  64. package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
  65. package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
  66. package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
  67. package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
  68. package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
  69. package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
  70. package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
  71. package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
  72. package/plugins/lisa-nestjs-agy/plugin.json +1 -1
  73. package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
  74. package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
  75. package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
  76. package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
  77. package/plugins/lisa-openclaw-agy/plugin.json +1 -1
  78. package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
  79. package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
  80. package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
  81. package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
  82. package/plugins/lisa-phaser-agy/plugin.json +1 -1
  83. package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
  84. package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
  85. package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
  86. package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
  87. package/plugins/lisa-rails-agy/plugin.json +1 -1
  88. package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
  89. package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
  90. package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
  91. package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
  92. package/plugins/lisa-typescript-agy/plugin.json +1 -1
  93. package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
  94. package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
  95. package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
  96. package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
  97. package/plugins/lisa-wiki-agy/plugin.json +1 -1
  98. package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
  99. package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
  100. package/plugins/src/base/commands/detect-tooling.md +7 -0
  101. package/plugins/src/base/rules/eager/tracked-work.md +1 -1
  102. package/plugins/src/base/rules/reference/tracked-work.md +1 -1
  103. package/plugins/src/base/skills/lisa-detect-tooling/SKILL.md +60 -0
  104. package/plugins/src/base/skills/lisa-detect-tooling/scripts/detect-tooling.mjs +311 -0
  105. package/plugins/src/base/skills/lisa-setup-remote-env/SKILL.md +18 -2
  106. package/plugins/src/base/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs +74 -3
  107. package/plugins/src/base/skills/lisa-setup-remote-env/scripts/toolchain.mjs +50 -3
  108. package/scripts/build-plugins.sh +32 -0
  109. package/scripts/generate-upstream-evidence-manifest.mjs +50 -11
  110. package/scripts/lisa-enforcement-fallback.sh +16 -2
@@ -3,6 +3,10 @@
3
3
  export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
4
4
  "all/copy-contents/.gitattributes": "9d3831007e681186a3673e1037ef3fc82980cab2fc04e27c0868e562912c9e9f",
5
5
  "all/copy-contents/gitignore": "2dbf7fd2f2020fc7824c432342002d9ca3ebb57b2872e761b14e942b23479a11",
6
+ "all/copy-overwrite/scripts/lisa-enforcement-fallback.sh": "9cab71562d01421d57c6719318a4d03a6249a45c1aea434db3ff26e3065eeb66",
7
+ "all/copy-overwrite/scripts/lisa-hooks/block-no-verify.sh": "aa95a84f9f9224914947a09b858535aa8bd052199ff64cb53768cf78fb69b687",
8
+ "all/copy-overwrite/scripts/lisa-hooks/block-shell-json-parsing.sh": "3b5f074f3ab5708030af507eea962389f3b067c5dbdc76580bd9e44d3ac6c603",
9
+ "all/copy-overwrite/scripts/lisa-hooks/parity-safety-net.sh": "062c69eea85157f1e941ec3626d8912aa9f182af6ccdbe19687588a6074db5ce",
6
10
  "all/copy-overwrite/scripts/lisa-work-item.mjs": "6a8be8577242588f14ab52b25b2a22b6def53aefa9513b4d3d7c49f4d8027079",
7
11
  "all/create-only/.claude/rules/PROJECT_RULES.md": "6e1c7923ad2a15356babc60c97e7f97be728d790af285b6a7cd7d1b4d39cd97f",
8
12
  "all/create-only/.lisaignore": "3c9827e7e98daa46510b5357cd6dd9406da1821e64cc46d2eea9f311cd6d06b9",
@@ -12,7 +16,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
12
16
  "all/github-rulesets/base.json": "58b9606f185cdca8b17218829aac333b7d8c08f0f2b4f86d7e360f7be1de4787",
13
17
  "all/github-rulesets/prevent-delete.json": "e4fb26390a8bfee34b27be5b369f376a1a9a00b797fd8d3ce51cb71facb826a4",
14
18
  "all/github-rulesets/protect-tags.json": "387f824e3ea58a803223e42e08326504a39e6a7a0c650a0bbfdfb4653854b722",
15
- "all/merge/.claude/settings.json": "1d4a4d33d4a5f26a33560df21f9ad9ba97511c15a1c952dd2fe941679a0f1f9e",
19
+ "all/merge/.claude/settings.json": "4d41a745030e5f33eb4d4fe1f1b12268680f104ea55a30c4d9f55a6e22ad6fca",
16
20
  "cdk/copy-overwrite/.github/workflows/.keep": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
17
21
  "cdk/copy-overwrite/eslint.cdk.ts": "074fe7a638ed95210339a9215abf75fa52bb10e678f2fd58523ff8a9d32ea4b6",
18
22
  "cdk/copy-overwrite/eslint.config.ts": "f1917ade3f1170ac8027110b44499732b9d9d3a2d42f256e37cd09930970298c",
@@ -224,6 +228,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
224
228
  "plugins/src/base/commands/cross-pollinate.md": "b4c0fbbe77dca354b1731b854e6840f7100922c127664ce09bf26207eb77ae24",
225
229
  "plugins/src/base/commands/debrief.md": "b254a4264b25c6436a39035e72c5d53bdc219a6d612be5ee44d054d5f0bac205",
226
230
  "plugins/src/base/commands/debrief/apply.md": "2c31e0eb000c742be4dd8d5ee0ee64b1f0736389bcaa4202fc05c6b31602aab8",
231
+ "plugins/src/base/commands/detect-tooling.md": "3e0b2b71b3049b76743822558ecf69102289bdb4578f7c42036c80df88afeb2b",
227
232
  "plugins/src/base/commands/doctor.md": "308132cc6b34fbc33d01b0cb1a529b413efedc1c80579c61f42801e49eaa0449",
228
233
  "plugins/src/base/commands/exploratory-qa.md": "0bd6d11be04ef9a509cc50d4de7eb939683b04330c561944556ae29d84dc9836",
229
234
  "plugins/src/base/commands/fix/linter-error.md": "34da358b1b090b37d5312763fe4437a616e9fed75e4b8d59eeb7ca8d62d3f40e",
@@ -339,7 +344,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
339
344
  "plugins/src/base/rules/eager/settled-decisions.md": "f5339c81b8d29f628830e6147314cbb941b9d9e6d87c3834d8fe7adc4b46ef4c",
340
345
  "plugins/src/base/rules/eager/stale-state-claims.md": "faf5057f5910237b8d5048dbcccb73e0cd03762a8eefbeae43b5d0153104a85a",
341
346
  "plugins/src/base/rules/eager/tool-access-gate.md": "a5413a43ec353f768586e0a1cde3836db025cb5d8b80821020602995e71aa296",
342
- "plugins/src/base/rules/eager/tracked-work.md": "ab784db4efee993e28dd2b9c8696f19ee049222890b0cae977bff5435f698aff",
347
+ "plugins/src/base/rules/eager/tracked-work.md": "ae5177a3ce321007dfc03f44974f25110aed578bcdf2283d5c5f12c838f82673",
343
348
  "plugins/src/base/rules/eager/upstream-to-lisa.md": "eb8b37e789423dba78e3a77951db087c4d3f56a88478b63107ec6b9ddbf23b13",
344
349
  "plugins/src/base/rules/eager/usage-accounting.md": "b93fa782d61911579b25363e465bb1f4e9b7e4edb54465a346d52f74dffe5a97",
345
350
  "plugins/src/base/rules/eager/verification.md": "43f154f65e8ee1fa4fb33039f154855b569ab338902c86a8812e66715895cf7b",
@@ -377,7 +382,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
377
382
  "plugins/src/base/rules/reference/settled-decisions.md": "6c84f309a1f765eba1648d6ace836387bd96b924f245c16cf3629f501ef6bb18",
378
383
  "plugins/src/base/rules/reference/stale-state-claims.md": "6329e1a7629f9a12f10454c767842aecee4964df8b7bb4aebda9dde3c0959c2a",
379
384
  "plugins/src/base/rules/reference/tool-access-gate.md": "70fcd6cd92dc003a40886b1bef02540e6401f5b70ba97308d42bbbddc0206eab",
380
- "plugins/src/base/rules/reference/tracked-work.md": "cc956e7a61d8f65bfc4e0e3bc4c3da1b5a9e541683aa17dc1850979d04abac24",
385
+ "plugins/src/base/rules/reference/tracked-work.md": "85fb31a5d7aad44d04592bb7feea7ad02808eeeb6950639ad452fcec1bc3c86b",
381
386
  "plugins/src/base/rules/reference/upstream-to-lisa.md": "dcf07f8eba66aaf1d132bfaeff73cbf7576279822893235a3c3f8cbc4a4a3323",
382
387
  "plugins/src/base/rules/reference/usage-accounting.md": "d2a24f8f176dbd900beb6e396fc669008b0be0c9033fac5c1c1ecc19002bd7c2",
383
388
  "plugins/src/base/rules/reference/verification.md": "0a4424d79fae5ce028d08b98523a01f51cbe07c1bcc0a094048d7a25adc075d8",
@@ -419,6 +424,8 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
419
424
  "plugins/src/base/skills/lisa-debrief-apply/SKILL.md": "90c5f01994bb0f8e71947e8a2f765ccf9a6aa3da47b8d7b8e2022150ef89c2b2",
420
425
  "plugins/src/base/skills/lisa-debrief/SKILL.md": "47e4cda36b07994ff47ab15fb04a17dd6b0c310ad804f9cae9d69637edaaa72a",
421
426
  "plugins/src/base/skills/lisa-delivery-effectiveness/SKILL.md": "21bc55fa0e86a9694bd22269fd089dbfae0c54c199262f46a4955447acea0f35",
427
+ "plugins/src/base/skills/lisa-detect-tooling/SKILL.md": "e29b3b8ebc256468bb67e5d10e2ae3cb4eda9ba20dfd2e065201b00864134734",
428
+ "plugins/src/base/skills/lisa-detect-tooling/scripts/detect-tooling.mjs": "043c3f59d6a7a21a3ab4fce8ae8dc88e8650c19c5a57bba40f567c5257684747",
422
429
  "plugins/src/base/skills/lisa-doctor/SKILL.md": "fb41a1e63c5332d47a46e715aff52551f3df867033b5e4f37dfaeee30019b891",
423
430
  "plugins/src/base/skills/lisa-drive-pr-to-merge/SKILL.md": "c78ae2ba32c830d0b2cd7d24de91adf99e2b3cef4c7cab1c417580d86f41351f",
424
431
  "plugins/src/base/skills/lisa-epic-triage/SKILL.md": "d02760411249bddbd396f283191fe3e82bb7b95bf9393a19a7025dc5a57c3ab7",
@@ -559,11 +566,11 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
559
566
  "plugins/src/base/skills/lisa-setup-linear/SKILL.md": "ec76f832a6df6f58b163f7f5ba6826ed2fcbddc91e44a8372e874858e4d0c518",
560
567
  "plugins/src/base/skills/lisa-setup-notion/SKILL.md": "f5a1e9290789fd1c33675168d30461fb24a11c98a433ef777c1f536bc2f905ef",
561
568
  "plugins/src/base/skills/lisa-setup-remote-aws/SKILL.md": "80fbf157f9c562c033886c25a99b37356602edd9e61cd2d492f339769ddcf97e",
562
- "plugins/src/base/skills/lisa-setup-remote-env/SKILL.md": "821f9f7db39259c3aef24dc369c7cdcfb55a85d61742b32ac2a961e1b3e263a4",
569
+ "plugins/src/base/skills/lisa-setup-remote-env/SKILL.md": "77a537460aaa1a7f9da74128161d24fa3bf758ae1fec6f6dcbc47bde9f078750",
563
570
  "plugins/src/base/skills/lisa-setup-remote-env/assets/session-start.sh": "cb63d08b14ab7aa2d405e6770e0cf7db5d6588ae1dcb924ea6224b026fcff496",
564
571
  "plugins/src/base/skills/lisa-setup-remote-env/assets/setup.sh": "c04afb1cf8e14a2713645228e679fa7772559488330a240ec0297cae6afd03e2",
565
- "plugins/src/base/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs": "1f451881342364d086640b59914a3b07286a3734caa63f01efe64531d3bde7e4",
566
- "plugins/src/base/skills/lisa-setup-remote-env/scripts/toolchain.mjs": "8822af39d0251a2e4fb0eac9157ba9e63ea813d914240ca0cacacd6cb7cbb5bb",
572
+ "plugins/src/base/skills/lisa-setup-remote-env/scripts/setup-remote-env.mjs": "eb8017ee2eef5b5b166908e5c2fccf493af283b0a40717688033d65263cf35ce",
573
+ "plugins/src/base/skills/lisa-setup-remote-env/scripts/toolchain.mjs": "341e8058e1d20e7e52276007aae9ceda1504b995615cf8421c9494b60b550ef9",
567
574
  "plugins/src/base/skills/lisa-setup-remote-env/scripts/verify-remote-env.mjs": "82bc2a27a0a5afb2ff413a88365c619fd7f0eaada5de3ccabf2000938f0607a4",
568
575
  "plugins/src/base/skills/lisa-setup-sonar/SKILL.md": "53fbd8acce4b5e47e88195a7b90d5be424fa6ef7ad872f52c50467c690664c3b",
569
576
  "plugins/src/base/skills/lisa-sonarcloud-access/SKILL.md": "031acb01195ae59010a65335da98d46a1d6080e749823d6f6d157938d9e96648",
@@ -949,7 +956,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
949
956
  "rails/deletions.json": "eeadf9a2b1677913199a235091a8d6190477f3e2a5fd598d62cf658cb59a8099",
950
957
  "rails/github-rulesets/quality-checks.json": "0ec1c366589edbaa6b8f45f940cef3ada5ed7b1a956d98d3fa6034b0f78fbc7c",
951
958
  "rails/merge/.claude/settings.json": "9c49f8c7c453f8749c90def3e22d412c3345c533d24b30dc7745ffa052ad6fa1",
952
- "scripts/build-plugins.sh": "d26321ea10bc3ed8cf096f900622cb4cf7a37117fabf9730f0fe5c9d949582fc",
959
+ "scripts/build-plugins.sh": "b57413e6e003be102e82e0a8a6b44a137f5d0aeed8da4c1f4f99919a0d7e8b04",
953
960
  "scripts/check-duplicate-versions.mjs": "84d97e94eb834522848ddce951bb54ae9da1e4be252e2c51fed0c01c4f4d6b72",
954
961
  "scripts/check-learnings-budget.ts": "007430c2d6938efcc79ccbfd5717ebe2c7cf66b4de9a21a3e67b8db7f3600349",
955
962
  "scripts/check-plugins-sync.sh": "3a99cbff0e8ec5e7c944690eae003a6d51b51c85436d77bd37faea4d553728af",
@@ -971,7 +978,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
971
978
  "scripts/generate-codex-plugin-artifacts.mjs": "1d1a362afb8dba408741a3eed9fe583296f6bcb048608979f73f359cd609c03d",
972
979
  "scripts/generate-copilot-plugin-artifacts.mjs": "70d283eed7cb7c1351d13cf0497f06dec175562c5918921c404393a76f11278f",
973
980
  "scripts/generate-cursor-plugin-artifacts.mjs": "d8806197a723f0c2b50a8155ffc5b6f0abc30c68dc2385cb80b0dd066d061231",
974
- "scripts/generate-upstream-evidence-manifest.mjs": "3fda910de51aa51def6c7cee276c471cc50cb7cb72478bee5495341d67409a97",
981
+ "scripts/generate-upstream-evidence-manifest.mjs": "de1eb5adaa6252b4abe5859933bff0ab2a52e19cc5a3fc5a41018fbb57b766d1",
975
982
  "scripts/github-status-check.sh": "876914c369c5bd58f4a5f3c41d0c1264c6923f329a644f90640d15b434a0fbd1",
976
983
  "scripts/install-claude-plugins.sh": "ed60ed3afc25175b81439330dbf26ff639f55fabec54223df4c7266805c84f22",
977
984
  "scripts/internal-agy-skill-policy.json": "c2ce87d2eeebfdc9f24d6486425c010cf9289376f8a459f4767ca22d2bf8670d",
@@ -985,7 +992,7 @@ export const UPSTREAM_EVIDENCE_MANIFEST = Object.freeze({
985
992
  "scripts/lib/reusable-workflow-contract.d.mts": "791f01b55dd7a6b5d9a5f4cb9c44167caa146c2fc3c31a2ae4c2d8a350adc2f1",
986
993
  "scripts/lib/reusable-workflow-contract.mjs": "134ee2a327290f066f1eb318b5ed53c711557c3e10ed462c00ff5c97cfb20863",
987
994
  "scripts/lisa-commit-and-pr-local.sh": "605409c3ce6ec38ad3275604291a1ceae98f7807a605654263bc14f811c03903",
988
- "scripts/lisa-enforcement-fallback.sh": "8dc942ac4edc2017d6b8277296c8f80542e7c024eef1bb65de609979d0ca9a0e",
995
+ "scripts/lisa-enforcement-fallback.sh": "9cab71562d01421d57c6719318a4d03a6249a45c1aea434db3ff26e3065eeb66",
989
996
  "scripts/lisa-github-environments.sh": "0a76e92f108519abaf3e29991299ec3b0db20ea533e69e6d2a53d802dba9c370",
990
997
  "scripts/lisa-github-repo-settings.sh": "4afbccdfb08c62ba13afee42ec8561a28facf87c61f6f4b80000115328364d54",
991
998
  "scripts/lisa-github-repo-setup.sh": "dc2f1c9d718aa34ba57161120d9319b5f78fe6b0b496d8e3c77226a08795aa36",
@@ -1230,6 +1237,10 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
1230
1237
  "README.md": true,
1231
1238
  "all/copy-contents/.gitattributes": true,
1232
1239
  "all/copy-contents/gitignore": true,
1240
+ "all/copy-overwrite/scripts/lisa-enforcement-fallback.sh": true,
1241
+ "all/copy-overwrite/scripts/lisa-hooks/block-no-verify.sh": true,
1242
+ "all/copy-overwrite/scripts/lisa-hooks/block-shell-json-parsing.sh": true,
1243
+ "all/copy-overwrite/scripts/lisa-hooks/parity-safety-net.sh": true,
1233
1244
  "all/copy-overwrite/scripts/lisa-work-item.mjs": true,
1234
1245
  "all/create-only/.claude/rules/PROJECT_RULES.md": true,
1235
1246
  "all/create-only/.lisaignore": true,
@@ -1938,6 +1949,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
1938
1949
  "plugins/lisa-agy/commands/lisa/cross-pollinate.md": true,
1939
1950
  "plugins/lisa-agy/commands/lisa/debrief.md": true,
1940
1951
  "plugins/lisa-agy/commands/lisa/debrief/apply.md": true,
1952
+ "plugins/lisa-agy/commands/lisa/detect-tooling.md": true,
1941
1953
  "plugins/lisa-agy/commands/lisa/doctor.md": true,
1942
1954
  "plugins/lisa-agy/commands/lisa/exploratory-qa.md": true,
1943
1955
  "plugins/lisa-agy/commands/lisa/fix/linter-error.md": true,
@@ -2043,6 +2055,8 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2043
2055
  "plugins/lisa-agy/skills/lisa-debrief-apply/SKILL.md": true,
2044
2056
  "plugins/lisa-agy/skills/lisa-debrief/SKILL.md": true,
2045
2057
  "plugins/lisa-agy/skills/lisa-delivery-effectiveness/SKILL.md": true,
2058
+ "plugins/lisa-agy/skills/lisa-detect-tooling/SKILL.md": true,
2059
+ "plugins/lisa-agy/skills/lisa-detect-tooling/scripts/detect-tooling.mjs": true,
2046
2060
  "plugins/lisa-agy/skills/lisa-doctor/SKILL.md": true,
2047
2061
  "plugins/lisa-agy/skills/lisa-drive-pr-to-merge/SKILL.md": true,
2048
2062
  "plugins/lisa-agy/skills/lisa-epic-triage/SKILL.md": true,
@@ -2271,6 +2285,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2271
2285
  "plugins/lisa-copilot/commands/lisa/cross-pollinate.md": true,
2272
2286
  "plugins/lisa-copilot/commands/lisa/debrief.md": true,
2273
2287
  "plugins/lisa-copilot/commands/lisa/debrief/apply.md": true,
2288
+ "plugins/lisa-copilot/commands/lisa/detect-tooling.md": true,
2274
2289
  "plugins/lisa-copilot/commands/lisa/doctor.md": true,
2275
2290
  "plugins/lisa-copilot/commands/lisa/exploratory-qa.md": true,
2276
2291
  "plugins/lisa-copilot/commands/lisa/fix/linter-error.md": true,
@@ -2458,6 +2473,8 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2458
2473
  "plugins/lisa-copilot/skills/lisa-debrief-apply/SKILL.md": true,
2459
2474
  "plugins/lisa-copilot/skills/lisa-debrief/SKILL.md": true,
2460
2475
  "plugins/lisa-copilot/skills/lisa-delivery-effectiveness/SKILL.md": true,
2476
+ "plugins/lisa-copilot/skills/lisa-detect-tooling/SKILL.md": true,
2477
+ "plugins/lisa-copilot/skills/lisa-detect-tooling/scripts/detect-tooling.mjs": true,
2461
2478
  "plugins/lisa-copilot/skills/lisa-doctor/SKILL.md": true,
2462
2479
  "plugins/lisa-copilot/skills/lisa-drive-pr-to-merge/SKILL.md": true,
2463
2480
  "plugins/lisa-copilot/skills/lisa-epic-triage/SKILL.md": true,
@@ -2671,6 +2688,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2671
2688
  "plugins/lisa-cursor/commands/lisa/cross-pollinate.md": true,
2672
2689
  "plugins/lisa-cursor/commands/lisa/debrief.md": true,
2673
2690
  "plugins/lisa-cursor/commands/lisa/debrief/apply.md": true,
2691
+ "plugins/lisa-cursor/commands/lisa/detect-tooling.md": true,
2674
2692
  "plugins/lisa-cursor/commands/lisa/doctor.md": true,
2675
2693
  "plugins/lisa-cursor/commands/lisa/exploratory-qa.md": true,
2676
2694
  "plugins/lisa-cursor/commands/lisa/fix/linter-error.md": true,
@@ -2859,6 +2877,8 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
2859
2877
  "plugins/lisa-cursor/skills/lisa-debrief-apply/SKILL.md": true,
2860
2878
  "plugins/lisa-cursor/skills/lisa-debrief/SKILL.md": true,
2861
2879
  "plugins/lisa-cursor/skills/lisa-delivery-effectiveness/SKILL.md": true,
2880
+ "plugins/lisa-cursor/skills/lisa-detect-tooling/SKILL.md": true,
2881
+ "plugins/lisa-cursor/skills/lisa-detect-tooling/scripts/detect-tooling.mjs": true,
2862
2882
  "plugins/lisa-cursor/skills/lisa-doctor/SKILL.md": true,
2863
2883
  "plugins/lisa-cursor/skills/lisa-drive-pr-to-merge/SKILL.md": true,
2864
2884
  "plugins/lisa-cursor/skills/lisa-epic-triage/SKILL.md": true,
@@ -4772,6 +4792,9 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
4772
4792
  "plugins/lisa/.codex-plugin/skills/lisa-debrief/agents/openai.yaml": true,
4773
4793
  "plugins/lisa/.codex-plugin/skills/lisa-delivery-effectiveness/SKILL.md": true,
4774
4794
  "plugins/lisa/.codex-plugin/skills/lisa-delivery-effectiveness/agents/openai.yaml": true,
4795
+ "plugins/lisa/.codex-plugin/skills/lisa-detect-tooling/SKILL.md": true,
4796
+ "plugins/lisa/.codex-plugin/skills/lisa-detect-tooling/agents/openai.yaml": true,
4797
+ "plugins/lisa/.codex-plugin/skills/lisa-detect-tooling/scripts/detect-tooling.mjs": true,
4775
4798
  "plugins/lisa/.codex-plugin/skills/lisa-doctor/SKILL.md": true,
4776
4799
  "plugins/lisa/.codex-plugin/skills/lisa-doctor/agents/openai.yaml": true,
4777
4800
  "plugins/lisa/.codex-plugin/skills/lisa-drive-pr-to-merge/SKILL.md": true,
@@ -5136,6 +5159,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
5136
5159
  "plugins/lisa/commands/cross-pollinate.md": true,
5137
5160
  "plugins/lisa/commands/debrief.md": true,
5138
5161
  "plugins/lisa/commands/debrief/apply.md": true,
5162
+ "plugins/lisa/commands/detect-tooling.md": true,
5139
5163
  "plugins/lisa/commands/doctor.md": true,
5140
5164
  "plugins/lisa/commands/exploratory-qa.md": true,
5141
5165
  "plugins/lisa/commands/fix/linter-error.md": true,
@@ -5349,6 +5373,9 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
5349
5373
  "plugins/lisa/skills/lisa-debrief/agents/openai.yaml": true,
5350
5374
  "plugins/lisa/skills/lisa-delivery-effectiveness/SKILL.md": true,
5351
5375
  "plugins/lisa/skills/lisa-delivery-effectiveness/agents/openai.yaml": true,
5376
+ "plugins/lisa/skills/lisa-detect-tooling/SKILL.md": true,
5377
+ "plugins/lisa/skills/lisa-detect-tooling/agents/openai.yaml": true,
5378
+ "plugins/lisa/skills/lisa-detect-tooling/scripts/detect-tooling.mjs": true,
5352
5379
  "plugins/lisa/skills/lisa-doctor/SKILL.md": true,
5353
5380
  "plugins/lisa/skills/lisa-doctor/agents/openai.yaml": true,
5354
5381
  "plugins/lisa/skills/lisa-drive-pr-to-merge/SKILL.md": true,
@@ -5713,6 +5740,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
5713
5740
  "plugins/src/base/commands/cross-pollinate.md": true,
5714
5741
  "plugins/src/base/commands/debrief.md": true,
5715
5742
  "plugins/src/base/commands/debrief/apply.md": true,
5743
+ "plugins/src/base/commands/detect-tooling.md": true,
5716
5744
  "plugins/src/base/commands/doctor.md": true,
5717
5745
  "plugins/src/base/commands/exploratory-qa.md": true,
5718
5746
  "plugins/src/base/commands/fix/linter-error.md": true,
@@ -5908,6 +5936,8 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
5908
5936
  "plugins/src/base/skills/lisa-debrief-apply/SKILL.md": true,
5909
5937
  "plugins/src/base/skills/lisa-debrief/SKILL.md": true,
5910
5938
  "plugins/src/base/skills/lisa-delivery-effectiveness/SKILL.md": true,
5939
+ "plugins/src/base/skills/lisa-detect-tooling/SKILL.md": true,
5940
+ "plugins/src/base/skills/lisa-detect-tooling/scripts/detect-tooling.mjs": true,
5911
5941
  "plugins/src/base/skills/lisa-doctor/SKILL.md": true,
5912
5942
  "plugins/src/base/skills/lisa-drive-pr-to-merge/SKILL.md": true,
5913
5943
  "plugins/src/base/skills/lisa-epic-triage/SKILL.md": true,
@@ -7178,6 +7208,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7178
7208
  "tests/unit/hooks/enforce-verification-gate-v2.test.ts": true,
7179
7209
  "tests/unit/hooks/enforcement-fallback.test.ts": true,
7180
7210
  "tests/unit/hooks/enforcement-gates-e2e.test.ts": true,
7211
+ "tests/unit/hooks/host-enforcement-fallback.test.ts": true,
7181
7212
  "tests/unit/hooks/inject-rules.test.ts": true,
7182
7213
  "tests/unit/hooks/install-pkgs-worktree-node-modules.test.ts": true,
7183
7214
  "tests/unit/hooks/lint-on-edit.test.ts": true,
@@ -7259,6 +7290,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7259
7290
  "tests/unit/scripts/work-item-tracker-unreachable.test.ts": true,
7260
7291
  "tests/unit/secrets/automation-workflow.test.ts": true,
7261
7292
  "tests/unit/secrets/bootstrap-key-naming.test.ts": true,
7293
+ "tests/unit/secrets/detect-tooling.test.ts": true,
7262
7294
  "tests/unit/secrets/doctor-secrets.test.ts": true,
7263
7295
  "tests/unit/secrets/remote-dispatch-claude-web.test.ts": true,
7264
7296
  "tests/unit/secrets/remote-dispatch.test.ts": true,
@@ -7271,6 +7303,7 @@ export const UPSTREAM_SURFACE_MANIFEST = Object.freeze({
7271
7303
  "tests/unit/secrets/remote-env-toolchain.test.ts": true,
7272
7304
  "tests/unit/secrets/rotation-view.test.ts": true,
7273
7305
  "tests/unit/secrets/secrets-access-contract.test.ts": true,
7306
+ "tests/unit/secrets/toolchain-surfaces.test.ts": true,
7274
7307
  "tests/unit/secrets/validate-config.test.ts": true,
7275
7308
  "tests/unit/sonar/sonar-installer.test.ts": true,
7276
7309
  "tests/unit/standards/capture.test.ts": true,