@codyswann/lisa 2.150.0 → 2.151.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 (79) hide show
  1. package/dist/codex/agent-installer.d.ts +5 -1
  2. package/dist/codex/agent-installer.d.ts.map +1 -1
  3. package/dist/codex/agent-installer.js +7 -2
  4. package/dist/codex/agent-installer.js.map +1 -1
  5. package/dist/core/lisa-skill-sources.d.ts +27 -1
  6. package/dist/core/lisa-skill-sources.d.ts.map +1 -1
  7. package/dist/core/lisa-skill-sources.js +33 -4
  8. package/dist/core/lisa-skill-sources.js.map +1 -1
  9. package/dist/core/lisa.d.ts +11 -7
  10. package/dist/core/lisa.d.ts.map +1 -1
  11. package/dist/core/lisa.js +30 -10
  12. package/dist/core/lisa.js.map +1 -1
  13. package/dist/opencode/agent-installer.d.ts +52 -0
  14. package/dist/opencode/agent-installer.d.ts.map +1 -0
  15. package/dist/opencode/agent-installer.js +120 -0
  16. package/dist/opencode/agent-installer.js.map +1 -0
  17. package/dist/opencode/agent-transformer.d.ts +52 -0
  18. package/dist/opencode/agent-transformer.d.ts.map +1 -0
  19. package/dist/opencode/agent-transformer.js +133 -0
  20. package/dist/opencode/agent-transformer.js.map +1 -0
  21. package/dist/opencode/command-installer.d.ts +47 -0
  22. package/dist/opencode/command-installer.d.ts.map +1 -0
  23. package/dist/opencode/command-installer.js +112 -0
  24. package/dist/opencode/command-installer.js.map +1 -0
  25. package/dist/opencode/command-transformer.d.ts +10 -0
  26. package/dist/opencode/command-transformer.d.ts.map +1 -0
  27. package/dist/opencode/command-transformer.js +74 -0
  28. package/dist/opencode/command-transformer.js.map +1 -0
  29. package/package.json +1 -1
  30. package/plugins/lisa/.claude-plugin/plugin.json +1 -1
  31. package/plugins/lisa/.codex-plugin/plugin.json +1 -1
  32. package/plugins/lisa/skills/repair-intake/SKILL.md +51 -6
  33. package/plugins/lisa-agy/plugin.json +1 -1
  34. package/plugins/lisa-agy/skills/repair-intake/SKILL.md +51 -6
  35. package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
  36. package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
  37. package/plugins/lisa-cdk-agy/plugin.json +1 -1
  38. package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
  39. package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
  40. package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
  41. package/plugins/lisa-copilot/skills/repair-intake/SKILL.md +51 -6
  42. package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
  43. package/plugins/lisa-cursor/skills/repair-intake/SKILL.md +51 -6
  44. package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
  45. package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
  46. package/plugins/lisa-expo-agy/plugin.json +1 -1
  47. package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
  48. package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
  49. package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
  50. package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
  51. package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
  52. package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
  53. package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
  54. package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
  55. package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
  56. package/plugins/lisa-nestjs-agy/plugin.json +1 -1
  57. package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
  58. package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
  59. package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
  60. package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
  61. package/plugins/lisa-openclaw-agy/plugin.json +1 -1
  62. package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
  63. package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
  64. package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
  65. package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
  66. package/plugins/lisa-rails-agy/plugin.json +1 -1
  67. package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
  68. package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
  69. package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
  70. package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
  71. package/plugins/lisa-typescript-agy/plugin.json +1 -1
  72. package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
  73. package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
  74. package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
  75. package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
  76. package/plugins/lisa-wiki-agy/plugin.json +1 -1
  77. package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
  78. package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
  79. package/plugins/src/base/skills/repair-intake/SKILL.md +51 -6
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-rails",
3
- "version": "2.150.0",
3
+ "version": "2.151.0",
4
4
  "description": "Ruby on Rails-specific hooks — RuboCop linting/formatting and ast-grep scanning on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-typescript",
3
- "version": "2.150.0",
3
+ "version": "2.151.0",
4
4
  "description": "TypeScript-specific hooks — Prettier formatting, ESLint linting, ast-grep scanning, and error-suppression blocking on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-typescript",
3
- "version": "2.150.0",
3
+ "version": "2.151.0",
4
4
  "description": "TypeScript-specific hooks for formatting, linting, and ast-grep scanning on edit.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-typescript",
3
- "version": "2.150.0",
3
+ "version": "2.151.0",
4
4
  "description": "TypeScript-specific hooks — Prettier formatting, ESLint linting, ast-grep scanning, and error-suppression blocking on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-typescript",
3
- "version": "2.150.0",
3
+ "version": "2.151.0",
4
4
  "description": "TypeScript-specific hooks — Prettier formatting, ESLint linting, ast-grep scanning, and error-suppression blocking on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-typescript",
3
- "version": "2.150.0",
3
+ "version": "2.151.0",
4
4
  "description": "TypeScript-specific hooks — Prettier formatting, ESLint linting, ast-grep scanning, and error-suppression blocking on edit",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-wiki",
3
- "version": "2.150.0",
3
+ "version": "2.151.0",
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": "2.150.0",
3
+ "version": "2.151.0",
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": "2.150.0",
3
+ "version": "2.151.0",
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": "2.150.0",
3
+ "version": "2.151.0",
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": "2.150.0",
3
+ "version": "2.151.0",
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"
@@ -415,10 +415,10 @@ window and state fingerprint (Loop prevention) so re-runs over the same unchange
415
415
  ### Build `blocked` → re-evaluate, unblock if cleared
416
416
 
417
417
  1. Read the block reason and classify the blocker (see Blocker classification & clearing). An item
