@codyswann/lisa 1.16.0 → 1.17.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.
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Lisa-Managed Files
|
|
2
|
+
|
|
3
|
+
The following files are managed by Lisa and will be overwritten on every `lisa` run. Never edit them directly. Where a local override exists, edit that instead.
|
|
4
|
+
|
|
5
|
+
## Files with local overrides (edit the override, not the managed file)
|
|
6
|
+
|
|
7
|
+
| Managed File (do not edit) | Local Override (edit this instead) |
|
|
8
|
+
|---|---|
|
|
9
|
+
| `eslint.config.ts` | `eslint.config.local.ts` |
|
|
10
|
+
| `jest.config.ts` | `jest.config.local.ts` |
|
|
11
|
+
| `tsconfig.json` | `tsconfig.local.json` |
|
|
12
|
+
| `eslint.ignore.config.json` | `eslint.config.local.ts` |
|
|
13
|
+
| `eslint.thresholds.json` | Edit directly (create-only, Lisa won't overwrite) |
|
|
14
|
+
| `jest.thresholds.json` | Edit directly (create-only, Lisa won't overwrite) |
|
|
15
|
+
| `.claude/rules/coding-philosophy.md` | `.claude/rules/PROJECT_RULES.md` |
|
|
16
|
+
| `.claude/rules/plan.md` | `.claude/rules/PROJECT_RULES.md` |
|
|
17
|
+
| `.claude/rules/verfication.md` | `.claude/rules/PROJECT_RULES.md` |
|
|
18
|
+
|
|
19
|
+
## Files and directories with NO local override (do not edit at all)
|
|
20
|
+
|
|
21
|
+
- `CLAUDE.md`, `HUMAN.md`, `.safety-net.json`
|
|
22
|
+
- `.prettierrc.json`, `.prettierignore`, `.lintstagedrc.json`, `.versionrc`, `.nvmrc`
|
|
23
|
+
- `.yamllint`, `.gitleaksignore`, `commitlint.config.cjs`, `sgconfig.yml`, `knip.json`
|
|
24
|
+
- `eslint.base.ts`, `eslint.typescript.ts`, `eslint.expo.ts`, `eslint.nestjs.ts`, `eslint.cdk.ts`, `eslint.slow.config.ts`
|
|
25
|
+
- `jest.base.ts`, `jest.typescript.ts`, `jest.expo.ts`, `jest.nestjs.ts`, `jest.cdk.ts`
|
|
26
|
+
- `tsconfig.base.json`, `tsconfig.typescript.json`, `tsconfig.expo.json`, `tsconfig.nestjs.json`, `tsconfig.cdk.json`
|
|
27
|
+
- `tsconfig.eslint.json`, `tsconfig.build.json`, `tsconfig.spec.json`
|
|
28
|
+
- `eslint-plugin-code-organization/*`, `eslint-plugin-component-structure/*`, `eslint-plugin-ui-standards/*`
|
|
29
|
+
- `.claude/settings.json`, `.claude/hooks/*`, `.claude/skills/*`, `.claude/commands/*`, `.claude/agents/*`
|
|
30
|
+
- `.claude/README.md`, `.claude/REFERENCE.md`
|
|
31
|
+
- `.github/workflows/quality.yml`, `.github/workflows/release.yml`, `.github/workflows/claude.yml`
|
|
32
|
+
- `.github/workflows/build.yml`, `.github/workflows/lighthouse.yml` (Expo)
|
|
33
|
+
- `.github/workflows/load-test.yml`, `.github/workflows/zap-baseline.yml` (NestJS)
|
|
34
|
+
- `.github/dependabot.yml`, `.github/GITHUB_ACTIONS.md`, `.github/k6/*`
|
|
35
|
+
- `lighthouserc.js`, `.mcp.json`, `.easignore.extra` (Expo)
|
|
36
|
+
- `scripts/zap-baseline.sh`, `.zap/*`
|
|
37
|
+
- `ast-grep/*`
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is managed by Lisa.
|
|
3
|
+
* Do not edit directly — changes will be overwritten on the next `lisa` run.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* ESLint 9 Flat Config - Slow Rules Only (NestJS)
|
|
8
|
+
*
|
|
9
|
+
* This configuration runs ONLY slow linting rules that are disabled in the
|
|
10
|
+
* main eslint.config.ts for performance. Run this periodically via `lint:slow`
|
|
11
|
+
* rather than on every lint pass.
|
|
12
|
+
*
|
|
13
|
+
* Rules included:
|
|
14
|
+
* - import/namespace - Type checks all namespace imports (slow)
|
|
15
|
+
* - import/no-cycle - Detects circular dependencies (very slow)
|
|
16
|
+
*
|
|
17
|
+
* NestJS-specific adjustments:
|
|
18
|
+
* - sonarjs/deprecation disabled (NestJS ecosystem APIs evolve frequently)
|
|
19
|
+
* - import/no-cycle disabled for *.module.ts (NestJS forwardRef pattern)
|
|
20
|
+
*
|
|
21
|
+
* @see https://github.com/import-js/eslint-plugin-import
|
|
22
|
+
* @module eslint.slow.config
|
|
23
|
+
*/
|
|
24
|
+
import importPlugin from "eslint-plugin-import";
|
|
25
|
+
import sonarjsPlugin from "eslint-plugin-sonarjs";
|
|
26
|
+
import tseslint from "typescript-eslint";
|
|
27
|
+
|
|
28
|
+
import ignoreConfig from "./eslint.ignore.config.json" with { type: "json" };
|
|
29
|
+
|
|
30
|
+
const ignorePatterns = ignoreConfig.ignores || [];
|
|
31
|
+
|
|
32
|
+
// Get the TypeScript flat config from the import plugin
|
|
33
|
+
const importTypescriptConfig = importPlugin.flatConfigs.typescript;
|
|
34
|
+
|
|
35
|
+
export default [
|
|
36
|
+
// Use same ignores as main config, plus ignore all non-TS files
|
|
37
|
+
// This prevents errors from inline eslint directives in JS files
|
|
38
|
+
// that reference rules not loaded in this minimal config
|
|
39
|
+
// Also ignore template files in type-specific directories that don't have tsconfig
|
|
40
|
+
{
|
|
41
|
+
ignores: [
|
|
42
|
+
...ignorePatterns,
|
|
43
|
+
"**/*.js",
|
|
44
|
+
"**/*.mjs",
|
|
45
|
+
"**/*.cjs",
|
|
46
|
+
"**/*.jsx",
|
|
47
|
+
"**/__tests__/**",
|
|
48
|
+
"cdk/**",
|
|
49
|
+
"expo/**",
|
|
50
|
+
"nestjs/**",
|
|
51
|
+
"typescript/**",
|
|
52
|
+
"npm-package/**",
|
|
53
|
+
],
|
|
54
|
+
},
|
|
55
|
+
|
|
56
|
+
// TypeScript files - slow import rules only
|
|
57
|
+
{
|
|
58
|
+
files: ["**/*.ts", "**/*.tsx"],
|
|
59
|
+
linterOptions: {
|
|
60
|
+
// Ignore inline eslint-disable comments since they reference rules
|
|
61
|
+
// from the main config that aren't loaded in this minimal config
|
|
62
|
+
noInlineConfig: true,
|
|
63
|
+
},
|
|
64
|
+
languageOptions: {
|
|
65
|
+
parser: tseslint.parser,
|
|
66
|
+
parserOptions: {
|
|
67
|
+
project: "tsconfig.eslint.json",
|
|
68
|
+
},
|
|
69
|
+
},
|
|
70
|
+
plugins: {
|
|
71
|
+
...(importTypescriptConfig?.plugins ?? {}),
|
|
72
|
+
sonarjs: sonarjsPlugin,
|
|
73
|
+
},
|
|
74
|
+
settings: {
|
|
75
|
+
...(importTypescriptConfig?.settings ?? {}),
|
|
76
|
+
"import/resolver": {
|
|
77
|
+
...((importTypescriptConfig?.settings?.["import/resolver"] as Record<
|
|
78
|
+
string,
|
|
79
|
+
unknown
|
|
80
|
+
>) ?? {}),
|
|
81
|
+
typescript: true,
|
|
82
|
+
},
|
|
83
|
+
},
|
|
84
|
+
rules: {
|
|
85
|
+
// ONLY slow rules - everything else runs in the main config
|
|
86
|
+
"import/namespace": "error",
|
|
87
|
+
"import/no-cycle": "error",
|
|
88
|
+
|
|
89
|
+
// NestJS ecosystem APIs evolve frequently with deprecation notices
|
|
90
|
+
// that are not immediately actionable (e.g., OpenAI SDK, MCP SDK)
|
|
91
|
+
"sonarjs/deprecation": "off",
|
|
92
|
+
},
|
|
93
|
+
},
|
|
94
|
+
|
|
95
|
+
// NestJS module files use forwardRef() to handle circular dependencies
|
|
96
|
+
// at runtime. ESLint's import/no-cycle doesn't understand this pattern.
|
|
97
|
+
{
|
|
98
|
+
files: ["**/*.module.ts"],
|
|
99
|
+
rules: {
|
|
100
|
+
"import/no-cycle": "off",
|
|
101
|
+
},
|
|
102
|
+
},
|
|
103
|
+
];
|
package/package.json
CHANGED
|
@@ -85,7 +85,7 @@
|
|
|
85
85
|
},
|
|
86
86
|
"resolutions": {},
|
|
87
87
|
"name": "@codyswann/lisa",
|
|
88
|
-
"version": "1.
|
|
88
|
+
"version": "1.17.0",
|
|
89
89
|
"description": "Claude Code governance framework that applies guardrails, guidance, and automated enforcement to projects",
|
|
90
90
|
"main": "dist/index.js",
|
|
91
91
|
"bin": {
|