@aicqtools/core 1.0.0-alpha.6 → 1.0.0-alpha.8

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.
@@ -1,4 +1,4 @@
1
1
  export { loadConfig, findConfigPath } from './loader.js';
2
- export { aicqConfigSchema } from './schema.js';
3
- export type { AicqConfig } from './schema.js';
2
+ export { aicqConfigSchema, DEFAULT_EXCLUDE, ruleOverrideSchema } from './schema.js';
3
+ export type { AicqConfig, RuleOverride } from './schema.js';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,YAAY,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACpF,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC"}
@@ -1,3 +1,3 @@
1
1
  export { loadConfig, findConfigPath } from './loader.js';
2
- export { aicqConfigSchema } from './schema.js';
2
+ export { aicqConfigSchema, DEFAULT_EXCLUDE, ruleOverrideSchema } from './schema.js';
3
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC"}
@@ -1,20 +1,66 @@
1
1
  import { z } from 'zod';
2
2
  export declare const localeSchema: z.ZodDefault<z.ZodEnum<["ko", "en"]>>;
3
+ /**
4
+ * Default `exclude` globs.
5
+ *
6
+ * Two principles:
7
+ * 1. Only widely-used framework conventions — never a single project's directory names.
8
+ * 2. Only build artifacts / vendored deps / minified output — NEVER source-adjacent dirs like
9
+ * `**\/migrations/**`, `**\/seeders/**`, or `**\/database/**`, because rules such as
10
+ * `camelcase-migration-column` and seeder lints must still see those files.
11
+ */
12
+ export declare const DEFAULT_EXCLUDE: readonly string[];
13
+ /**
14
+ * Per-path rule overrides (alpha.8). Behaves like ESLint's `overrides`: each entry matches a list
15
+ * of micromatch globs against the file path and applies its `rules` map on top of the global one.
16
+ * Multiple matching entries are merged in declaration order — later entries win for the same rule.
17
+ * `off` drops the rule for that file; `warn`/`error` overrides its severity. Unknown rule ids are
18
+ * collected and reported via stderr once, so config typos surface early instead of silently no-op'ing.
19
+ */
20
+ export declare const ruleOverrideSchema: z.ZodObject<{
21
+ paths: z.ZodArray<z.ZodString, "many">;
22
+ rules: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodLiteral<"off">, z.ZodLiteral<"warn">, z.ZodLiteral<"error">]>>>;
23
+ }, "strip", z.ZodTypeAny, {
24
+ paths: string[];
25
+ rules: Record<string, "error" | "off" | "warn">;
26
+ }, {
27
+ paths: string[];
28
+ rules?: Record<string, "error" | "off" | "warn"> | undefined;
29
+ }>;
30
+ export type RuleOverride = z.infer<typeof ruleOverrideSchema>;
3
31
  export declare const guardrailModuleSchema: z.ZodDefault<z.ZodObject<{
4
32
  enabled: z.ZodDefault<z.ZodBoolean>;
5
33
  rulesDir: z.ZodDefault<z.ZodString>;
6
34
  extends: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
7
35
  rules: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodLiteral<"off">, z.ZodLiteral<"warn">, z.ZodLiteral<"error">]>>>;
36
+ overrides: z.ZodDefault<z.ZodArray<z.ZodObject<{
37
+ paths: z.ZodArray<z.ZodString, "many">;
38
+ rules: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodLiteral<"off">, z.ZodLiteral<"warn">, z.ZodLiteral<"error">]>>>;
39
+ }, "strip", z.ZodTypeAny, {
40
+ paths: string[];
41
+ rules: Record<string, "error" | "off" | "warn">;
42
+ }, {
43
+ paths: string[];
44
+ rules?: Record<string, "error" | "off" | "warn"> | undefined;
45
+ }>, "many">>;
8
46
  }, "strip", z.ZodTypeAny, {
47
+ rules: Record<string, "error" | "off" | "warn">;
9
48
  enabled: boolean;
10
49
  rulesDir: string;
11
50
  extends: string[];
12
- rules: Record<string, "error" | "off" | "warn">;
51
+ overrides: {
52
+ paths: string[];
53
+ rules: Record<string, "error" | "off" | "warn">;
54
+ }[];
13
55
  }, {
56
+ rules?: Record<string, "error" | "off" | "warn"> | undefined;
14
57
  enabled?: boolean | undefined;
15
58
  rulesDir?: string | undefined;
16
59
  extends?: string[] | undefined;
17
- rules?: Record<string, "error" | "off" | "warn"> | undefined;
60
+ overrides?: {
61
+ paths: string[];
62
+ rules?: Record<string, "error" | "off" | "warn"> | undefined;
63
+ }[] | undefined;
18
64
  }>>;
