@codyswann/lisa 2.77.2 → 2.78.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.77.2",
85
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.0",
4
4
  "description": "Universal governance: agents, skills, commands, hooks, and rules for all projects.",
5
5
  "author": {
6
6
  "name": "Cody Swann"
@@ -140,6 +140,59 @@ every vendor Lisa supports.
140
140
  - `FAIL` when no supported substrate can prove read access for the configured tracker/source, or
141
141
  when the configured vendor target is unreadable from the current runtime.
142
142
 
143
+ ### Minimum GitHub Project coordination checks
144
+
145
+ When `github.projects.v2` is configured, doctor must run one additional read-only coordination
146
+ check instead of treating the config block as implicitly ready.
147
+
148
+ 1. **Delegate through the shared chokepoint**
149
+ - Call `lisa:github-project-v2` in read-only resolution mode:
150
+
151
+ ```text
152
+ operation: resolve-project
153
+ ```
154
+
155
+ - Do not inline ad-hoc Project GraphQL in doctor. Setup, doctor, writers, and linked-PR flows
156
+ must all read the same owner/access contract from the shared utility.
157
+ 2. **Preserve exact namespace + access failures**
158
+ - Enforce the v1 namespace rule exactly as documented by the shared utility. If
159
+ `github.projects.v2.owner.slug` does not match `github.org`, report:
160
+
161
+ ```yaml
162
+ code: project_namespace_mismatch
163
+ message: "github.projects.v2.owner.slug must match github.org in v1"
164
+ remediation: "Use a Project owned by <github.org> or remove github.projects.v2."
165
+ ```
166
+
167
+ - For owner-access or GraphQL failures, preserve the exact GitHub / GraphQL failure text in the
168
+ observed output. Examples include missing Project, `Resource not accessible by integration`,
169
+ unsupported owner kind, or a wrong owner/number pair.
170
+ 3. **Report exact remediation paths**
171
+ - Doctor must make the next operator action explicit. At minimum, say whether they need to:
172
+ 1. choose a Project owned by the tracked repo namespace,
173
+ 2. grant the token Project read/write access,
174
+ 3. correct the configured Project number/owner, or
175
+ 4. remove `github.projects.v2` when coordination is not required.
176
+ 4. **Map shared utility outcomes into doctor severity**
177
+ - `required: false` => doctor `WARN`. Repository-local GitHub issue/PR flows remain usable while
178
+ Project coordination is degraded.
179
+ - `required: true` => doctor `FAIL`. The same Project validation failure blocks Lisa readiness
180
+ because coordination was configured as required.
181
+
182
+ Good output examples:
183
+
184
+ ```text
185
+ WARN github.projects.v2: Resource not accessible by integration
186
+ Observed: exact GitHub / GraphQL failure text preserved from resolve-project.
187
+ Remediation: grant the token Project read/write access or remove github.projects.v2.required.
188
+ Repository-local GitHub issue/PR flows remain usable; Project coordination is disabled.
189
+ ```
190
+
191
+ ```text
192
+ FAIL github.projects.v2: github.projects.v2.owner.slug must match github.org in v1
193
+ Remediation: use a Project owned by CodySwannGT or remove github.projects.v2.
194
+ ```
195
+
143
196
  ## Output contract
144
197
 
145
198
  The final report must:
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "lisa-cdk",
3
- "version": "2.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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.77.2",
3
+ "version": "2.78.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"
@@ -140,6 +140,59 @@ every vendor Lisa supports.
140
140
  - `FAIL` when no supported substrate can prove read access for the configured tracker/source, or
141
141
  when the configured vendor target is unreadable from the current runtime.
142
142
 
143
+ ### Minimum GitHub Project coordination checks
144
+
145
+ When `github.projects.v2` is configured, doctor must run one additional read-only coordination
146
+ check instead of treating the config block as implicitly ready.
147
+
148
+ 1. **Delegate through the shared chokepoint**
149
+ - Call `lisa:github-project-v2` in read-only resolution mode:
150
+
151
+ ```text
152
+ operation: resolve-project
153
+ ```
154
+
155
+ - Do not inline ad-hoc Project GraphQL in doctor. Setup, doctor, writers, and linked-PR flows
156
+ must all read the same owner/access contract from the shared utility.
157
+ 2. **Preserve exact namespace + access failures**
158
+ - Enforce the v1 namespace rule exactly as documented by the shared utility. If
159
+ `github.projects.v2.owner.slug` does not match `github.org`, report:
160
+
161
+ ```yaml
162
+ code: project_namespace_mismatch
163
+ message: "github.projects.v2.owner.slug must match github.org in v1"
164
+ remediation: "Use a Project owned by <github.org> or remove github.projects.v2."
165
+ ```
166
+
167
+ - For owner-access or GraphQL failures, preserve the exact GitHub / GraphQL failure text in the
168
+ observed output. Examples include missing Project, `Resource not accessible by integration`,
169
+ unsupported owner kind, or a wrong owner/number pair.
170
+ 3. **Report exact remediation paths**
171
+ - Doctor must make the next operator action explicit. At minimum, say whether they need to:
172
+ 1. choose a Project owned by the tracked repo namespace,
173
+ 2. grant the token Project read/write access,
174
+ 3. correct the configured Project number/owner, or
175
+ 4. remove `github.projects.v2` when coordination is not required.
176
+ 4. **Map shared utility outcomes into doctor severity**
177
+ - `required: false` => doctor `WARN`. Repository-local GitHub issue/PR flows remain usable while
178
+ Project coordination is degraded.
179
+ - `required: true` => doctor `FAIL`. The same Project validation failure blocks Lisa readiness
180
+ because coordination was configured as required.
181
+
182
+ Good output examples:
183
+
184
+ ```text
185
+ WARN github.projects.v2: Resource not accessible by integration
186
+ Observed: exact GitHub / GraphQL failure text preserved from resolve-project.
187
+ Remediation: grant the token Project read/write access or remove github.projects.v2.required.
188
+ Repository-local GitHub issue/PR flows remain usable; Project coordination is disabled.
189
+ ```
190
+
191
+ ```text
192
+ FAIL github.projects.v2: github.projects.v2.owner.slug must match github.org in v1
193
+ Remediation: use a Project owned by CodySwannGT or remove github.projects.v2.
194
+ ```
195
+
143
196
  ## Output contract
144
197
 
145
198
  The final report must: