@codyswann/lisa 2.78.0 → 2.79.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 CHANGED
@@ -82,7 +82,7 @@
82
82
  "lodash": ">=4.18.1"
83
83
  },
84
84
  "name": "@codyswann/lisa",
85
- "version": "2.78.0",
85
+ "version": "2.79.0",
86
86
  "description": "Claude Code governance framework that applies guardrails, guidance, and automated enforcement to projects",
87
87
  "main": "dist/index.js",
88
88
  "exports": {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa",
3
- "version": "2.78.0",
3
+ "version": "2.79.0",
4
4
  "description": "Universal governance — agents, skills, commands, hooks, and rules for all projects",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa",
3
- "version": "2.78.0",
3
+ "version": "2.79.0",
4
4
  "description": "Universal governance: agents, skills, commands, hooks, and rules for all projects.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -459,6 +459,38 @@ preflight for those configured vendors only.
459
459
  unreadable after all supported probes, is a doctor `FAIL`.
460
460
  - A reachable vendor with only auxiliary-substrate degradation is a doctor `WARN`.
461
461
 
462
+ ### Doctor automation readiness
463
+
464
+ Doctor's automation-readiness group is also read-only. It answers "could this repo safely support
465
+ Lisa's recurring automations from the current runtime?" without creating, editing, deleting, or
466
+ reconciling any automation state.
467
+
468
+ 1. **Resolve the automation queues from merged config**
469
+ - Resolve the PRD automation queue from merged `source`.
470
+ - Resolve the build automation queue from merged `tracker`.
471
+ - Resolve repair-intake from the same queue-detection contract `lisa:intake` /
472
+ `lisa:repair-intake` already use; doctor should not invent a second queue schema.
473
+ - If an automation's queue cannot be resolved because `source`, `tracker`, or the selected
474
+ vendor's required keys are still missing after merge, that automation is a doctor `FAIL`.
475
+ Unattended runs would be ambiguous before the scheduler is even involved.
476
+ 2. **Check native scheduler availability by runtime, read-only**
477
+ - Codex automation support means the runtime exposes the native automations surface
478
+ (`automation_update`) that `setup-automations` depends on.
479
+ - Claude automation support means `/schedule` is available.
480
+ - Other runtimes should be reported explicitly as having no known native Lisa scheduler unless a
481
+ supported surface is observable.
482
+ - Doctor must not create a throwaway automation just to prove the scheduler exists.
483
+ 3. **Match exploratory automation support to the repo's shipped stack**
484
+ - `exploratory-bugs` exists only for stacks that ship `exploratory-qa` (`expo`, `rails`,
485
+ `harper-fabric`). If the repo lacks that command surface, doctor reports the automation as
486
+ `SKIP`, not `FAIL`.
487
+ - `exploratory-prds` follows the normal queue-resolution rules; if its prerequisites are
488
+ unresolved, preserve the exact blocking config fact.
489
+ 4. **Severity**
490
+ - Queue resolution failure is a doctor `FAIL`.
491
+ - Missing native scheduler support in an otherwise manually-usable repo is a doctor `WARN`.
492
+ - Intentional absence of an optional exploratory automation surface is a doctor `SKIP`.
493
+
462
494
  ## Skill mapping
463
495
 
464
496
  The shim → vendor mapping is fixed:
@@ -193,6 +193,47 @@ FAIL github.projects.v2: github.projects.v2.owner.slug must match github.org in
193
193
  Remediation: use a Project owned by CodySwannGT or remove github.projects.v2.
194
194
  ```
195
195
 
196
+ ### Minimum automation-readiness checks
197
+
198
+ Doctor's automation-readiness group stays read-only: it audits whether this repo and runtime could
199
+ support `/lisa:setup-automations` and the resulting recurring jobs, but it does **not** create,
200
+ edit, delete, or reconcile automations on the default doctor path.
201
+
202
+ 1. **Resolve the queue inputs exactly as setup-automations would**
203
+ - Resolve the PRD queue from merged `source`.
204
+ - Resolve the build queue from merged `tracker`.
205
+ - Resolve the repair queue from the same queue-detection rules as `lisa:repair-intake`
206
+ (identical source-dispatch contract to `lisa:intake`).
207
+ - If any automation would require guessing because `source`, `tracker`, or their vendor keys are
208
+ still unresolved after the config-readiness audit, report that automation as `FAIL` rather
209
+ than pretending scheduling can proceed safely.
210
+ 2. **Audit the current runtime's native scheduler surface without mutating it**
211
+ - Codex: doctor should report whether the runtime exposes the native automations surface
212
+ (`automation_update`) needed by `/lisa:setup-automations`.
213
+ - Claude: doctor should report whether the runtime exposes `/schedule`.
214
+ - Other runtimes: doctor should explicitly say that no native Lisa scheduler is known for the
215
+ current runtime.
216
+ - This is observability only. Never create a placeholder automation just to prove the scheduler
217
+ works.
218
+ 3. **Check exploratory-automation support by shipped stack surface**
219
+ - `exploratory-bugs` is supported only when the project ships an `exploratory-qa` command
220
+ surface (the `expo`, `rails`, or `harper-fabric` stacks today). Reuse the same stack/support
221
+ rule documented by `setup-automations`; do not invent exploratory jobs for stacks that do not
222
+ ship that command.
223
+ - When the repo does not ship `exploratory-qa`, report `exploratory-bugs` as `SKIP` with the
224
+ reason.
225
+ - `exploratory-prds` remains applicable when the repo can run `/lisa:project-ideation`; if its
226
+ queue/config prerequisites are unresolved, report the exact blocking config fact.
227
+ 4. **Severity ladder**
228
+ - `PASS` when an automation's queue inputs are resolvable and the runtime exposes the required
229
+ native scheduler surface for that automation.
230
+ - `WARN` when Lisa remains usable manually, but the current runtime has no native scheduler
231
+ surface for unattended runs, so automation setup would be unavailable from here.
232
+ - `SKIP` when an optional automation is intentionally unsupported for this repo surface (for
233
+ example, `exploratory-bugs` on a stack with no `exploratory-qa` command).
234
+ - `FAIL` when the repo's config cannot resolve the queue that an automation needs, because that
235
+ would make unattended runs ambiguous or broken before scheduling even starts.
236
+
196
237
  ## Output contract
197
238
 
198
239
  The final report must:
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-cdk",
3
- "version": "2.78.0",
3
+ "version": "2.79.0",
4
4
  "description": "AWS CDK-specific plugin",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-cdk",
3
- "version": "2.78.0",
3
+ "version": "2.79.0",
4
4
  "description": "AWS CDK-specific Lisa plugin.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-expo",
3
- "version": "2.78.0",
3
+ "version": "2.79.0",
4
4
  "description": "Expo/React Native-specific skills, agents, rules, and MCP servers",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-expo",
3
- "version": "2.78.0",
3
+ "version": "2.79.0",
4
4
  "description": "Expo and React Native-specific skills, agents, rules, and MCP servers.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-harper-fabric",
3
- "version": "2.78.0",
3
+ "version": "2.79.0",
4
4
  "description": "Harper/Fabric-specific rules for TypeScript component apps",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-harper-fabric",
3
- "version": "2.78.0",
3
+ "version": "2.79.0",
4
4
  "description": "Harper/Fabric-specific Lisa rules for TypeScript component apps.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-nestjs",
3
- "version": "2.78.0",
3
+ "version": "2.79.0",
4
4
  "description": "NestJS-specific skills (GraphQL, TypeORM) and hooks (migration write-protection)",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-nestjs",
3
- "version": "2.78.0",
3
+ "version": "2.79.0",
4
4
  "description": "NestJS-specific skills and migration write-protection hooks.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-openclaw",
3
- "version": "2.78.0",
3
+ "version": "2.79.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.78.0",
3
+ "version": "2.79.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-rails",
3
- "version": "2.78.0",
3
+ "version": "2.79.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-rails",
3
- "version": "2.78.0",
3
+ "version": "2.79.0",
4
4
  "description": "Ruby on Rails-specific skills and hooks for RuboCop 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.78.0",
3
+ "version": "2.79.0",
4
4
  "description": "TypeScript-specific hooks — Prettier formatting, ESLint 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.78.0",
3
+ "version": "2.79.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-wiki",
3
- "version": "2.78.0",
3
+ "version": "2.79.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.78.0",
3
+ "version": "2.79.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"
@@ -459,6 +459,38 @@ preflight for those configured vendors only.
459
459
  unreadable after all supported probes, is a doctor `FAIL`.
460
460
  - A reachable vendor with only auxiliary-substrate degradation is a doctor `WARN`.
461
461
 
462
+ ### Doctor automation readiness
463
+
464
+ Doctor's automation-readiness group is also read-only. It answers "could this repo safely support
465
+ Lisa's recurring automations from the current runtime?" without creating, editing, deleting, or
466
+ reconciling any automation state.
467
+
468
+ 1. **Resolve the automation queues from merged config**
469
+ - Resolve the PRD automation queue from merged `source`.
470
+ - Resolve the build automation queue from merged `tracker`.
471
+ - Resolve repair-intake from the same queue-detection contract `lisa:intake` /
472
+ `lisa:repair-intake` already use; doctor should not invent a second queue schema.
473
+ - If an automation's queue cannot be resolved because `source`, `tracker`, or the selected
474
+ vendor's required keys are still missing after merge, that automation is a doctor `FAIL`.
475
+ Unattended runs would be ambiguous before the scheduler is even involved.
476
+ 2. **Check native scheduler availability by runtime, read-only**
477
+ - Codex automation support means the runtime exposes the native automations surface
478
+ (`automation_update`) that `setup-automations` depends on.
479
+ - Claude automation support means `/schedule` is available.
480
+ - Other runtimes should be reported explicitly as having no known native Lisa scheduler unless a
481
+ supported surface is observable.
482
+ - Doctor must not create a throwaway automation just to prove the scheduler exists.
483
+ 3. **Match exploratory automation support to the repo's shipped stack**
484
+ - `exploratory-bugs` exists only for stacks that ship `exploratory-qa` (`expo`, `rails`,
485
+ `harper-fabric`). If the repo lacks that command surface, doctor reports the automation as
486
+ `SKIP`, not `FAIL`.
487
+ - `exploratory-prds` follows the normal queue-resolution rules; if its prerequisites are
488
+ unresolved, preserve the exact blocking config fact.
489
+ 4. **Severity**
490
+ - Queue resolution failure is a doctor `FAIL`.
491
+ - Missing native scheduler support in an otherwise manually-usable repo is a doctor `WARN`.
492
+ - Intentional absence of an optional exploratory automation surface is a doctor `SKIP`.
493
+
462
494
  ## Skill mapping
463
495
 
464
496
  The shim → vendor mapping is fixed:
@@ -193,6 +193,47 @@ FAIL github.projects.v2: github.projects.v2.owner.slug must match github.org in
193
193
  Remediation: use a Project owned by CodySwannGT or remove github.projects.v2.
194
194
  ```
195
195
 
196
+ ### Minimum automation-readiness checks
197
+
198
+ Doctor's automation-readiness group stays read-only: it audits whether this repo and runtime could
199
+ support `/lisa:setup-automations` and the resulting recurring jobs, but it does **not** create,
200
+ edit, delete, or reconcile automations on the default doctor path.
201
+
202
+ 1. **Resolve the queue inputs exactly as setup-automations would**
203
+ - Resolve the PRD queue from merged `source`.
204
+ - Resolve the build queue from merged `tracker`.
205
+ - Resolve the repair queue from the same queue-detection rules as `lisa:repair-intake`
206
+ (identical source-dispatch contract to `lisa:intake`).
207
+ - If any automation would require guessing because `source`, `tracker`, or their vendor keys are
208
+ still unresolved after the config-readiness audit, report that automation as `FAIL` rather
209
+ than pretending scheduling can proceed safely.
210
+ 2. **Audit the current runtime's native scheduler surface without mutating it**
211
+ - Codex: doctor should report whether the runtime exposes the native automations surface
212
+ (`automation_update`) needed by `/lisa:setup-automations`.
213
+ - Claude: doctor should report whether the runtime exposes `/schedule`.
214
+ - Other runtimes: doctor should explicitly say that no native Lisa scheduler is known for the
215
+ current runtime.
216
+ - This is observability only. Never create a placeholder automation just to prove the scheduler
217
+ works.
218
+ 3. **Check exploratory-automation support by shipped stack surface**
219
+ - `exploratory-bugs` is supported only when the project ships an `exploratory-qa` command
220
+ surface (the `expo`, `rails`, or `harper-fabric` stacks today). Reuse the same stack/support
221
+ rule documented by `setup-automations`; do not invent exploratory jobs for stacks that do not
222
+ ship that command.
223
+ - When the repo does not ship `exploratory-qa`, report `exploratory-bugs` as `SKIP` with the
224
+ reason.
225
+ - `exploratory-prds` remains applicable when the repo can run `/lisa:project-ideation`; if its
226
+ queue/config prerequisites are unresolved, report the exact blocking config fact.
227
+ 4. **Severity ladder**
228
+ - `PASS` when an automation's queue inputs are resolvable and the runtime exposes the required
229
+ native scheduler surface for that automation.
230
+ - `WARN` when Lisa remains usable manually, but the current runtime has no native scheduler
231
+ surface for unattended runs, so automation setup would be unavailable from here.
232
+ - `SKIP` when an optional automation is intentionally unsupported for this repo surface (for
233
+ example, `exploratory-bugs` on a stack with no `exploratory-qa` command).
234
+ - `FAIL` when the repo's config cannot resolve the queue that an automation needs, because that
235
+ would make unattended runs ambiguous or broken before scheduling even starts.
236
+
196
237
  ## Output contract
197
238
 
198
239
  The final report must: