@codyswann/lisa 1.58.4 → 1.59.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-cdk/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-expo/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-nestjs/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-rails/.claude-plugin/plugin.json +1 -1
- package/plugins/lisa-typescript/.claude-plugin/plugin.json +1 -1
- package/rails/create-only/.github/workflows/claude-nightly-jira-triage.yml +1 -1
- package/typescript/copy-overwrite/.github/GITHUB_ACTIONS.md +44 -2
- package/typescript/create-only/.github/workflows/claude-nightly-jira-triage.yml +1 -1
package/package.json
CHANGED
|
@@ -72,7 +72,7 @@
|
|
|
72
72
|
"axios": ">=1.13.5"
|
|
73
73
|
},
|
|
74
74
|
"name": "@codyswann/lisa",
|
|
75
|
-
"version": "1.
|
|
75
|
+
"version": "1.59.0",
|
|
76
76
|
"description": "Claude Code governance framework that applies guardrails, guidance, and automated enforcement to projects",
|
|
77
77
|
"main": "dist/index.js",
|
|
78
78
|
"exports": {
|
|
@@ -233,6 +233,47 @@ Incrementally lowers ESLint code complexity thresholds toward target minimums:
|
|
|
233
233
|
|
|
234
234
|
Does not modify the `maxLines` threshold. Skips if all metrics are at/below targets. Prevents duplicate PRs.
|
|
235
235
|
|
|
236
|
+
### Claude Nightly Jira Triage (`claude-nightly-jira-triage.yml`)
|
|
237
|
+
|
|
238
|
+
**Triggers**: Cron every 2 hours (all days), manual dispatch
|
|
239
|
+
|
|
240
|
+
**Auto-enables**: When Claude and Jira credentials are configured (`CLAUDE_CODE_OAUTH_TOKEN`, `JIRA_API_TOKEN` secrets and `JIRA_BASE_URL`, `JIRA_USER_EMAIL`, `JIRA_PROJECT_KEY` repository variables). No feature flag needed.
|
|
241
|
+
|
|
242
|
+
Automatically triages untriaged Jira tickets by examining them and posting actionable comments. Supports multi-repo setups where multiple repositories share a single Jira project:
|
|
243
|
+
|
|
244
|
+
1. Fetches untriaged tickets via JQL using repo-scoped labels (`claude-triaged-<repo-name>`, e.g., `claude-triaged-frontend-v2`). Each repo filters by its own label so every repo triages independently
|
|
245
|
+
2. **Relevance Gating**: Searches the local codebase for code related to the ticket. If no relevant code is found, adds the repo-scoped label and skips -- no noise posted to the ticket
|
|
246
|
+
3. **Cross-repo Awareness**: Reads existing comments on the ticket before posting. If another repo already posted triage findings, only adds supplementary findings from this repo's perspective. All comments are prefixed with the repo name (e.g., `*[frontend-v2] Ambiguity detected*`)
|
|
247
|
+
4. **Ambiguity Detection**: Flags vague language, untestable criteria, undefined terms, and missing scope. Posts a comment per ambiguity with a suggested clarifying question
|
|
248
|
+
5. **Edge Case Analysis**: Searches the codebase for related files, checks git history, and identifies boundary conditions, error handling gaps, and integration risks. Posts a consolidated comment referencing only files in this repo
|
|
249
|
+
6. **Verification Methodology**: For each acceptance criterion, specifies a concrete verification method scoped to what this repo can test (e.g., frontend suggests Playwright tests, backend suggests API curl commands). Posts a structured table comment
|
|
250
|
+
7. Labels the ticket with the repo-scoped label (`claude-triaged-<repo-name>`) so it is not reprocessed by this repo
|
|
251
|
+
|
|
252
|
+
**Manual dispatch inputs**:
|
|
253
|
+
- `ticket_key`: Triage a specific ticket by key (e.g., `PROJ-123`)
|
|
254
|
+
- `ticket_count`: Number of tickets to process in batch mode (default: 5)
|
|
255
|
+
|
|
256
|
+
This workflow is read-only — it does not modify code or create PRs. It only reads the codebase and posts Jira comments.
|
|
257
|
+
|
|
258
|
+
**How to activate**:
|
|
259
|
+
|
|
260
|
+
1. Add the secrets in **Settings** > **Secrets and variables** > **Actions** > **Secrets**:
|
|
261
|
+
|
|
262
|
+
| Secret | Description | How to get |
|
|
263
|
+
|--------|-------------|------------|
|
|
264
|
+
| `CLAUDE_CODE_OAUTH_TOKEN` | OAuth token for Claude Code | See `CLAUDE_CODE_OAUTH_TOKEN` in the Core Secrets section below |
|
|
265
|
+
| `JIRA_API_TOKEN` | API token from Atlassian | [Create API token](https://id.atlassian.com/manage-profile/security/api-tokens) |
|
|
266
|
+
|
|
267
|
+
2. Add repository variables in **Settings** > **Secrets and variables** > **Actions** > **Variables**:
|
|
268
|
+
|
|
269
|
+
| Variable | Description | Example |
|
|
270
|
+
|----------|-------------|---------|
|
|
271
|
+
| `JIRA_BASE_URL` | Jira instance base URL | `https://company.atlassian.net` |
|
|
272
|
+
| `JIRA_USER_EMAIL` | Email associated with the API token | `user@company.com` |
|
|
273
|
+
| `JIRA_PROJECT_KEY` | Jira project key for ticket queries | `PROJ` |
|
|
274
|
+
|
|
275
|
+
3. The workflow auto-enables once all three variables and both secrets are set. No feature flag needed.
|
|
276
|
+
|
|
236
277
|
### Auto-update PR Branches (`auto-update-pr-branches.yml`)
|
|
237
278
|
|
|
238
279
|
**Triggers**: Push to `main`, `staging`, or `dev`
|
|
@@ -457,8 +498,6 @@ gpg --export-secret-keys YOUR_KEY_ID | base64 > signing-key.txt
|
|
|
457
498
|
| Secret | Description |
|
|
458
499
|
|--------|-------------|
|
|
459
500
|
| `JIRA_API_TOKEN` | API token from Atlassian |
|
|
460
|
-
| `JIRA_BASE_URL` | Your Jira instance URL (e.g., `https://company.atlassian.net`) |
|
|
461
|
-
| `JIRA_USER_EMAIL` | Email associated with the API token |
|
|
462
501
|
| `JIRA_AUTOMATION_WEBHOOK` | Webhook URL for Jira automation |
|
|
463
502
|
|
|
464
503
|
**How to get JIRA_API_TOKEN**:
|
|
@@ -474,6 +513,9 @@ Variables are non-sensitive configuration values. Set them in **Settings** > **S
|
|
|
474
513
|
|----------|-------------|---------|
|
|
475
514
|
| `ENABLE_CLAUDE_NIGHTLY` | Enable nightly Claude workflows | `true` |
|
|
476
515
|
| `ENABLE_CLAUDE_CODE_REVIEW_RESPONSE` | Enable Claude response to CodeRabbit reviews | `true` |
|
|
516
|
+
| `JIRA_BASE_URL` | Jira instance base URL (enables Jira triage workflow) | `https://company.atlassian.net` |
|
|
517
|
+
| `JIRA_USER_EMAIL` | Email associated with the Jira API token | `user@company.com` |
|
|
518
|
+
| `JIRA_PROJECT_KEY` | Jira project key for ticket queries | `PROJ` |
|
|
477
519
|
| `SENTRY_ORG` | Sentry organization slug | `my-company` |
|
|
478
520
|
| `SENTRY_PROJECT` | Sentry project slug | `frontend-app` |
|
|
479
521
|
|