19
65
  export declare const provenanceModuleSchema: z.ZodDefault<z.ZodObject<{
20
66
  enabled: z.ZodDefault<z.ZodBoolean>;
@@ -41,22 +87,47 @@ export declare const aicqConfigSchema: z.ZodObject<{
41
87
  locale: z.ZodDefault<z.ZodEnum<["ko", "en"]>>;
42
88
  include: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
43
89
  exclude: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
90
+ /**
91
+ * When true, the file walker reads the repo-root `.gitignore` and appends its entries to the
92
+ * effective exclude list. Default false to keep behavior deterministic (a project changing
93
+ * `.gitignore` should not silently change what aicqtools scans). Only the root `.gitignore`
94
+ * is honored; nested gitignore files are left for a future release.
95
+ */
96
+ respectGitignore: z.ZodDefault<z.ZodBoolean>;
44
97
  modules: z.ZodDefault<z.ZodObject<{
45
98
  guardrail: z.ZodDefault<z.ZodObject<{
46
99
  enabled: z.ZodDefault<z.ZodBoolean>;
47
100
  rulesDir: z.ZodDefault<z.ZodString>;
48
101
  extends: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
49
102
  rules: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodLiteral<"off">, z.ZodLiteral<"warn">, z.ZodLiteral<"error">]>>>;
103
+ overrides: z.ZodDefault<z.ZodArray<z.ZodObject<{
104
+ paths: z.ZodArray<z.ZodString, "many">;
105
+ rules: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnion<[z.ZodLiteral<"off">, z.ZodLiteral<"warn">, z.ZodLiteral<"error">]>>>;
106
+ }, "strip", z.ZodTypeAny, {
107
+ paths: string[];
108
+ rules: Record<string, "error" | "off" | "warn">;
109
+ }, {
110
+ paths: string[];
111
+ rules?: Record<string, "error" | "off" | "warn"> | undefined;
112
+ }>, "many">>;
50
113
  }, "strip", z.ZodTypeAny, {
114
+ rules: Record<string, "error" | "off" | "warn">;
51
115
  enabled: boolean;
52
116
  rulesDir: string;
53
117
  extends: string[];
54
- rules: Record<string, "error" | "off" | "warn">;
118
+ overrides: {
119
+ paths: string[];
120
+ rules: Record<string, "error" | "off" | "warn">;
121
+ }[];
55
122
  }, {
123
+ rules?: Record<string, "error" | "off" | "warn"> | undefined;
56
124
  enabled?: boolean | undefined;
57
125
  rulesDir?: string | undefined;
58
126
  extends?: string[] | undefined;
59
- rules?: Record<string, "error" | "off" | "warn"> | undefined;
127
+ overrides?: {
128
+ paths: string[];
129
+ rules?: Record<string, "error" | "off" | "warn"> | undefined;
130
+ }[] | undefined;
60
131
  }>>;
61
132
  provenance: z.ZodDefault<z.ZodObject<{
62
133
  enabled: z.ZodDefault<z.ZodBoolean>;
@@ -80,10 +151,14 @@ export declare const aicqConfigSchema: z.ZodObject<{
80
151
  }>>;
81
152
  }, "strip", z.ZodTypeAny, {
82
153
  guardrail: {
154
+ rules: Record<string, "error" | "off" | "warn">;
83
155
  enabled: boolean;
84
156
  rulesDir: string;
85
157
  extends: string[];
86
- rules: Record<string, "error" | "off" | "warn">;
158
+ overrides: {
159
+ paths: string[];
160
+ rules: Record<string, "error" | "off" | "warn">;
161
+ }[];
87
162
  };
88
163
  provenance: {
89
164
  enabled: boolean;
@@ -95,10 +170,14 @@ export declare const aicqConfigSchema: z.ZodObject<{
95
170
  };
96
171
  }, {
97
172
  guardrail?: {
173
+ rules?: Record<string, "error" | "off" | "warn"> | undefined;
98
174
  enabled?: boolean | undefined;
99
175
  rulesDir?: string | undefined;
100
176
  extends?: string[] | undefined;
101
- rules?: Record<string, "error" | "off" | "warn"> | undefined;
177
+ overrides?: {
178
+ paths: string[];
179
+ rules?: Record<string, "error" | "off" | "warn"> | undefined;
180
+ }[] | undefined;
102
181
  } | undefined;
103
182
  provenance?: {
104
183
  enabled?: boolean | undefined;
@@ -113,12 +192,17 @@ export declare const aicqConfigSchema: z.ZodObject<{
113
192
  locale: "ko" | "en";
114
193
  include: string[];
115
194
  exclude: string[];
195
+ respectGitignore: boolean;
116
196
  modules: {
117
197
  guardrail: {
198
+ rules: Record<string, "error" | "off" | "warn">;
118
199
  enabled: boolean;
119
200
  rulesDir: string;
120
201
  extends: string[];
121
- rules: Record<string, "error" | "off" | "warn">;
202
+ overrides: {
203
+ paths: string[];
204
+ rules: Record<string, "error" | "off" | "warn">;
205
+ }[];
122
206
  };
123
207
  provenance: {
124
208
  enabled: boolean;
@@ -135,12 +219,17 @@ export declare const aicqConfigSchema: z.ZodObject<{
135
219
  locale?: "ko" | "en" | undefined;
136
220
  include?: string[] | undefined;
137
221
  exclude?: string[] | undefined;
222
+ respectGitignore?: boolean | undefined;
138
223
  modules?: {
139
224
  guardrail?: {
225
+ rules?: Record<string, "error" | "off" | "warn"> | undefined;
140
226
  enabled?: boolean | undefined;
141
227
  rulesDir?: string | undefined;
142
228
  extends?: string[] | undefined;
143
- rules?: Record<string, "error" | "off" | "warn"> | undefined;
229
+ overrides?: {
230
+ paths: string[];
231
+ rules?: Record<string, "error" | "off" | "warn"> | undefined;
232
+ }[] | undefined;
144
233
  } | undefined;
145
234
  provenance?: {
146
235
  enabled?: boolean | undefined;
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,YAAY,uCAAqC,CAAC;AAE/D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;GAOpB,CAAC;AAEf,eAAO,MAAM,sBAAsB;;;;;;;;;;;;GAMrB,CAAC;AAEf,eAAO,MAAM,uBAAuB;;;;;;GAItB,CAAC;AAEf,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAc3B,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,YAAY,uCAAqC,CAAC;AAE/D;;;;;;;;GAQG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAwC3C,CAAC;AAIH;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;;EAG7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAQpB,CAAC;AAEf,eAAO,MAAM,sBAAsB;;;;;;;;;;;;GAMrB,CAAC;AAEf,eAAO,MAAM,uBAAuB;;;;;;GAItB,CAAC;AAEf,eAAO,MAAM,gBAAgB;;;;;IAK3B;;;;;OAKG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASH,CAAC;AAEH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
@@ -1,11 +1,74 @@
1
1
  import { z } from 'zod';
2
2
  export const localeSchema = z.enum(['ko', 'en']).default('en');
3
+ /**
4
+ * Default `exclude` globs.
5
+ *
6
+ * Two principles:
7
+ * 1. Only widely-used framework conventions — never a single project's directory names.
8
+ * 2. Only build artifacts / vendored deps / minified output — NEVER source-adjacent dirs like
9
+ * `**\/migrations/**`, `**\/seeders/**`, or `**\/database/**`, because rules such as
10
+ * `camelcase-migration-column` and seeder lints must still see those files.
11
+ */
12
+ export const DEFAULT_EXCLUDE = Object.freeze([
13
+ // Node deps + classic build outputs (carried over from alpha.6)
14
+ '**/node_modules/**',
15
+ '**/dist/**',
16
+ '**/.turbo/**',
17
+ '**/build/**',
18
+ // Framework export & cache dirs (Next, Nuxt, SvelteKit, Astro, Docusaurus, VitePress)
19
+ '**/out/**',
20
+ '**/.next/**',
21
+ '**/.nuxt/**',
22
+ '**/.svelte-kit/**',
23
+ '**/.astro/**',
24
+ '**/.docusaurus/**',
25
+ '**/.vitepress/dist/**',
26
+ // Hosting / bundler caches
27
+ '**/.vercel/**',
28
+ '**/.netlify/**',
29
+ '**/.expo/**',
30
+ '**/.cache/**',
31
+ '**/.parcel-cache/**',
32
+ // Test reports, coverage, storybook builds
33
+ '**/coverage/**',
34
+ '**/.nyc_output/**',
35
+ '**/storybook-static/**',
36
+ // Capacitor webDir copies — the mobile native dirs ship a minified copy of the web bundle.
37
+ // (We intentionally do NOT exclude all of ios/** or android/** — only the copied public bundle.)
38
+ '**/ios/App/**/public/**',
39
+ '**/android/app/src/main/assets/public/**',
40
+ '**/android/**/assets/public/**',
41
+ // Python vendored deps & caches
42
+ '**/__pycache__/**',
43
+ '**/.venv/**',
44
+ '**/venv/**',
45
+ '**/.tox/**',
46
+ '**/.mypy_cache/**',
47
+ '**/.pytest_cache/**',
48
+ '**/vendor/**',
49
+ // Minified / pre-bundled output guard (one minified file flips no-magic-number into the thousands)
50
+ '**/*.min.js',
51
+ '**/*.bundle.js',
52
+ ]);
53
+ const ruleLevelSchema = z.union([z.literal('off'), z.literal('warn'), z.literal('error')]);
54
+ /**
55
+ * Per-path rule overrides (alpha.8). Behaves like ESLint's `overrides`: each entry matches a list
56
+ * of micromatch globs against the file path and applies its `rules` map on top of the global one.
57
+ * Multiple matching entries are merged in declaration order — later entries win for the same rule.
58
+ * `off` drops the rule for that file; `warn`/`error` overrides its severity. Unknown rule ids are
59
+ * collected and reported via stderr once, so config typos surface early instead of silently no-op'ing.
60
+ */
61
+ export const ruleOverrideSchema = z.object({
62
+ paths: z.array(z.string().min(1)).min(1),
63
+ rules: z.record(ruleLevelSchema).default({}),
64
+ });
3
65
  export const guardrailModuleSchema = z
4
66
  .object({
5
67
  enabled: z.boolean().default(true),
6
68
  rulesDir: z.string().default('aicq/rules'),
7
69
  extends: z.array(z.string()).default([]),
8
- rules: z.record(z.union([z.literal('off'), z.literal('warn'), z.literal('error')])).default({}),
70
+ rules: z.record(ruleLevelSchema).default({}),
71
+ overrides: z.array(ruleOverrideSchema).default([]),
9
72
  })
10
73
  .default({});
11
74
  export const provenanceModuleSchema = z
@@ -24,9 +87,14 @@ export const aicqConfigSchema = z.object({
24
87
  $schema: z.string().optional(),
25
88
  locale: localeSchema,
26
89
  include: z.array(z.string()).default(['**/*.{ts,tsx,js,mjs,cjs,jsx,py}']),
27
- exclude: z
28
- .array(z.string())
29
- .default(['**/node_modules/**', '**/dist/**', '**/.turbo/**', '**/build/**']),
90
+ exclude: z.array(z.string()).default([...DEFAULT_EXCLUDE]),
91
+ /**
92
+ * When true, the file walker reads the repo-root `.gitignore` and appends its entries to the
93
+ * effective exclude list. Default false to keep behavior deterministic (a project changing
94
+ * `.gitignore` should not silently change what aicqtools scans). Only the root `.gitignore`
95
+ * is honored; nested gitignore files are left for a future release.
96
+ */
97
+ respectGitignore: z.boolean().default(false),
30
98
  modules: z
31
99
  .object({
32
100
  guardrail: guardrailModuleSchema,
@@ -1 +1 @@
1
- {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AAE/D,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC;KACnC,MAAM,CAAC;IACN,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IAClC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC;IAC1C,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;IACxC,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC;CAChG,CAAC;KACD,OAAO,CAAC,EAAE,CAAC,CAAC;AAEf,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC;KACpC,MAAM,CAAC;IACN,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;IACnC,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC;IACzC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,iBAAiB,CAAC;CAC9C,CAAC;KACD,OAAO,CAAC,EAAE,CAAC,CAAC;AAEf,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC;KACrC,MAAM,CAAC;IACN,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC;CACpC,CAAC;KACD,OAAO,CAAC,EAAE,CAAC,CAAC;AAEf,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC9B,MAAM,EAAE,YAAY;IACpB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC,iCAAiC,CAAC,CAAC;IACzE,OAAO,EAAE,CAAC;SACP,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,OAAO,CAAC,CAAC,oBAAoB,EAAE,YAAY,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;IAC/E,OAAO,EAAE,CAAC;SACP,MAAM,CAAC;QACN,SAAS,EAAE,qBAAqB;QAChC,UAAU,EAAE,sBAAsB;QAClC,WAAW,EAAE,uBAAuB;KACrC,CAAC;SACD,OAAO,CAAC,EAAE,CAAC;CACf,CAAC,CAAC"}
1
+ {"version":3,"file":"schema.js","sourceRoot":"","sources":["../../src/config/schema.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,10 @@ export declare const messages: {
17
17
  readonly 'cli.docs.generated': "rule docs generated: {count} files in {dir}";
18
18
  readonly 'cli.error.generic': "aicq error: {message}";
19
19
  readonly 'cli.check.parserFailed': "parser failed on {file}: {message}";
20
+ readonly 'cli.check.largeScanHint': "hint: {files} files scanned and no aicq.config.yaml was found. Consider adding a config to scope `include`/`exclude`, or set `respectGitignore: true`. Run `aicq rules suggest` for a starting point.";
21
+ readonly 'cli.check.unknownRuleId': "aicq.config.yaml references unknown rule `{id}` — ignored.";
22
+ readonly 'cli.check.unknownRuleIdInOverride': "aicq.config.yaml overrides[{index}] references unknown rule `{id}` (paths: {paths}) — ignored.";
23
+ readonly 'cli.check.noisyRuleHint': "hint: `{id}` fired {count} times. Consider setting `{id}: off` under `modules.guardrail.rules` in aicq.config.yaml, or narrow it with project-specific tuning.";
20
24
  readonly 'cli.rules.suggest.header': "{files} files scanned ({langs}), {ms}ms";
21
25
  readonly 'cli.rules.suggest.tableHeader': "rule hits severity message";
22
26
  readonly 'cli.rules.suggest.none': "No built-in rule matched this repo. Nothing to suggest.";
@@ -25,6 +29,9 @@ export declare const messages: {
25
29
  readonly 'cli.rules.suggest.stackMatchNote': "(stack match)";
26
30
  readonly 'cli.rules.suggest.noisyNote': "(very high count — likely noisy, tune before enabling)";
27
31
  readonly 'cli.rules.suggest.patternDraftsHeader': "Draft pattern rules ({count}) — review before placing under rulesDir:";
32
+ readonly 'cli.rules.suggest.snippetBanner': "Generated by `aicq rules suggest` on {date}.\nBaseline suggestion — review every line before committing. Info-severity\nand high-noise rules are emitted commented-out; uncomment after tuning.\nProject-specific rules belong in your `rulesDir`, not in this map.";
33
+ readonly 'cli.rules.suggest.patternDraftsBanner': "Auto-suggested draft pattern rules — review & edit, then place each under your rulesDir.";
34
+ readonly 'cli.rules.suggest.experimentalLabel': "EXPERIMENTAL";
28
35
  readonly 'cli.rules.suggest.written': "wrote {count} suggestion(s) to {path}";
29
36
  };
30
37
  readonly ko: {
@@ -38,6 +45,10 @@ export declare const messages: {
38
45
  readonly 'cli.docs.generated': "룰 docs 생성됨: {dir}에 {count}개 파일";
39
46
  readonly 'cli.error.generic': "aicq 오류: {message}";
40
47
  readonly 'cli.check.parserFailed': "{file} 파서 실패: {message}";
48
+ readonly 'cli.check.largeScanHint': "안내: {files}개 파일을 스캔했고 aicq.config.yaml이 없습니다. `include`/`exclude` 범위를 좁히는 config 작성 또는 `respectGitignore: true` 설정을 검토하세요. 시작점은 `aicq rules suggest`.";
49
+ readonly 'cli.check.unknownRuleId': "aicq.config.yaml에서 알 수 없는 룰 `{id}` 참조 — 무시함.";
50
+ readonly 'cli.check.unknownRuleIdInOverride': "aicq.config.yaml overrides[{index}]에서 알 수 없는 룰 `{id}` 참조 (paths: {paths}) — 무시함.";
51
+ readonly 'cli.check.noisyRuleHint': "안내: `{id}`이(가) {count}회 적중했습니다. aicq.config.yaml의 `modules.guardrail.rules`에 `{id}: off` 또는 프로젝트별 튜닝을 검토하세요.";
41
52
  readonly 'cli.rules.suggest.header': "파일 {files}개 검사 ({langs}), {ms}ms";
42
53
  readonly 'cli.rules.suggest.tableHeader': "룰 적중 심각도 메시지";
43
54
  readonly 'cli.rules.suggest.none': "이 저장소에 매치된 내장 룰이 없습니다. 제안할 항목 없음.";
@@ -46,6 +57,9 @@ export declare const messages: {
46
57
  readonly 'cli.rules.suggest.stackMatchNote': "(스택 매치)";
47
58
  readonly 'cli.rules.suggest.noisyNote': "(적중 매우 많음 — 노이즈 가능성, 활성화 전 조정 권장)";
48
59
  readonly 'cli.rules.suggest.patternDraftsHeader': "룰 초안 ({count}개) — rulesDir에 두기 전 검토하세요:";
60
+ readonly 'cli.rules.suggest.snippetBanner': "`aicq rules suggest`로 {date}에 자동 생성.\n베이스라인 제안일 뿐 — 커밋 전 모든 줄을 검토하세요. info-severity 및\n노이즈가 높은 룰은 주석 처리됐습니다; 튜닝 후 주석 해제하세요.\n프로젝트 고유 룰은 이 맵이 아니라 `rulesDir`에 두세요.";
61
+ readonly 'cli.rules.suggest.patternDraftsBanner': "자동 제안된 패턴 룰 초안 — 검토·수정 후 rulesDir에 배치하세요.";
62
+ readonly 'cli.rules.suggest.experimentalLabel': "실험적";
49
63
  readonly 'cli.rules.suggest.written': "제안 {count}건을 {path}에 기록";
50
64
  };
51
65
  };
@@ -1 +1 @@
1
- {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/i18n/messages.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;AAEjC,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2CX,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,MAAM,OAAO,QAAQ,CAAC,EAAE,CAAC"}
1
+ {"version":3,"file":"messages.d.ts","sourceRoot":"","sources":["../../src/i18n/messages.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC;AAEjC,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAmEX,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,MAAM,OAAO,QAAQ,CAAC,EAAE,CAAC"}
@@ -16,6 +16,10 @@ export const messages = {
16
16
  'cli.docs.generated': 'rule docs generated: {count} files in {dir}',
17
17
  'cli.error.generic': 'aicq error: {message}',
18
18
  'cli.check.parserFailed': 'parser failed on {file}: {message}',
19
+ 'cli.check.largeScanHint': 'hint: {files} files scanned and no aicq.config.yaml was found. Consider adding a config to scope `include`/`exclude`, or set `respectGitignore: true`. Run `aicq rules suggest` for a starting point.',
20
+ 'cli.check.unknownRuleId': 'aicq.config.yaml references unknown rule `{id}` — ignored.',
21
+ 'cli.check.unknownRuleIdInOverride': 'aicq.config.yaml overrides[{index}] references unknown rule `{id}` (paths: {paths}) — ignored.',
22
+ 'cli.check.noisyRuleHint': 'hint: `{id}` fired {count} times. Consider setting `{id}: off` under `modules.guardrail.rules` in aicq.config.yaml, or narrow it with project-specific tuning.',
19
23
  'cli.rules.suggest.header': '{files} files scanned ({langs}), {ms}ms',
20
24
  'cli.rules.suggest.tableHeader': 'rule hits severity message',
21
25
  'cli.rules.suggest.none': 'No built-in rule matched this repo. Nothing to suggest.',
@@ -24,6 +28,9 @@ export const messages = {
24
28
  'cli.rules.suggest.stackMatchNote': '(stack match)',
25
29
  'cli.rules.suggest.noisyNote': '(very high count — likely noisy, tune before enabling)',
26
30
  'cli.rules.suggest.patternDraftsHeader': 'Draft pattern rules ({count}) — review before placing under rulesDir:',
31
+ 'cli.rules.suggest.snippetBanner': 'Generated by `aicq rules suggest` on {date}.\nBaseline suggestion — review every line before committing. Info-severity\nand high-noise rules are emitted commented-out; uncomment after tuning.\nProject-specific rules belong in your `rulesDir`, not in this map.',
32
+ 'cli.rules.suggest.patternDraftsBanner': 'Auto-suggested draft pattern rules — review & edit, then place each under your rulesDir.',
33
+ 'cli.rules.suggest.experimentalLabel': 'EXPERIMENTAL',
27
34
  'cli.rules.suggest.written': 'wrote {count} suggestion(s) to {path}',
28
35
  },
29
36
  ko: {
@@ -37,6 +44,10 @@ export const messages = {
37
44
  'cli.docs.generated': '룰 docs 생성됨: {dir}에 {count}개 파일',
38
45
  'cli.error.generic': 'aicq 오류: {message}',
39
46
  'cli.check.parserFailed': '{file} 파서 실패: {message}',
47
+ 'cli.check.largeScanHint': '안내: {files}개 파일을 스캔했고 aicq.config.yaml이 없습니다. `include`/`exclude` 범위를 좁히는 config 작성 또는 `respectGitignore: true` 설정을 검토하세요. 시작점은 `aicq rules suggest`.',
48
+ 'cli.check.unknownRuleId': 'aicq.config.yaml에서 알 수 없는 룰 `{id}` 참조 — 무시함.',
49
+ 'cli.check.unknownRuleIdInOverride': 'aicq.config.yaml overrides[{index}]에서 알 수 없는 룰 `{id}` 참조 (paths: {paths}) — 무시함.',
50
+ 'cli.check.noisyRuleHint': '안내: `{id}`이(가) {count}회 적중했습니다. aicq.config.yaml의 `modules.guardrail.rules`에 `{id}: off` 또는 프로젝트별 튜닝을 검토하세요.',
40
51
  'cli.rules.suggest.header': '파일 {files}개 검사 ({langs}), {ms}ms',
41
52
  'cli.rules.suggest.tableHeader': '룰 적중 심각도 메시지',
42
53
  'cli.rules.suggest.none': '이 저장소에 매치된 내장 룰이 없습니다. 제안할 항목 없음.',
@@ -45,6 +56,9 @@ export const messages = {
45
56
  'cli.rules.suggest.stackMatchNote': '(스택 매치)',
46
57
  'cli.rules.suggest.noisyNote': '(적중 매우 많음 — 노이즈 가능성, 활성화 전 조정 권장)',
47
58
  'cli.rules.suggest.patternDraftsHeader': '룰 초안 ({count}개) — rulesDir에 두기 전 검토하세요:',
59
+ 'cli.rules.suggest.snippetBanner': '`aicq rules suggest`로 {date}에 자동 생성.\n베이스라인 제안일 뿐 — 커밋 전 모든 줄을 검토하세요. info-severity 및\n노이즈가 높은 룰은 주석 처리됐습니다; 튜닝 후 주석 해제하세요.\n프로젝트 고유 룰은 이 맵이 아니라 `rulesDir`에 두세요.',
60
+ 'cli.rules.suggest.patternDraftsBanner': '자동 제안된 패턴 룰 초안 — 검토·수정 후 rulesDir에 배치하세요.',
61
+ 'cli.rules.suggest.experimentalLabel': '실험적',
48
62
  'cli.rules.suggest.written': '제안 {count}건을 {path}에 기록',
49
63
  },
50
64
  };
@@ -1 +1 @@
1
- {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/i18n/messages.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,EAAE,EAAE;QACF,mBAAmB,EAAE,wDAAwD;QAC7E,wBAAwB,EAAE,gBAAgB;QAC1C,2BAA2B,EAAE,2BAA2B;QACxD,kBAAkB,EAAE,iBAAiB;QACrC,yBAAyB,EAAE,6BAA6B;QACxD,wBAAwB,EAAE,wDAAwD;QAClF,+BAA+B,EAAE,4CAA4C;QAC7E,oBAAoB,EAAE,6CAA6C;QACnE,mBAAmB,EAAE,uBAAuB;QAC5C,wBAAwB,EAAE,oCAAoC;QAC9D,0BAA0B,EAAE,yCAAyC;QACrE,+BAA+B,EAAE,+BAA+B;QAChE,wBAAwB,EAAE,yDAAyD;QACnF,iCAAiC,EAAE,wBAAwB;QAC3D,8BAA8B,EAAE,0BAA0B;QAC1D,kCAAkC,EAAE,eAAe;QACnD,6BAA6B,EAAE,wDAAwD;QACvF,uCAAuC,EAAE,uEAAuE;QAChH,2BAA2B,EAAE,uCAAuC;KACrE;IACD,EAAE,EAAE;QACF,mBAAmB,EAAE,6CAA6C;QAClE,wBAAwB,EAAE,QAAQ;QAClC,2BAA2B,EAAE,iBAAiB;QAC9C,kBAAkB,EAAE,aAAa;QACjC,yBAAyB,EAAE,kBAAkB;QAC7C,wBAAwB,EAAE,oDAAoD;QAC9E,+BAA+B,EAAE,+BAA+B;QAChE,oBAAoB,EAAE,gCAAgC;QACtD,mBAAmB,EAAE,oBAAoB;QACzC,wBAAwB,EAAE,yBAAyB;QACnD,0BAA0B,EAAE,kCAAkC;QAC9D,+BAA+B,EAAE,iBAAiB;QAClD,wBAAwB,EAAE,mCAAmC;QAC7D,iCAAiC,EAAE,gBAAgB;QACnD,8BAA8B,EAAE,uBAAuB;QACvD,kCAAkC,EAAE,SAAS;QAC7C,6BAA6B,EAAE,mCAAmC;QAClE,uCAAuC,EAAE,yCAAyC;QAClF,2BAA2B,EAAE,yBAAyB;KACvD;CACO,CAAC"}
1
+ {"version":3,"file":"messages.js","sourceRoot":"","sources":["../../src/i18n/messages.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,EAAE,EAAE;QACF,mBAAmB,EAAE,wDAAwD;QAC7E,wBAAwB,EAAE,gBAAgB;QAC1C,2BAA2B,EAAE,2BAA2B;QACxD,kBAAkB,EAAE,iBAAiB;QACrC,yBAAyB,EAAE,6BAA6B;QACxD,wBAAwB,EAAE,wDAAwD;QAClF,+BAA+B,EAAE,4CAA4C;QAC7E,oBAAoB,EAAE,6CAA6C;QACnE,mBAAmB,EAAE,uBAAuB;QAC5C,wBAAwB,EAAE,oCAAoC;QAC9D,yBAAyB,EACvB,uMAAuM;QACzM,yBAAyB,EAAE,4DAA4D;QACvF,mCAAmC,EACjC,gGAAgG;QAClG,yBAAyB,EACvB,gKAAgK;QAClK,0BAA0B,EAAE,yCAAyC;QACrE,+BAA+B,EAAE,+BAA+B;QAChE,wBAAwB,EAAE,yDAAyD;QACnF,iCAAiC,EAAE,wBAAwB;QAC3D,8BAA8B,EAAE,0BAA0B;QAC1D,kCAAkC,EAAE,eAAe;QACnD,6BAA6B,EAAE,wDAAwD;QACvF,uCAAuC,EAAE,uEAAuE;QAChH,iCAAiC,EAC/B,qQAAqQ;QACvQ,uCAAuC,EACrC,0FAA0F;QAC5F,qCAAqC,EAAE,cAAc;QACrD,2BAA2B,EAAE,uCAAuC;KACrE;IACD,EAAE,EAAE;QACF,mBAAmB,EAAE,6CAA6C;QAClE,wBAAwB,EAAE,QAAQ;QAClC,2BAA2B,EAAE,iBAAiB;QAC9C,kBAAkB,EAAE,aAAa;QACjC,yBAAyB,EAAE,kBAAkB;QAC7C,wBAAwB,EAAE,oDAAoD;QAC9E,+BAA+B,EAAE,+BAA+B;QAChE,oBAAoB,EAAE,gCAAgC;QACtD,mBAAmB,EAAE,oBAAoB;QACzC,wBAAwB,EAAE,yBAAyB;QACnD,yBAAyB,EACvB,uJAAuJ;QACzJ,yBAAyB,EAAE,8CAA8C;QACzE,mCAAmC,EACjC,kFAAkF;QACpF,yBAAyB,EACvB,8GAA8G;QAChH,0BAA0B,EAAE,kCAAkC;QAC9D,+BAA+B,EAAE,iBAAiB;QAClD,wBAAwB,EAAE,mCAAmC;QAC7D,iCAAiC,EAAE,gBAAgB;QACnD,8BAA8B,EAAE,uBAAuB;QACvD,kCAAkC,EAAE,SAAS;QAC7C,6BAA6B,EAAE,mCAAmC;QAClE,uCAAuC,EAAE,yCAAyC;QAClF,iCAAiC,EAC/B,mKAAmK;QACrK,uCAAuC,EACrC,2CAA2C;QAC7C,qCAAqC,EAAE,KAAK;QAC5C,2BAA2B,EAAE,yBAAyB;KACvD;CACO,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  export type { Severity, Language, Position, Range, Fix, Diagnostic, CheckResult, } from './types.js';
2
2
  export { getParser, parseSource, detectLanguage, loadLanguage } from './parser/index.js';
3
- export { loadConfig, findConfigPath, aicqConfigSchema } from './config/index.js';
4
- export type { AicqConfig } from './config/index.js';
3
+ export { loadConfig, findConfigPath, aicqConfigSchema, DEFAULT_EXCLUDE, ruleOverrideSchema } from './config/index.js';
4
+ export type { AicqConfig, RuleOverride } from './config/index.js';
5
5
  export { reportJson, reportText, reportSarif } from './reporter/index.js';
6
6
  export { FileCache, hashRulesetSignature } from './cache/index.js';
7
7
  export type { CacheKey } from './cache/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,GAAG,EACH,UAAU,EACV,WAAW,GACZ,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACzF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AACjF,YAAY,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACnE,YAAY,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC7D,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,KAAK,EACL,GAAG,EACH,UAAU,EACV,WAAW,GACZ,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACzF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACtH,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAClE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACnE,YAAY,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC7D,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  export { getParser, parseSource, detectLanguage, loadLanguage } from './parser/index.js';
2
- export { loadConfig, findConfigPath, aicqConfigSchema } from './config/index.js';
2
+ export { loadConfig, findConfigPath, aicqConfigSchema, DEFAULT_EXCLUDE, ruleOverrideSchema } from './config/index.js';
3
3
  export { reportJson, reportText, reportSarif } from './reporter/index.js';
4
4
  export { FileCache, hashRulesetSignature } from './cache/index.js';
5
5
  export { t, resolveLocale, messages } from './i18n/index.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACzF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAEjF,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAEnE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE7D,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACzF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAEtH,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAEnE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE7D,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aicqtools/core",
3
- "version": "1.0.0-alpha.6",
3
+ "version": "1.0.0-alpha.8",
4
4
  "type": "module",
5
5
  "description": "Shared core for aicqtools — tree-sitter parser, sqlite incremental cache, SARIF/JSON/text reporters, config loader, i18n.",
6
6
  "keywords": [