@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.
- package/dist/codex/agent-installer.d.ts +5 -1
- package/dist/codex/agent-installer.d.ts.map +1 -1
- package/dist/codex/agent-installer.js +7 -2
- package/dist/codex/agent-installer.js.map +1 -1
- package/dist/core/lisa-skill-sources.d.ts +27 -1
- package/dist/core/lisa-skill-sources.d.ts.map +1 -1
- package/dist/core/lisa-skill-sources.js +33 -4
- package/dist/core/lisa-skill-sources.js.map +1 -1
- package/dist/core/lisa.d.ts +11 -7
- package/dist/core/lisa.d.ts.map +1 -1
- package/dist/core/lisa.js +30 -10
- package/dist/core/lisa.js.map +1 -1
- package/dist/opencode/agent-installer.d.ts +52 -0
- package/dist/opencode/agent-installer.d.ts.map +1 -0
- package/dist/opencode/agent-installer.js +120 -0
- package/dist/opencode/agent-installer.js.map +1 -0
- package/dist/opencode/agent-transformer.d.ts +52 -0
- package/dist/opencode/agent-transformer.d.ts.map +1 -0
- package/dist/opencode/agent-transformer.js +133 -0
- package/dist/opencode/agent-transformer.js.map +1 -0
- package/dist/opencode/command-installer.d.ts +47 -0
- package/dist/opencode/command-installer.d.ts.map +1 -0
- package/dist/opencode/command-installer.js +112 -0
- package/dist/opencode/command-installer.js.map +1 -0
- package/dist/opencode/command-transformer.d.ts +10 -0
- package/dist/opencode/command-transformer.d.ts.map +1 -0
- package/dist/opencode/command-transformer.js +74 -0
- package/dist/opencode/command-transformer.js.map +1 -0
- package/package.json +1 -1
- package/plugins/lisa/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa/skills/repair-intake/SKILL.md +51 -6
- package/plugins/lisa-agy/plugin.json +1 -1
- package/plugins/lisa-agy/skills/repair-intake/SKILL.md +51 -6
- package/plugins/lisa-cdk/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-agy/plugin.json +1 -1
- package/plugins/lisa-cdk-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cdk-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-copilot/skills/repair-intake/SKILL.md +51 -6
- package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cursor/skills/repair-intake/SKILL.md +51 -6
- package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-agy/plugin.json +1 -1
- package/plugins/lisa-expo-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-agy/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-harper-fabric-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-agy/plugin.json +1 -1
- package/plugins/lisa-nestjs-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-agy/plugin.json +1 -1
- package/plugins/lisa-openclaw-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-openclaw-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-agy/plugin.json +1 -1
- package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-agy/plugin.json +1 -1
- package/plugins/lisa-typescript-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-agy/plugin.json +1 -1
- package/plugins/lisa-wiki-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-wiki-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/src/base/skills/repair-intake/SKILL.md +51 -6
|
@@ -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
|
|
419
|
-
**ambiguity**, or by more than one at once.
|
|
420
|
-
"no `is blocked by` links, therefore nothing
|
|
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.
|
|
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
|
-
|
|
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
|