@codyswann/lisa 3.40.5 → 3.41.1

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 (84) hide show
  1. package/all/copy-overwrite/scripts/lisa-gates.mjs +234 -1
  2. package/dist/cli/doctor-skip-jobs-migration.d.ts +48 -0
  3. package/dist/cli/doctor-skip-jobs-migration.d.ts.map +1 -0
  4. package/dist/cli/doctor-skip-jobs-migration.js +271 -0
  5. package/dist/cli/doctor-skip-jobs-migration.js.map +1 -0
  6. package/dist/cli/doctor.d.ts.map +1 -1
  7. package/dist/cli/doctor.js +7 -0
  8. package/dist/cli/doctor.js.map +1 -1
  9. package/dist/core/lisa-owned-hash-ledger.d.ts.map +1 -1
  10. package/dist/core/lisa-owned-hash-ledger.js +1 -0
  11. package/dist/core/lisa-owned-hash-ledger.js.map +1 -1
  12. package/dist/core/lisa.d.ts.map +1 -1
  13. package/dist/core/lisa.js +7 -0
  14. package/dist/core/lisa.js.map +1 -1
  15. package/dist/core/upstream-evidence-manifest.d.ts.map +1 -1
  16. package/dist/core/upstream-evidence-manifest.js +12 -4
  17. package/dist/core/upstream-evidence-manifest.js.map +1 -1
  18. package/dist/core/workflow-reference-guard.d.ts +17 -0
  19. package/dist/core/workflow-reference-guard.d.ts.map +1 -0
  20. package/dist/core/workflow-reference-guard.js +145 -0
  21. package/dist/core/workflow-reference-guard.js.map +1 -0
  22. package/dist/strategies/package-lisa.d.ts +2 -1
  23. package/dist/strategies/package-lisa.d.ts.map +1 -1
  24. package/dist/strategies/package-lisa.js +168 -42
  25. package/dist/strategies/package-lisa.js.map +1 -1
  26. package/expo/package-lisa/package.lisa.json +3 -3
  27. package/package.json +3 -3
  28. package/plugins/lisa/.claude-plugin/plugin.json +1 -1
  29. package/plugins/lisa/.codex-plugin/plugin.json +1 -1
  30. package/plugins/lisa/.codex-plugin/skills/lisa-doctor/SKILL.md +20 -0
  31. package/plugins/lisa/skills/lisa-doctor/SKILL.md +20 -0
  32. package/plugins/lisa-agy/plugin.json +1 -1
  33. package/plugins/lisa-agy/skills/lisa-doctor/SKILL.md +20 -0
  34. package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
  35. package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
  36. package/plugins/lisa-cdk-agy/plugin.json +1 -1
  37. package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
  38. package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
  39. package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
  40. package/plugins/lisa-copilot/skills/lisa-doctor/SKILL.md +20 -0
  41. package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
  42. package/plugins/lisa-cursor/skills/lisa-doctor/SKILL.md +20 -0
  43. package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
  44. package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
  45. package/plugins/lisa-expo-agy/plugin.json +1 -1
  46. package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
  47. package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
  48. package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
  49. package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
  50. package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
  51. package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
  52. package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
  53. package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
  54. package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
  55. package/plugins/lisa-nestjs-agy/plugin.json +1 -1
  56. package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
  57. package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
  58. package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
  59. package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
  60. package/plugins/lisa-openclaw-agy/plugin.json +1 -1
  61. package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
  62. package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
  63. package/plugins/lisa-phaser/.claude-plugin/plugin.json +1 -1
  64. package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
  65. package/plugins/lisa-phaser-agy/plugin.json +1 -1
  66. package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
  67. package/plugins/lisa-phaser-cursor/.claude-plugin/plugin.json +1 -1
  68. package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
  69. package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
  70. package/plugins/lisa-rails-agy/plugin.json +1 -1
  71. package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
  72. package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
  73. package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
  74. package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
  75. package/plugins/lisa-typescript-agy/plugin.json +1 -1
  76. package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
  77. package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
  78. package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
  79. package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
  80. package/plugins/lisa-wiki-agy/plugin.json +1 -1
  81. package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
  82. package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
  83. package/plugins/src/base/skills/lisa-doctor/SKILL.md +20 -0
  84. package/typescript/package-lisa/package.lisa.json +2 -2
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-wiki",
3
- "version": "3.40.5",
3
+ "version": "3.41.1",
4
4
  "description": "Distributable LLM Wiki kernel — ingest, query, lint, and maintain a git-native markdown knowledge base across Claude and Codex.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-wiki",
