Files
actual/knip.json
T
Matiss Janis AboltinsandClaude Opus 4.8 c4acaa2951 [AI] Add knip to detect unused files, dependencies and exports (#8309)
Adds the knip tool with a monorepo-tuned config (knip.json) and a CI gate
in check.yml, plus the dead-code and dependency cleanup it surfaced. The
unused-export/type/duplicate rules are disabled so exporting an unused
symbol is allowed.

Co-authored-by: Claude Opus 4.8 <[email protected]>
2026-06-22 22:11:48 +00:00

94 lines
2.4 KiB
JSON

{
"$schema": "https://unpkg.com/knip@6/schema.json",
"rules": {
"exports": "off",
"types": "off",
"nsExports": "off",
"nsTypes": "off",
"duplicates": "off"
},
"ignoreBinaries": ["electron-rebuild"],
"workspaces": {
".": {
"entry": ["bin/*.mts"],
"ignore": ["lage.config.js", ".claude/**"]
},
"packages/api": {
"entry": ["index.browser.ts", "browser-worker.ts", "e2e/**/*.{ts,mjs}"],
"ignore": ["typings.ts"],
"ignoreDependencies": [
"@actual-app/crdt",
"better-sqlite3",
"uuid",
"@jlongster/sql.js"
]
},
"packages/ci-actions": {
"entry": ["bin/*.ts"],
"ignoreBinaries": ["bin/tsx"],
"ignoreDependencies": ["extensionless"]
},
"packages/component-library": {
"entry": ["src/icons/index-template.ts", "src/icons/template.ts"],
"ignore": ["src/icons/.svgrrc.js", "src/icons/add-attribute.ts"],
"ignoreDependencies": ["@svgr/babel-plugin-add-jsx-attribute"]
},
"packages/crdt": {
"ignore": ["src/proto/**"],
"ignoreDependencies": ["@bufbuild/protoc-gen-es"]
},
"packages/desktop-client": {
"entry": [
"bin/*.mjs",
"globals.ts",
"src/globals.ts",
"src/build-shims.js"
],
"ignoreDependencies": ["plugins-service"]
},
"packages/desktop-electron": {
"entry": [
"preload.ts",
"server.ts",
"afterSignHook.ts",
"beforePackHook.ts"
],
"ignoreBinaries": ["bin/update-client"],
"ignoreDependencies": ["better-sqlite3"]
},
"packages/docs": {
"entry": [
"src/theme/**/*.{ts,tsx,js,jsx}",
"src/components/**/*.{ts,tsx,js,jsx}",
"docs/**/*.{js,jsx}"
],
"ignore": ["docusaurus.netlify-config.js"]
},
"packages/loot-core": {
"entry": ["src/**/index-types.ts", "src/mocks/**"],
"ignoreDependencies": [
"assert",
"browserify-zlib",
"buffer",
"crypto-browserify",
"path-browserify",
"stream-browserify",
"timers-browserify",
"util"
]
},
"packages/plugins-service": {
"entry": ["src/plugin-service-worker.ts"]
},
"packages/sync-server": {
"entry": [
"app.ts",
"src/app.ts",
"bin/**/*.js",
"src/scripts/**/*.js",
"src/app-*/app-*.{ts,js}"
]
}
}
}