418
- may be held by a **dependency**, by a **validation / quality-gate self-block**, by an
419
- **ambiguity**, or by more than one at once. Re-check **every** class present — do not stop at
420
- "no `is blocked by` links, therefore nothing to do." A self-block has zero dependencies by
421
- definition, yet is fully re-checkable.
418
+ may be held by a **dependency**, by a **validation / quality-gate self-block**, by a
419
+ **deployed / runtime verification failure**, by an **ambiguity**, or by more than one at once.
420
+ Re-check **every** class present — do not stop at "no `is blocked by` links, therefore nothing
421
+ to do." A self-block has zero dependencies by definition, yet is fully re-checkable.
422
422
  2. **Dependency cleared** — if every parsed `is blocked by` dependency is **cleared** → move
423
423
  `blocked → claimed`, then run the same agent-dispatch + post-agent `claimed → done` sequence as
424
424
  the stalled-`claimed` path above (one-cycle recovery). If the agent re-blocks, move back to
@@ -435,10 +435,31 @@ window and state fingerprint (Loop prevention) so re-runs over the same unchange
435
435
  missing-requirement set so the human sees what remains. Because the fingerprint includes the
436
436
  gate verdict + missing-requirement set (Loop prevention), a partial human fix changes the
437
437
  fingerprint and re-checks next cycle, while a truly-unchanged gate result stays in backoff.
438
- 4. If the block was an **ambiguity** research can settle and no dependency remains → run the
438
+ 4. **Deployed / runtime verification blocker re-check** if the block reason is a failed
439
+ *deployed* or *runtime* verification (a smoke/E2E/health check or manual probe against a live
440
+ environment that errored — e.g. an authenticated endpoint returning 500, a deploy health check
441
+ red, a seeded-data assertion failing), re-check by **reproducing the original failing check with
442
+ the same context it used**: the same auth identity/credentials, the same target environment, the
443
+ same route, and the same scope/parameters. A probe that does **not** exercise the failed path is
444
+ **not** evidence the blocker cleared — an *anonymous* request to an *auth-gated* resource, a
445
+ request against a different environment, or a narrower scope can all return a healthy status
446
+ while the originally-failing path is still broken. (This exact false-negative — an unauthenticated
447
+ `GET` to an auth-gated resource returning 200 without touching the failing table — wrongly unblocked
448
+ a build item whose authenticated path was still 500ing, sending it `ready → claimed → blocked` again.)
449
+ - **Reproduces clean now** (the *same* check that failed now passes) → move `blocked → claimed`
450
+ and resume as in (2).
451
+ - **Still failing** → stay `blocked`; refresh the note with the current observed result. Because
452
+ the root cause is external (a deployed defect, not item content), prefer filing/keeping a
453
+ build-ready fix ticket and an `is blocked by` link to it (the "real external blocker" path),
454
+ so a later cycle self-heals when that ticket goes terminal.
455
+ - **Cannot reproduce this cycle** (the agent lacks the credentials/env access to run the original
456
+ check) → stay `blocked`; do **not** unblock on the absence of a reproduction. If the missing
457
+ access is human-only, apply the `human_needed` marker. Never unblock a deployed-verification
458
+ blocker on a weaker signal than the one that set it.
459
+ 5. If the block was an **ambiguity** research can settle and no dependency remains → run the
439
460
  research needed (`lisa:codebase-research` / `lisa:product-walkthrough`); if resolved, proceed
440
461
  as in (2).
441
- 5. Else → still blocked. Refresh the note with the current reason (Loop prevention) and leave it
462
+ 6. Else → still blocked. Refresh the note with the current reason (Loop prevention) and leave it
442
463
  `blocked`.
443
464
 
444
465
  ### Build terminal-open → native close / complete / resolve
@@ -727,6 +748,30 @@ running the needed research (`lisa:codebase-research` / `lisa:product-walkthroug
727
748
  human comment/edit newer than the last `[lisa-repair-intake]` note. Resolved → proceed to
728
749
  re-dispatch; else stay blocked.
729
750
 
751
+ ### Class D — deployed / runtime verification failure
752
+
753
+ A block set by a *deployed* or *runtime* check that failed against a live environment — a
754
+ smoke/E2E/health probe or manual reproduction that returned an error (an authenticated endpoint
755
+ 500ing, a deploy health check red, a seeded-data assertion failing). This is neither a dependency
756
+ nor a content gate: the item is correct but the environment it must verify against is broken.
757
+
758
+ Clear-check by **reproducing the original failing check with the same context that set it** — same
759
+ auth identity/credentials, same environment, same route, same scope. The cardinal rule: **never
760
+ unblock on a probe weaker than the one that set the block.** A signal that does not exercise the
761
+ failed path is not a clear:
762
+
763
+ - Anonymous/unauthenticated request to an **auth-gated** resource (it can short-circuit to a
764
+ healthy response without touching the failing code path).
765
+ - A request against a **different environment** than the one that failed.
766
+ - A **narrower scope** than the failing check (a subset that happens to pass).
767
+
768
+ Conservative, same as the other classes: reproduces-clean → cleared; still-failing or
769
+ not-reproducible-this-cycle → stay blocked. Because the cause is external (a deployed defect, not
770
+ item content), the durable handling is the **real external blocker** path — file/keep a build-ready
771
+ fix ticket for the deployed defect and `is blocked by`-link the item to it, so a later cycle
772
+ self-heals when that ticket is terminal. If reproducing the check needs human-only access the agent
773
+ lacks, apply `human_needed`.
774
+
730
775
  ## Loop prevention
731
776
 
732
777
  A `blocked` item with a permanently unresolved problem must not be "repaired" and re-noted every