@codyswann/lisa 2.213.0 → 2.214.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/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/.codex-plugin/skills/lisa-codify-verification/SKILL.md +17 -0
- package/plugins/lisa/.codex-plugin/skills/lisa-github-add-journey/SKILL.md +6 -6
- package/plugins/lisa/.codex-plugin/skills/lisa-github-journey/SKILL.md +13 -2
- package/plugins/lisa/.codex-plugin/skills/lisa-github-validate-issue/SKILL.md +9 -2
- package/plugins/lisa/.codex-plugin/skills/lisa-implement/SKILL.md +2 -2
- package/plugins/lisa/.codex-plugin/skills/lisa-jira-add-journey/SKILL.md +6 -6
- package/plugins/lisa/.codex-plugin/skills/lisa-jira-create/SKILL.md +5 -5
- package/plugins/lisa/.codex-plugin/skills/lisa-jira-journey/SKILL.md +15 -4
- package/plugins/lisa/.codex-plugin/skills/lisa-jira-validate-ticket/SKILL.md +9 -2
- package/plugins/lisa/.codex-plugin/skills/lisa-linear-add-journey/SKILL.md +7 -5
- package/plugins/lisa/.codex-plugin/skills/lisa-linear-create/SKILL.md +4 -4
- package/plugins/lisa/.codex-plugin/skills/lisa-linear-journey/SKILL.md +15 -4
- package/plugins/lisa/.codex-plugin/skills/lisa-linear-validate-issue/SKILL.md +9 -2
- package/plugins/lisa/.codex-plugin/skills/lisa-monitor/SKILL.md +1 -1
- package/plugins/lisa/.codex-plugin/skills/lisa-project-ideation/examples/idempotency-verification-harness.md +2 -2
- package/plugins/lisa/.codex-plugin/skills/lisa-tracker-add-journey/SKILL.md +1 -1
- package/plugins/lisa/.codex-plugin/skills/lisa-tracker-evidence/SKILL.md +1 -1
- package/plugins/lisa/.codex-plugin/skills/lisa-verification-lifecycle/SKILL.md +4 -4
- package/plugins/lisa/.codex-plugin/skills/lisa-verify/SKILL.md +1 -1
- package/plugins/lisa/rules/eager/observability-audit.md +1 -1
- package/plugins/lisa/rules/eager/verification.md +2 -1
- package/plugins/lisa/rules/reference/observability-audit.md +1 -1
- package/plugins/lisa/rules/reference/verification.md +43 -5
- package/plugins/lisa/skills/lisa-codify-verification/SKILL.md +17 -0
- package/plugins/lisa/skills/lisa-github-add-journey/SKILL.md +6 -6
- package/plugins/lisa/skills/lisa-github-journey/SKILL.md +13 -2
- package/plugins/lisa/skills/lisa-github-validate-issue/SKILL.md +9 -2
- package/plugins/lisa/skills/lisa-implement/SKILL.md +2 -2
- package/plugins/lisa/skills/lisa-jira-add-journey/SKILL.md +6 -6
- package/plugins/lisa/skills/lisa-jira-create/SKILL.md +5 -5
- package/plugins/lisa/skills/lisa-jira-journey/SKILL.md +15 -4
- package/plugins/lisa/skills/lisa-jira-validate-ticket/SKILL.md +9 -2
- package/plugins/lisa/skills/lisa-linear-add-journey/SKILL.md +7 -5
- package/plugins/lisa/skills/lisa-linear-create/SKILL.md +4 -4
- package/plugins/lisa/skills/lisa-linear-journey/SKILL.md +16 -5
- package/plugins/lisa/skills/lisa-linear-validate-issue/SKILL.md +9 -2
- package/plugins/lisa/skills/lisa-monitor/SKILL.md +1 -1
- package/plugins/lisa/skills/lisa-project-ideation/examples/idempotency-verification-harness.md +2 -2
- package/plugins/lisa/skills/lisa-tracker-add-journey/SKILL.md +1 -1
- package/plugins/lisa/skills/lisa-tracker-evidence/SKILL.md +1 -1
- package/plugins/lisa/skills/lisa-verification-lifecycle/SKILL.md +4 -4
- package/plugins/lisa/skills/lisa-verify/SKILL.md +1 -1
- package/plugins/lisa-agy/plugin.json +1 -1
- package/plugins/lisa-agy/skills/lisa-codify-verification/SKILL.md +17 -0
- package/plugins/lisa-agy/skills/lisa-github-add-journey/SKILL.md +6 -6
- package/plugins/lisa-agy/skills/lisa-github-journey/SKILL.md +13 -2
- package/plugins/lisa-agy/skills/lisa-github-validate-issue/SKILL.md +9 -2
- package/plugins/lisa-agy/skills/lisa-implement/SKILL.md +2 -2
- package/plugins/lisa-agy/skills/lisa-jira-add-journey/SKILL.md +6 -6
- package/plugins/lisa-agy/skills/lisa-jira-create/SKILL.md +5 -5
- package/plugins/lisa-agy/skills/lisa-jira-journey/SKILL.md +15 -4
- package/plugins/lisa-agy/skills/lisa-jira-validate-ticket/SKILL.md +9 -2
- package/plugins/lisa-agy/skills/lisa-linear-add-journey/SKILL.md +7 -5
- package/plugins/lisa-agy/skills/lisa-linear-create/SKILL.md +4 -4
- package/plugins/lisa-agy/skills/lisa-linear-journey/SKILL.md +16 -5
- package/plugins/lisa-agy/skills/lisa-linear-validate-issue/SKILL.md +9 -2
- package/plugins/lisa-agy/skills/lisa-monitor/SKILL.md +1 -1
- package/plugins/lisa-agy/skills/lisa-project-ideation/examples/idempotency-verification-harness.md +2 -2
- package/plugins/lisa-agy/skills/lisa-tracker-add-journey/SKILL.md +1 -1
- package/plugins/lisa-agy/skills/lisa-tracker-evidence/SKILL.md +1 -1
- package/plugins/lisa-agy/skills/lisa-verification-lifecycle/SKILL.md +4 -4
- package/plugins/lisa-agy/skills/lisa-verify/SKILL.md +1 -1
- 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/rules/eager/observability-audit.md +1 -1
- package/plugins/lisa-copilot/rules/eager/verification.md +2 -1
- package/plugins/lisa-copilot/rules/reference/observability-audit.md +1 -1
- package/plugins/lisa-copilot/rules/reference/verification.md +43 -5
- package/plugins/lisa-copilot/skills/lisa-codify-verification/SKILL.md +17 -0
- package/plugins/lisa-copilot/skills/lisa-github-add-journey/SKILL.md +6 -6
- package/plugins/lisa-copilot/skills/lisa-github-journey/SKILL.md +13 -2
- package/plugins/lisa-copilot/skills/lisa-github-validate-issue/SKILL.md +9 -2
- package/plugins/lisa-copilot/skills/lisa-implement/SKILL.md +2 -2
- package/plugins/lisa-copilot/skills/lisa-jira-add-journey/SKILL.md +6 -6
- package/plugins/lisa-copilot/skills/lisa-jira-create/SKILL.md +5 -5
- package/plugins/lisa-copilot/skills/lisa-jira-journey/SKILL.md +15 -4
- package/plugins/lisa-copilot/skills/lisa-jira-validate-ticket/SKILL.md +9 -2
- package/plugins/lisa-copilot/skills/lisa-linear-add-journey/SKILL.md +7 -5
- package/plugins/lisa-copilot/skills/lisa-linear-create/SKILL.md +4 -4
- package/plugins/lisa-copilot/skills/lisa-linear-journey/SKILL.md +16 -5
- package/plugins/lisa-copilot/skills/lisa-linear-validate-issue/SKILL.md +9 -2
- package/plugins/lisa-copilot/skills/lisa-monitor/SKILL.md +1 -1
- package/plugins/lisa-copilot/skills/lisa-project-ideation/examples/idempotency-verification-harness.md +2 -2
- package/plugins/lisa-copilot/skills/lisa-tracker-add-journey/SKILL.md +1 -1
- package/plugins/lisa-copilot/skills/lisa-tracker-evidence/SKILL.md +1 -1
- package/plugins/lisa-copilot/skills/lisa-verification-lifecycle/SKILL.md +4 -4
- package/plugins/lisa-copilot/skills/lisa-verify/SKILL.md +1 -1
- package/plugins/lisa-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-cursor/rules/observability-audit-reference.mdc +1 -1
- package/plugins/lisa-cursor/rules/observability-audit.mdc +1 -1
- package/plugins/lisa-cursor/rules/verification-reference.mdc +43 -5
- package/plugins/lisa-cursor/rules/verification.mdc +2 -1
- package/plugins/lisa-cursor/skills/lisa-codify-verification/SKILL.md +17 -0
- package/plugins/lisa-cursor/skills/lisa-github-add-journey/SKILL.md +6 -6
- package/plugins/lisa-cursor/skills/lisa-github-journey/SKILL.md +13 -2
- package/plugins/lisa-cursor/skills/lisa-github-validate-issue/SKILL.md +9 -2
- package/plugins/lisa-cursor/skills/lisa-implement/SKILL.md +2 -2
- package/plugins/lisa-cursor/skills/lisa-jira-add-journey/SKILL.md +6 -6
- package/plugins/lisa-cursor/skills/lisa-jira-create/SKILL.md +5 -5
- package/plugins/lisa-cursor/skills/lisa-jira-journey/SKILL.md +15 -4
- package/plugins/lisa-cursor/skills/lisa-jira-validate-ticket/SKILL.md +9 -2
- package/plugins/lisa-cursor/skills/lisa-linear-add-journey/SKILL.md +7 -5
- package/plugins/lisa-cursor/skills/lisa-linear-create/SKILL.md +4 -4
- package/plugins/lisa-cursor/skills/lisa-linear-journey/SKILL.md +16 -5
- package/plugins/lisa-cursor/skills/lisa-linear-validate-issue/SKILL.md +9 -2
- package/plugins/lisa-cursor/skills/lisa-monitor/SKILL.md +1 -1
- package/plugins/lisa-cursor/skills/lisa-project-ideation/examples/idempotency-verification-harness.md +2 -2
- package/plugins/lisa-cursor/skills/lisa-tracker-add-journey/SKILL.md +1 -1
- package/plugins/lisa-cursor/skills/lisa-tracker-evidence/SKILL.md +1 -1
- package/plugins/lisa-cursor/skills/lisa-verification-lifecycle/SKILL.md +4 -4
- package/plugins/lisa-cursor/skills/lisa-verify/SKILL.md +1 -1
- 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-phaser/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser/.codex-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-agy/plugin.json +1 -1
- package/plugins/lisa-phaser-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-phaser-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/.codex-plugin/skills/jira-journey/SKILL.md +1 -1
- package/plugins/lisa-rails/skills/jira-journey/SKILL.md +1 -1
- package/plugins/lisa-rails-agy/plugin.json +1 -1
- package/plugins/lisa-rails-agy/skills/jira-journey/SKILL.md +1 -1
- package/plugins/lisa-rails-copilot/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-copilot/skills/jira-journey/SKILL.md +1 -1
- package/plugins/lisa-rails-cursor/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails-cursor/skills/jira-journey/SKILL.md +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/rules/eager/observability-audit.md +1 -1
- package/plugins/src/base/rules/eager/verification.md +2 -1
- package/plugins/src/base/rules/reference/observability-audit.md +1 -1
- package/plugins/src/base/rules/reference/verification.md +43 -5
- package/plugins/src/base/skills/lisa-codify-verification/SKILL.md +17 -0
- package/plugins/src/base/skills/lisa-github-add-journey/SKILL.md +6 -6
- package/plugins/src/base/skills/lisa-github-journey/SKILL.md +13 -2
- package/plugins/src/base/skills/lisa-github-validate-issue/SKILL.md +9 -2
- package/plugins/src/base/skills/lisa-implement/SKILL.md +2 -2
- package/plugins/src/base/skills/lisa-jira-add-journey/SKILL.md +6 -6
- package/plugins/src/base/skills/lisa-jira-create/SKILL.md +5 -5
- package/plugins/src/base/skills/lisa-jira-journey/SKILL.md +15 -4
- package/plugins/src/base/skills/lisa-jira-validate-ticket/SKILL.md +9 -2
- package/plugins/src/base/skills/lisa-linear-add-journey/SKILL.md +7 -5
- package/plugins/src/base/skills/lisa-linear-create/SKILL.md +4 -4
- package/plugins/src/base/skills/lisa-linear-journey/SKILL.md +16 -5
- package/plugins/src/base/skills/lisa-linear-validate-issue/SKILL.md +9 -2
- package/plugins/src/base/skills/lisa-monitor/SKILL.md +1 -1
- package/plugins/src/base/skills/lisa-project-ideation/examples/idempotency-verification-harness.md +2 -2
- package/plugins/src/base/skills/lisa-tracker-add-journey/SKILL.md +1 -1
- package/plugins/src/base/skills/lisa-tracker-evidence/SKILL.md +1 -1
- package/plugins/src/base/skills/lisa-verification-lifecycle/SKILL.md +4 -4
- package/plugins/src/base/skills/lisa-verify/SKILL.md +1 -1
- package/plugins/src/rails/skills/jira-journey/SKILL.md +1 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: lisa-linear-journey
|
|
3
|
-
description: "Parse a Linear Issue's Validation Journey section, execute the verification steps using appropriate tools (curl, test commands, database queries, Playwright), capture evidence at each [EVIDENCE: name] marker, and post to Linear + GitHub PR using the linear-evidence skill. Linear counterpart of lisa-jira-journey."
|
|
3
|
+
description: "Parse a Linear Issue's Validation Journey section, execute the verification steps using appropriate tools (curl, test commands, database queries, Playwright), capture evidence at each typed [EVIDENCE: <artifact-type>: <name>] marker, and post to Linear + GitHub PR using the linear-evidence skill. Linear counterpart of lisa-jira-journey."
|
|
4
4
|
allowed-tools: ["Bash", "Read", "Glob", "Grep", "Skill"]
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# Linear Validation Journey
|
|
8
8
|
|
|
9
|
-
Parse a Linear Issue's Validation Journey, execute the verification steps using the appropriate tools for the change type, capture evidence at each `[EVIDENCE: name]` marker, and post to Linear + GitHub PR.
|
|
9
|
+
Parse a Linear Issue's Validation Journey, execute the verification steps using the appropriate tools for the change type, capture evidence at each typed `[EVIDENCE: <artifact-type>: <name>]` marker, and post to Linear + GitHub PR.
|
|
10
10
|
|
|
11
11
|
This skill is the destination of the `lisa-tracker-journey` shim when `tracker = "linear"`.
|
|
12
12
|
|
|
@@ -34,7 +34,7 @@ Reads `linear.workspace`, `linear.teamKey` from `.lisa.config.json` (with `.loca
|
|
|
34
34
|
Fetch the Issue via `lisa-linear-access operation: get-issue` and extract the `## Validation Journey` section from the markdown description. Parse:
|
|
35
35
|
|
|
36
36
|
- `### Prerequisites` — list of required services / env / setup
|
|
37
|
-
- `### Steps` — numbered steps, each potentially containing `[EVIDENCE: name]` markers
|
|
37
|
+
- `### Steps` — numbered steps, each potentially containing typed `[EVIDENCE: <artifact-type>: <name>]` markers
|
|
38
38
|
- `### Assertions` — what must be true after verification
|
|
39
39
|
|
|
40
40
|
If the section is missing or has no steps, report `"No Validation Journey on <IDENTIFIER>. Run /linear-add-journey first."` and stop.
|
|
@@ -61,14 +61,25 @@ Execute each step sequentially. Determine the verification approach based on the
|
|
|
61
61
|
- **Security fixes** → Reproduce exploit attempt, verify fix
|
|
62
62
|
- **UI / frontend** → Playwright browser flow, capture screenshots / DOM state
|
|
63
63
|
|
|
64
|
-
At each `[EVIDENCE: name]` marker, capture
|
|
64
|
+
At each typed `[EVIDENCE: <artifact-type>: <name>]` marker, capture an artifact **of the declared type** — the type is the contract, not a suggestion:
|
|
65
|
+
|
|
66
|
+
- `screenshot` / `recording` → an actual image/video file from the driven UI (Playwright, simulator), never a text description of what was seen
|
|
67
|
+
- `http-transcript` → the exact request (curl command or client call) plus the full response
|
|
68
|
+
- `cli-output` → the command plus stdout/stderr and exit code
|
|
69
|
+
- `log-snippet` → the correlated log lines pulled from the running system
|
|
70
|
+
- `db-query-output` → the query plus returned rows
|
|
71
|
+
- `perf-trace` → the benchmark/frame-timing/profiler output with methodology (device profile, dataset size)
|
|
72
|
+
- `test-run-log` → reporter output naming the spec and showing it ran and passed
|
|
73
|
+
- `deploy-log` / `state-dump` → the deployment/health-check output or observed-state JSON
|
|
74
|
+
|
|
75
|
+
A prose claim ("the error state rendered gracefully") satisfies no marker. Legacy untyped markers: infer the type from the step's action, capture accordingly, and note the inference. Write each artifact to a numbered file:
|
|
65
76
|
|
|
66
77
|
#### Evidence Naming Convention
|
|
67
78
|
|
|
68
79
|
`{NN}-{evidence-name}.{ext}`
|
|
69
80
|
|
|
70
81
|
- `NN`: zero-padded sequential number (`01`, `02`, `03`...)
|
|
71
|
-
- `evidence-name`: the
|
|
82
|
+
- `evidence-name`: the `<name>` part of the typed marker
|
|
72
83
|
- `ext`: `.txt` for plain output, `.json` for structured data
|
|
73
84
|
|
|
74
85
|
Example:
|
|
@@ -200,9 +200,16 @@ An item with zero relations and no documented search: FAIL.
|
|
|
200
200
|
|
|
201
201
|
#### S14 — Evidence manifest binding (leaf work units)
|
|
202
202
|
|
|
203
|
-
When `issue_type ∈ {Bug, Task, Sub-task, Improvement}` AND `runtime_behavior_change = true`, the `## Validation Journey` must declare at least one `[EVIDENCE: name]` marker.
|
|
203
|
+
When `issue_type ∈ {Bug, Task, Sub-task, Improvement}` AND `runtime_behavior_change = true`, the `## Validation Journey` must declare at least one **typed** `[EVIDENCE: <artifact-type>: <name>]` marker. These markers are the work unit's **evidence manifest** — the exact, enumerated set of artifacts that must be captured and attached before the item may be closed (see the "Per-Work-Unit Evidence Contract" section of the `verification` rule, the Definition of Done in `verification-lifecycle`, and the evidence-manifest gate in `tracker-evidence`).
|
|
204
204
|
|
|
205
|
-
|
|
205
|
+
Each marker must satisfy ALL of:
|
|
206
|
+
|
|
207
|
+
- `<artifact-type>` is one of the fixed taxonomy: `screenshot`, `recording`, `http-transcript`, `cli-output`, `log-snippet`, `db-query-output`, `perf-trace`, `test-run-log`, `deploy-log`, `state-dump`. (The legacy `[SCREENSHOT: name]` form is accepted as `screenshot`.)
|
|
208
|
+
- `<name>` is kebab-case and unique within the item.
|
|
209
|
+
|
|
210
|
+
**A marker names an artifact, not an assertion.** An untyped marker (`[EVIDENCE: load-failure-handled-gracefully]`) is an assertion label with nothing to capture and must FAIL, with a remediation that shows the typed transformation (e.g. → `[EVIDENCE: screenshot: load-failure-error-state]`, `[EVIDENCE: perf-trace: pipeline-load-tti]`).
|
|
211
|
+
|
|
212
|
+
FAIL when the Validation Journey is present but declares zero markers, when any marker is untyped or uses a type outside the taxonomy, or when any name is empty, duplicated, or not kebab-case. A behavior-changing work unit SHOULD declare both a success marker and an error/edge marker; a journey with only one marker passes but the remediation should recommend adding the error/edge case.
|
|
206
213
|
|
|
207
214
|
This gate depends on S11. It is `N/A` for containers — a **Project** (the Epic equivalent), or any item with open child work (coordination containers, not work units) — and for leaf units with `runtime_behavior_change = false` (doc-only / config-only / type-only). If S11 fails because the Validation Journey is absent, S14 also FAILs (there is no manifest to bind) with remediation pointing back to `lisa-linear-add-journey`.
|
|
208
215
|
|
|
@@ -59,7 +59,7 @@ The **Rails** ops-specialist composes a different subset (`ops-run-local`, `ops-
|
|
|
59
59
|
After report, file what was found — **only when run standalone**, never under `--report-only`/`--dry-run` and never when nested inside `lisa-verify` (which passes `--report-only`):
|
|
60
60
|
|
|
61
61
|
- **Anomalies** (live signals over the conservative bar) → `Bug` leaves. **Gaps** (in-scope MISSING rubric dimensions) → `Task`/`Improvement` leaves.
|
|
62
|
-
- Every ticket is filed via the vendor-neutral `lisa-tracker-write` shim with `build_ready: true` (never a vendor write skill directly), as a **single-repo leaf** stamped `repo:<current>`, with a real three-audience description, Gherkin AC, Target Backend Environment, and a Validation Journey + `EVIDENCE
|
|
62
|
+
- Every ticket is filed via the vendor-neutral `lisa-tracker-write` shim with `build_ready: true` (never a vendor write skill directly), as a **single-repo leaf** stamped `repo:<current>`, with a real three-audience description, Gherkin AC, Target Backend Environment, and a Validation Journey + typed `[EVIDENCE: <artifact-type>: <name>]` marker (e.g. `[EVIDENCE: log-snippet: alert-cleared]`) so it passes the `tracker-validate` gates.
|
|
63
63
|
- **Idempotent:** embed the `<!-- lisa:monitor-finding: <fingerprint> -->` sentinel and search-before-create; never duplicate a live or just-resolved finding.
|
|
64
64
|
- **Capped** at `max_candidates` (default 20), `core`/high-severity first; report how many were filed vs dropped.
|
|
65
65
|
- **`--dry-run`** previews would-file tickets and creates nothing. **`--all-gaps`** widens gap filing to `recommended` tiers.
|
|
@@ -50,8 +50,8 @@ The harness performs the acceptance check in three phases:
|
|
|
50
50
|
|
|
51
51
|
Capture the harness JSON output as:
|
|
52
52
|
|
|
53
|
-
- `[EVIDENCE: marker-count-one]` from the first and second marker-count checks.
|
|
54
|
-
- `[EVIDENCE: memory-recreated-after-rerun]` from the missing-memory variant.
|
|
53
|
+
- `[EVIDENCE: cli-output: marker-count-one]` from the first and second marker-count checks.
|
|
54
|
+
- `[EVIDENCE: cli-output: memory-recreated-after-rerun]` from the missing-memory variant.
|
|
55
55
|
|
|
56
56
|
The run passes only when all reported counts are `1`, the issue URL is the same across phases, and
|
|
57
57
|
`memoryRecreated` and `memoryFieldsRecorded` are `true` when `--memory-file` is supplied.
|
|
@@ -23,5 +23,5 @@ See the `config-resolution` rule for configuration and dispatch table.
|
|
|
23
23
|
|
|
24
24
|
## Rules
|
|
25
25
|
|
|
26
|
-
- The Validation Journey content format is identical across all vendors (markdown sections with `[EVIDENCE: name]` markers). The only difference is how the section is appended — JIRA via `editJiraIssue` (Jira wiki markup), GitHub via `gh issue edit --body-file` (markdown), Linear via `save_issue` (markdown).
|
|
26
|
+
- The Validation Journey content format is identical across all vendors (markdown sections with typed `[EVIDENCE: <artifact-type>: <name>]` markers per the `verification` rule taxonomy). The only difference is how the section is appended — JIRA via `editJiraIssue` (Jira wiki markup), GitHub via `gh issue edit --body-file` (markdown), Linear via `save_issue` (markdown).
|
|
27
27
|
- If the ticket already has a Validation Journey, the vendor skill reports it and stops. This shim does not retry.
|
|
@@ -27,7 +27,7 @@ See the `config-resolution` rule for configuration and dispatch table.
|
|
|
27
27
|
- The GitHub `pr-assets` release lives on the implementation repo (the one with the PR), regardless of which tracker hosts the ticket/issue. All vendor skills upload there.
|
|
28
28
|
- Never post evidence to a different ticket than the one named — `$ARGUMENTS` is the source of truth.
|
|
29
29
|
- Never invent a verify-specific usage footer. Evidence artifact usage must flow through `lisa-usage-accounting`, preserve the canonical `## Lisa Usage` section, and surface `source: unavailable` explicitly when the runtime cannot provide trustworthy numbers.
|
|
30
|
-
- **Evidence-manifest gate (leaf work units).** Before dispatching to a vendor skill that transitions the ticket, confirm `EVIDENCE_DIR` contains a non-empty artifact for every `[EVIDENCE: name]` marker declared in the ticket's Validation Journey. If any declared marker has no captured artifact
|
|
30
|
+
- **Evidence-manifest gate (leaf work units).** Before dispatching to a vendor skill that transitions the ticket, confirm `EVIDENCE_DIR` contains a non-empty artifact **of the declared type** for every typed `[EVIDENCE: <artifact-type>: <name>]` marker declared in the ticket's Validation Journey — a `screenshot` marker needs an actual image, an `http-transcript` marker needs the request + response text, a `perf-trace` marker needs measured numbers; a prose claim satisfies nothing. If any declared marker has no captured artifact, an empty one, or one whose content/extension does not match its declared type, stop and report the offending markers by name instead of posting — a leaf work unit (Bug / Task / Sub-task / Improvement) may not advance to its review/Done state with an unsatisfied manifest (see the "Per-Work-Unit Evidence Contract" in the `verification` rule). Epics / Stories / Spikes, and leaf units without a Validation Journey, are exempt.
|
|
31
31
|
|
|
32
32
|
## UI Evidence Checklist (when work is UI-visible)
|
|
33
33
|
|
|
@@ -76,7 +76,7 @@ If auto-merge is enabled while the regression spec is still in flight, disable a
|
|
|
76
76
|
|
|
77
77
|
After each empirical verification produces PASS evidence, invoke the `codify-verification` skill to encode the verification as an automated regression test. The manual proof becomes a repeatable check that catches future regressions.
|
|
78
78
|
|
|
79
|
-
The `codify-verification` skill maps the verification type to the appropriate framework (Playwright for browser/UI, integration test for API/DB/auth, benchmark for performance, etc.), generates a deterministic test that asserts the same observable outcome the verification just confirmed, runs it in isolation to confirm PASS, and commits it in the same PR as the change.
|
|
79
|
+
The `codify-verification` skill maps the verification type to the appropriate framework (Playwright for browser/UI, integration test for API/DB/auth, benchmark for performance, etc.), generates a deterministic test that asserts the same observable outcome the verification just confirmed, runs it in isolation to confirm PASS, and commits it in the same PR as the change. For **frontend work**, codification is dual-runner: a Playwright spec in the project's Playwright test runner AND a Maestro flow in the Maestro test runner whenever the project supports Maestro (`.maestro/` directory, `maestro:test` script, or Maestro CI workflow) — both encoding the same verified journey, neither a substitute for the other.
|
|
80
80
|
|
|
81
81
|
Codification is mandatory for every empirical verification type with one exception set: PR, Documentation, Deploy, and Investigate-Only spikes — those have inherently non-behavioral proof. For every other type, skipping codification is not allowed; if codification is genuinely impossible (e.g., the test framework does not exist and cannot be installed in scope), escalate via the Escalation Protocol rather than silently skipping.
|
|
82
82
|
|
|
@@ -236,7 +236,7 @@ Agents must follow this sequence unless explicitly instructed otherwise:
|
|
|
236
236
|
8. Implement the change.
|
|
237
237
|
9. Execute verification plan — run the actual system and observe results.
|
|
238
238
|
10. Collect proof artifacts.
|
|
239
|
-
11. Codify — for each passing empirical verification, invoke `codify-verification` to encode it as a regression test (Playwright for UI, integration test for API/DB/auth, benchmark for performance, etc.) and commit the test in the same PR.
|
|
239
|
+
11. Codify — for each passing empirical verification, invoke `codify-verification` to encode it as a regression test (Playwright for UI, integration test for API/DB/auth, benchmark for performance, etc.) and commit the test in the same PR. Frontend work codifies into every supported UI runner: Playwright spec + Maestro flow when the project supports Maestro (see the dual-runner section of `codify-verification`).
|
|
240
240
|
12. Run spec conformance — build coverage matrix against the spec source (plan/ticket/issue), flag scope creep and untraceable changes, produce verdict.
|
|
241
241
|
13. Summarize what changed, what was verified, what was codified, conformance verdict, and remaining risk.
|
|
242
242
|
14. Label the result with a verification level.
|
|
@@ -250,7 +250,7 @@ Agents must follow this sequence unless explicitly instructed otherwise:
|
|
|
250
250
|
3. **If verification fails**: Fix and re-run, don't mark complete
|
|
251
251
|
4. **If verification blocked** (missing tools, services, etc.): Mark as blocked, not complete
|
|
252
252
|
5. **Must not be dependent on CI/CD** if necessary, you may use local deploy methods found in the project manifest, but the verification methods must be listed in the pull request and therefore cannot be dependent on CI/CD completing
|
|
253
|
-
6. **Evidence manifest satisfied (leaf work units)**: For a leaf work unit (Bug / Task / Sub-task / Improvement) whose ticket carries a Validation Journey, do not mark the ticket complete or transition it out of in-progress until every `[EVIDENCE: name]` marker declared on the ticket has a corresponding captured, non-empty artifact attached to the ticket. A missing or
|
|
253
|
+
6. **Evidence manifest satisfied (leaf work units)**: For a leaf work unit (Bug / Task / Sub-task / Improvement) whose ticket carries a Validation Journey, do not mark the ticket complete or transition it out of in-progress until every typed `[EVIDENCE: <artifact-type>: <name>]` marker declared on the ticket has a corresponding captured, non-empty artifact **of the declared type** attached to the ticket (an image for `screenshot`, request + response for `http-transcript`, measured output for `perf-trace`, …). A missing, empty, or wrong-type artifact for any declared marker blocks completion exactly like a failed verification — fix and re-capture, or escalate; never close with an unsatisfied manifest. Epics / Stories / Spikes are exempt (coordination containers, not work units).
|
|
254
254
|
7. **No artifact-only completion for required runtime verification**: If empirical verification is required and cannot run because credentials are missing, do not mark the item done on artifact-only evidence. Exhaust the credential lookup order first; if still blocked, post the blocker comment, move the item to the configured blocked state, and apply the configured `needs-human` / `human-review` label.
|
|
255
255
|
|
|
256
256
|
---
|
|
@@ -357,7 +357,7 @@ A task is done only when:
|
|
|
357
357
|
- Required verification surfaces and tooling surfaces are used or explicitly unavailable
|
|
358
358
|
- Proof artifacts are captured
|
|
359
359
|
- Every passing empirical verification is codified as a regression test (or has an explicit, documented skip reason from the allowed set)
|
|
360
|
-
- For a leaf work unit, every `[EVIDENCE: name]` marker declared in its Validation Journey has a captured, non-empty artifact attached to the ticket (the evidence manifest is fully satisfied)
|
|
360
|
+
- For a leaf work unit, every typed `[EVIDENCE: <artifact-type>: <name>]` marker declared in its Validation Journey has a captured, non-empty artifact of the declared type attached to the ticket (the evidence manifest is fully satisfied)
|
|
361
361
|
- Spec conformance verdict is `CONFORMS` (not `PARTIAL`, not `DIVERGES`)
|
|
362
362
|
- Verification level is declared
|
|
363
363
|
- Risks and gaps are documented
|
|
@@ -35,7 +35,7 @@ Treat the first successful lead-spawn request (or, on the Codex fallback, the fi
|
|
|
35
35
|
|
|
36
36
|
Execute the **Verify** flow as defined in the `intent-routing` rule (loaded via the lisa plugin). The flow includes:
|
|
37
37
|
|
|
38
|
-
1. **Pre-flight: codification gate** — confirm that every passing local empirical verification on this branch was codified as a regression test (the Implement flow's codify step). If any verification has no committed test and no allowed skip reason (PR / Documentation / Deploy / Investigate-Only), invoke `codify-verification` now and amend the PR before shipping. A change cannot ship until its verifications are guarded.
|
|
38
|
+
1. **Pre-flight: codification gate** — confirm that every passing local empirical verification on this branch was codified as a regression test (the Implement flow's codify step). If any verification has no committed test and no allowed skip reason (PR / Documentation / Deploy / Investigate-Only), invoke `codify-verification` now and amend the PR before shipping. For frontend work the gate is dual-runner: a Playwright spec AND, when the project supports Maestro (`.maestro/`, `maestro:test` script, or Maestro CI workflow), a Maestro flow for the same journey — a missing runner needs a recorded absence or a linked build-ready follow-up ticket, never a silent skip. A change cannot ship until its verifications are guarded.
|
|
39
39
|
2. **Commit** any pending changes via `lisa-git-commit`
|
|
40
40
|
3. **Push and PR** via `lisa-git-submit-pr`
|
|
41
41
|
4. **Review loop** — handle CodeRabbit / human review comments via `lisa-pull-request-review`
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.214.0",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.214.0",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, across Claude and Codex.",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.214.0",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.214.0",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "lisa-openclaw",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.214.0",
|
|
4
4
|
"description": "Connect staff roles to Telegram or Slack via OpenClaw — facilitator/specialist hub-and-spoke routing and repo-coding topics, for Claude Code and Codex",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Cody Swann"
|
|
@@ -38,7 +38,7 @@ Before starting the journey, verify each prerequisite listed in the parsed outpu
|
|
|
38
38
|
|
|
39
39
|
### Step 3: Execute Steps
|
|
40
40
|
|
|
41
|
-
Execute each step sequentially. At each step with an evidence marker (`[SCREENSHOT: name]
|
|
41
|
+
Execute each step sequentially. At each step with an evidence marker (`[SCREENSHOT: name]`, or typed `[EVIDENCE: <artifact-type>: <name>]` per the `verification` rule — `[SCREENSHOT: name]` is shorthand for `[EVIDENCE: screenshot: name]`), capture an artifact of the declared type.
|
|
42
42
|
|
|
43
43
|
The execution method depends on the project type:
|
|
44
44
|
- **UI projects**: Use Playwright MCP browser tools, capture screenshots at each viewport
|
|
@@ -38,7 +38,7 @@ Before starting the journey, verify each prerequisite listed in the parsed outpu
|
|
|
38
38
|
|
|
39
39
|
### Step 3: Execute Steps
|
|
40
40
|
|
|
41
|
-
Execute each step sequentially. At each step with an evidence marker (`[SCREENSHOT: name]
|
|
41
|
+
Execute each step sequentially. At each step with an evidence marker (`[SCREENSHOT: name]`, or typed `[EVIDENCE: <artifact-type>: <name>]` per the `verification` rule — `[SCREENSHOT: name]` is shorthand for `[EVIDENCE: screenshot: name]`), capture an artifact of the declared type.
|
|
42
42
|
|
|
43
43
|
The execution method depends on the project type:
|
|
44
44
|
- **UI projects**: Use Playwright MCP browser tools, capture screenshots at each viewport
|
|
@@ -38,7 +38,7 @@ Before starting the journey, verify each prerequisite listed in the parsed outpu
|
|
|
38
38
|
|
|
39
39
|
### Step 3: Execute Steps
|
|
40
40
|
|
|
41
|
-
Execute each step sequentially. At each step with an evidence marker (`[SCREENSHOT: name]
|
|
41
|
+
Execute each step sequentially. At each step with an evidence marker (`[SCREENSHOT: name]`, or typed `[EVIDENCE: <artifact-type>: <name>]` per the `verification` rule — `[SCREENSHOT: name]` is shorthand for `[EVIDENCE: screenshot: name]`), capture an artifact of the declared type.
|
|
42
42
|
|
|
43
43
|
The execution method depends on the project type:
|
|
44
44
|
- **UI projects**: Use Playwright MCP browser tools, capture screenshots at each viewport
|
|
@@ -38,7 +38,7 @@ Before starting the journey, verify each prerequisite listed in the parsed outpu
|
|
|
38
38
|
|
|
39
39
|
### Step 3: Execute Steps
|
|
40
40
|
|
|
41
|
-
Execute each step sequentially. At each step with an evidence marker (`[SCREENSHOT: name]
|
|
41
|
+
Execute each step sequentially. At each step with an evidence marker (`[SCREENSHOT: name]`, or typed `[EVIDENCE: <artifact-type>: <name>]` per the `verification` rule — `[SCREENSHOT: name]` is shorthand for `[EVIDENCE: screenshot: name]`), capture an artifact of the declared type.
|
|
42
42
|
|
|
43
43
|
The execution method depends on the project type:
|
|
44
44
|
- **UI projects**: Use Playwright MCP browser tools, capture screenshots at each viewport
|
|
@@ -38,7 +38,7 @@ Before starting the journey, verify each prerequisite listed in the parsed outpu
|
|
|
38
38
|
|
|
39
39
|
### Step 3: Execute Steps
|
|
40
40
|
|
|
41
|
-
Execute each step sequentially. At each step with an evidence marker (`[SCREENSHOT: name]
|
|
41
|
+
Execute each step sequentially. At each step with an evidence marker (`[SCREENSHOT: name]`, or typed `[EVIDENCE: <artifact-type>: <name>]` per the `verification` rule — `[SCREENSHOT: name]` is shorthand for `[EVIDENCE: screenshot: name]`), capture an artifact of the declared type.
|
|
42
42
|
|
|
43
43
|
The execution method depends on the project type:
|
|
44
44
|
- **UI projects**: Use Playwright MCP browser tools, capture screenshots at each viewport
|