3
- "version": "3.40.5",
3
+ "version": "3.41.1",
4
4
  "description": "LLM Wiki — a distributable, git-native markdown knowledge base for Claude Code and Codex",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-wiki",
3
- "version": "3.40.5",
3
+ "version": "3.41.1",
4
4
  "description": "LLM Wiki — a distributable, git-native markdown knowledge base for Claude Code and Codex",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-wiki",
3
- "version": "3.40.5",
3
+ "version": "3.41.1",
4
4
  "description": "LLM Wiki — a distributable, git-native markdown knowledge base for Claude Code and Codex",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -426,6 +426,7 @@ The verdict ladder is:
426
426
  node scripts/lisa-gates.mjs validate # shape + unknown gate ids
427
427
  node scripts/lisa-gates.mjs list --moment=pull-request
428
428
  node scripts/lisa-gates.mjs contexts # branch-protection contexts
429
+ node scripts/lisa-gates.mjs skip-jobs # what replaces each skip_jobs token
429
430
  ```
430
431
 
431
432
  A gate is a **property** — *credential leakage* — not a tool. `gitleaks` is one way to prove
@@ -437,6 +438,25 @@ would otherwise read as an enabled guarantee and run nothing at all — the same
437
438
  as a skipped required check. Gates a project invents carry an `x-` prefix, which Lisa runs without
438
439
  pretending to understand.
439
440
 
441
+ `skip-jobs` answers the migration off the `skip_jobs` workflow input. Eleven of the token → gate
442
+ pairs cannot be recovered by transforming the name — `lint` is `code-style`, `sg_scan` is
443
+ `structural-rules`, `work_item_traceability` is `traceability` — and being wrong does not break a
444
+ build: it declares the WRONG gate `off`, so a check silently stops running while the configuration
445
+ reads deliberate. Pass `--moment=` to match the moment the caller passes to `quality.yml`, because a
446
+ gate's legal moments are a closed set and a declaration outside it is refused by `validate` — after
447
+ the token has already been deleted.
448
+
449
+ Four of its six answers are refusals, and they are the point. `unmappable` means the job was never
450
+ converted to a gate façade, so keep the token. `partial` means one job behind the token has a gate
451
+ and the others do not, so the declaration alone would leave work running. `inert` means no job
452
+ honours that token at all. `unknown` means nothing matches it — usually a space after a comma, which
453
+ GitHub matches against nothing, so that job has been RUNNING all along. None of them produce a gate
454
+ id, because a confident wrong answer here is worse than no answer.
455
+
456
+ `lisa doctor` reports the same thing per caller workflow and does NOT edit the workflow. `lisa apply`
457
+ runs on postinstall, and an automated rewrite of a caller that gets it wrong is silent; an agent
458
+ performing the edit can read the surrounding code and confirm afterwards that the same checks ran.
459
+
440
460
  `contexts` is the value that replaces a hand-transcribed branch-protection list. It is scoped to
441
461
  one environment: a gate required before a production deploy is **not** thereby a merge blocker on a
442
462
  pull request, and collapsing the two would promote every deploy-time gate into branch protection.
@@ -39,7 +39,7 @@
39
39
  "handlebars": ">=4.7.9",
40
40
  "lodash": ">=4.18.1",
41
41
  "multer": ">=2.2.0",
42
- "undici": "^6.27.0",
42
+ "undici": "^6.28.0",
43
43
  "vite": ">=8.0.16",
44
44
  "ws": ">=8.21.0",
45
45
  "form-data": ">=4.0.6",
@@ -52,7 +52,7 @@
52
52
  "handlebars": ">=4.7.9",
53
53
  "lodash": ">=4.18.1",
54
54
  "multer": ">=2.2.0",
55
- "undici": "^6.27.0",
55
+ "undici": "^6.28.0",
56
56
  "vite": "^8.0.16",
57
57
  "ws": ">=8.21.0",
58
58
  "form-data": ">=4.0.6",