@archwall/core 0.2.0 → 1.0.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/dist/index.d.cts CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as ProjectGraph, A as primaryEdge, B as EdgeAttributes, C as Violation, D as countBySeverity, E as compareViolations, F as ClassifierContext, G as GraphMutation, H as FIRST_PARTY_KINDS, I as TagPatch, J as MODULE_ID_SCHEMES, K as HostInfo, L as defineClassifier, M as primarySourceLocation, N as renderMessage, O as fingerprintOf, P as Classifier, Q as ModuleNode, R as Capability, S as SeverityCounts, T as ViolationLocation, U as GraphDelivery, V as EdgeKind, X as ModuleIdScheme, Y as ModuleId, Z as ModuleKind, _ as RuleSkippedDetails, a as defineGraphComputation, at as assertIrCompatible, b as FINGERPRINT_SCHEME, ct as isFirstParty, d as ModuleSelection, et as ProjectGraphInit, g as EmptyScopeDetails, h as DiagnosticSeverity, i as GraphComputation, it as WellKnownEdgeKind, j as primaryModule, k as locationsOf, l as GraphView, lt as isThirdParty, m as DiagnosticCode, n as TransformContext, nt as THIRD_PARTY_KINDS, o as EdgeFilter, ot as displayModuleId, p as Diagnostic, q as IR_VERSION, r as defineTransform, rt as WellKnownCapability, st as irMajor, t as GraphTransform, tt as SourceLocation, u as ModuleFilter, ut as parseModuleId, v as UnscannableFilesDetails, w as ViolationInput, x as Severity, y as WellKnownDiagnosticCode, z as Edge } from "./transform-CzxyWbUC.cjs";
1
+ import { $ as ModuleKind, A as ViolationInput, B as Capability, C as ClassifierContext, D as Severity, E as FINGERPRINT_SCHEME, F as locationsOf, G as GraphDelivery, H as EdgeAttributes, I as primaryEdge, J as HostInfo, L as primaryModule, M as compareViolations, N as countBySeverity, O as SeverityCounts, P as fingerprintOf, Q as ModuleIdScheme, R as primarySourceLocation, S as Classifier, T as defineClassifier, U as EdgeKind, V as Edge, W as FIRST_PARTY_KINDS, X as MODULE_ID_SCHEMES, Y as IR_VERSION, Z as ModuleId, _ as DiagnosticSeverity, a as defineGraphComputation, at as WellKnownCapability, b as UnscannableFilesDetails, ct as displayModuleId, d as ModuleSelection, dt as isThirdParty, et as ModuleNode, ft as parseModuleId, g as DiagnosticCode, h as Diagnostic, i as GraphComputation, it as THIRD_PARTY_KINDS, j as ViolationLocation, k as Violation, l as GraphView, lt as irMajor, m as BaselineStaleDetails, n as TransformContext, nt as ProjectGraphInit, o as EdgeFilter, ot as WellKnownEdgeKind, p as BaselineInvalidDetails, q as GraphMutation, r as defineTransform, rt as SourceLocation, st as assertIrCompatible, t as GraphTransform, tt as ProjectGraph, u as ModuleFilter, ut as isFirstParty, v as EmptyScopeDetails, w as TagPatch, x as WellKnownDiagnosticCode, y as RuleSkippedDetails, z as renderMessage } from "./transform-beNJIws-.cjs";
2
2
  //#region src/analysis/scc.d.ts
3
3
  /**
4
4
  * Strongly connected components over static+reexport edges (a dynamic import is a
@@ -7,6 +7,88 @@ import { $ as ProjectGraph, A as primaryEdge, B as EdgeAttributes, C as Violatio
7
7
  */
8
8
  declare const stronglyConnectedComponents: GraphComputation<readonly (readonly string[])[]>;
9
9
  //#endregion
10
+ //#region src/baseline.d.ts
11
+ /**
12
+ * One accepted violation.
13
+ *
14
+ * `fingerprint` is the ONLY field matching keys on. Everything else is context for the human
15
+ * reading the diff, and is deliberately regenerated rather than compared — a rule improving
16
+ * its wording must not invalidate the debt a team already accepted, which is the whole reason
17
+ * `fingerprintOf` excludes the message in the first place.
18
+ *
19
+ * The alternative — a file of bare hashes — was rejected because a baseline lands in a pull
20
+ * request, and "+4 opaque hashes" is not something a reviewer can approve.
21
+ */
22
+ interface BaselineEntry {
23
+ fingerprint: string;
24
+ /** Rule instance id. Context only. */
25
+ ruleId: string;
26
+ /** Repo-relative rendering of the primary location. Context only. */
27
+ location: string;
28
+ /** Rendered message at the time the entry was written. Context only. */
29
+ message: string;
30
+ }
31
+ interface BaselineFile {
32
+ /**
33
+ * The fingerprint scheme the entries were produced under; must equal
34
+ * {@link FINGERPRINT_SCHEME}.
35
+ *
36
+ * Checked rather than ignored because the failure is otherwise invisible: under a bumped
37
+ * scheme every entry stops matching, and a silent no-match looks exactly like "someone
38
+ * introduced 400 violations" — which is the one message this file exists to prevent.
39
+ */
40
+ scheme: string;
41
+ entries: readonly BaselineEntry[];
42
+ }
43
+ /** Either a usable file or the reason it is not; never a throw. See {@link parseBaseline}. */
44
+ type BaselineParseResult = {
45
+ file: BaselineFile;
46
+ } | {
47
+ error: string;
48
+ };
49
+ /** The partition {@link applyBaseline} produces. */
50
+ interface AppliedBaseline {
51
+ /** Findings that COUNT — not present in the baseline. */
52
+ violations: readonly Violation[];
53
+ /** Findings the baseline accepted, in the same relative order. */
54
+ suppressed: readonly Violation[];
55
+ /**
56
+ * Fingerprints in the baseline that this run did not produce.
57
+ *
58
+ * Reported, never acted on here: whether they mean "fixed" or "not looked at" depends on
59
+ * whether the run was complete, which is knowledge only the run edge has.
60
+ */
61
+ stale: readonly string[];
62
+ }
63
+ /**
64
+ * Renders a baseline file. Deterministic: two runs over the same findings produce the same
65
+ * bytes, so a regenerated baseline that changed is a change in the findings.
66
+ *
67
+ * Sorted by `(ruleId, location, fingerprint)` and NOT by message — a reworded rule would
68
+ * otherwise reorder the file and turn a no-op regeneration into a large diff. Deduped by
69
+ * fingerprint, because one fingerprint can legitimately cover several findings.
70
+ */
71
+ declare function serializeBaseline(violations: readonly Violation[], repoRoot: string): string;
72
+ /**
73
+ * Reads a baseline file.
74
+ *
75
+ * Returns the reason instead of throwing: the caller is the run edge, and every failure here
76
+ * has to become a `baseline-invalid` diagnostic rather than an exception that destroys the
77
+ * other findings in the run.
78
+ */
79
+ declare function parseBaseline(text: string): BaselineParseResult;
80
+ /**
81
+ * Splits findings into counted and accepted, by fingerprint.
82
+ *
83
+ * Input order is preserved in both outputs, so the total order `compareViolations` established
84
+ * survives suppression and reporter output stays byte-stable.
85
+ *
86
+ * A fingerprint that matches several findings suppresses ALL of them — two imports of one
87
+ * dependency from one module share a fingerprint by design (see `fingerprintOf`), and
88
+ * accepting "domain must not import react" has to mean accepting it, not one arbitrary half.
89
+ */
90
+ declare function applyBaseline(violations: readonly Violation[], file: BaselineFile): AppliedBaseline;
91
+ //#endregion
10
92
  //#region src/classifiers/path.d.ts
11
93
  interface PathPattern {
12
94
  /**
@@ -457,7 +539,10 @@ interface FailOnDiagnostics {
457
539
  emptyScope?: boolean;
458
540
  /** A rule's options failed its schema, so the rule did not run. Default true. */
459
541
  invalidOptions?: boolean;
460
- /** The configuration itself is wrong and something was dropped. Default true. */
542
+ /**
543
+ * The configuration itself is wrong and something was dropped, or a configured baseline
544
+ * could not be read. Default true.
545
+ */
461
546
  invalidConfig?: boolean;
462
547
  /** A configured rule is deprecated. Default false. */
463
548
  deprecated?: boolean;
@@ -524,7 +609,7 @@ declare const DIAGNOSTIC_GATES: {
524
609
  readonly default: true;
525
610
  };
526
611
  readonly invalidConfig: {
527
- readonly codes: readonly ["invalid-config"];
612
+ readonly codes: readonly ["invalid-config", "baseline-invalid"];
528
613
  readonly default: true;
529
614
  };
530
615
  readonly deprecated: {
@@ -635,8 +720,9 @@ interface UserConfig {
635
720
  /**
636
721
  * Path to a baseline file of accepted violations, relative to {@link repoRoot}.
637
722
  *
638
- * RESERVED declared, resolved, and carried on `ResolvedConfig`, but not yet read. See
639
- * `AnalysisResult.suppressed`.
723
+ * Read at the RUN EDGE, not by `analyze` suppression is policy, like `failOn`, and the
724
+ * engine stays pure. Matched findings move to `AnalysisResult.suppressed`. Write the file
725
+ * with `archwall check --update-baseline`.
640
726
  *
641
727
  * A graph-based linter has no other suppression mechanism available: with no source text
642
728
  * there can be no `// archwall-ignore`, so accepting existing findings has to be a file
@@ -664,7 +750,7 @@ interface ResolvedRule {
664
750
  interface ResolvedConfig {
665
751
  /** Absolute. Base for reported paths and fingerprints. */
666
752
  repoRoot: string;
667
- /** Absolute path to the baseline file, or null. RESERVED; see {@link UserConfig.baseline}. */
753
+ /** Absolute path to the baseline file, or null when none is configured. */
668
754
  baseline: string | null;
669
755
  /** Absolute, at or below {@link repoRoot}. Base for the boundary and classifiers. */
670
756
  sourceRoot: string;
@@ -829,5 +915,5 @@ declare function dropSelfEdges(): GraphTransform;
829
915
  */
830
916
  declare function dropTypeOnlyEdges(): GraphTransform;
831
917
  //#endregion
832
- export { type AnalysisResult, type AnalysisStats, type AnalyzeOptions, ArchWallError, BUILTIN_REPORTER_NAMES, type BuiltinReporterName, type CallableRule, type Capability, type Classifier, type ClassifierContext, type ConfiguredRule, DIAGNOSTIC_GATES, type Diagnostic, type DiagnosticCode, type DiagnosticSeverity, type Edge, type EdgeAttributes, type EdgeFilter, type EdgeKind, type EmptyScopeDetails, FINGERPRINT_SCHEME, FIRST_PARTY_KINDS, type FailOn, type FailOnDiagnostics, type GraphComputation, type GraphDelivery, type GraphMutation, type GraphTransform, type GraphView, type HostInfo, IR_VERSION, IrVersionMismatchError, MODULE_ID_SCHEMES, type ModuleFilter, type ModuleId, type ModuleIdScheme, type ModuleKind, type ModuleNode, type ModuleSelection, type OutputDestination, type OutputSink, type PathClassifierOptions, type PathPattern, type Preset, type PresetMeta, type PresetSpec, ProjectGraph, type ProjectGraphInit, type Reporter, type ReporterIO, type ReporterOutputSpec, type ReporterSpec, type ResolvedConfig, type ResolvedFailOnDiagnostics, type ResolvedReporters, type ResolvedRule, type Rule, type RuleContext, type RuleDeprecation, type RuleMeta, type RuleOverride, type RuleRunInfo, type RuleScope, type RuleSettings, type RuleSkippedDetails, type RuleSpec, type RuleVisitors, type RunInfo, type Severity, type SeverityCounts, type SourceLocation, type StandardSchemaIssue, type StandardSchemaResult, type StandardSchemaV1, THIRD_PARTY_KINDS, type TagPatch, type TransformContext, type UnscannableFilesDetails, type UserConfig, type Violation, type ViolationInput, type ViolationLocation, type WellKnownCapability, type WellKnownDiagnosticCode, type WellKnownEdgeKind, analyze, assertIrCompatible, compareViolations, configureRule, consoleReporter, countBySeverity, defaultIO, defineClassifier, defineConfig, defineGraphComputation, definePreset, defineReporter, defineRule, defineTransform, displayModuleId, dropSelfEdges, dropTypeOnlyEdges, failingDiagnosticCodes, fingerprintOf, formatViolation, irMajor, isBuiltinReporterName, isFirstParty, isThirdParty, jsonReporter, locationsOf, matchCaptures, matchesPattern, parseModuleId, pathClassifier, primaryEdge, primaryModule, primarySourceLocation, renderMessage, resolveConfig, resolveFailOnDiagnostics, resolveReporters, sarifReporter, stronglyConnectedComponents };
918
+ export { type AnalysisResult, type AnalysisStats, type AnalyzeOptions, type AppliedBaseline, ArchWallError, BUILTIN_REPORTER_NAMES, type BaselineEntry, type BaselineFile, type BaselineInvalidDetails, type BaselineParseResult, type BaselineStaleDetails, type BuiltinReporterName, type CallableRule, type Capability, type Classifier, type ClassifierContext, type ConfiguredRule, DIAGNOSTIC_GATES, type Diagnostic, type DiagnosticCode, type DiagnosticSeverity, type Edge, type EdgeAttributes, type EdgeFilter, type EdgeKind, type EmptyScopeDetails, FINGERPRINT_SCHEME, FIRST_PARTY_KINDS, type FailOn, type FailOnDiagnostics, type GraphComputation, type GraphDelivery, type GraphMutation, type GraphTransform, type GraphView, type HostInfo, IR_VERSION, IrVersionMismatchError, MODULE_ID_SCHEMES, type ModuleFilter, type ModuleId, type ModuleIdScheme, type ModuleKind, type ModuleNode, type ModuleSelection, type OutputDestination, type OutputSink, type PathClassifierOptions, type PathPattern, type Preset, type PresetMeta, type PresetSpec, ProjectGraph, type ProjectGraphInit, type Reporter, type ReporterIO, type ReporterOutputSpec, type ReporterSpec, type ResolvedConfig, type ResolvedFailOnDiagnostics, type ResolvedReporters, type ResolvedRule, type Rule, type RuleContext, type RuleDeprecation, type RuleMeta, type RuleOverride, type RuleRunInfo, type RuleScope, type RuleSettings, type RuleSkippedDetails, type RuleSpec, type RuleVisitors, type RunInfo, type Severity, type SeverityCounts, type SourceLocation, type StandardSchemaIssue, type StandardSchemaResult, type StandardSchemaV1, THIRD_PARTY_KINDS, type TagPatch, type TransformContext, type UnscannableFilesDetails, type UserConfig, type Violation, type ViolationInput, type ViolationLocation, type WellKnownCapability, type WellKnownDiagnosticCode, type WellKnownEdgeKind, analyze, applyBaseline, assertIrCompatible, compareViolations, configureRule, consoleReporter, countBySeverity, defaultIO, defineClassifier, defineConfig, defineGraphComputation, definePreset, defineReporter, defineRule, defineTransform, displayModuleId, dropSelfEdges, dropTypeOnlyEdges, failingDiagnosticCodes, fingerprintOf, formatViolation, irMajor, isBuiltinReporterName, isFirstParty, isThirdParty, jsonReporter, locationsOf, matchCaptures, matchesPattern, parseBaseline, parseModuleId, pathClassifier, primaryEdge, primaryModule, primarySourceLocation, renderMessage, resolveConfig, resolveFailOnDiagnostics, resolveReporters, sarifReporter, serializeBaseline, stronglyConnectedComponents };
833
919
  //# sourceMappingURL=index.d.cts.map
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { $ as ProjectGraph, A as primaryEdge, B as EdgeAttributes, C as Violation, D as countBySeverity, E as compareViolations, F as ClassifierContext, G as GraphMutation, H as FIRST_PARTY_KINDS, I as TagPatch, J as MODULE_ID_SCHEMES, K as HostInfo, L as defineClassifier, M as primarySourceLocation, N as renderMessage, O as fingerprintOf, P as Classifier, Q as ModuleNode, R as Capability, S as SeverityCounts, T as ViolationLocation, U as GraphDelivery, V as EdgeKind, X as ModuleIdScheme, Y as ModuleId, Z as ModuleKind, _ as RuleSkippedDetails, a as defineGraphComputation, at as assertIrCompatible, b as FINGERPRINT_SCHEME, ct as isFirstParty, d as ModuleSelection, et as ProjectGraphInit, g as EmptyScopeDetails, h as DiagnosticSeverity, i as GraphComputation, it as WellKnownEdgeKind, j as primaryModule, k as locationsOf, l as GraphView, lt as isThirdParty, m as DiagnosticCode, n as TransformContext, nt as THIRD_PARTY_KINDS, o as EdgeFilter, ot as displayModuleId, p as Diagnostic, q as IR_VERSION, r as defineTransform, rt as WellKnownCapability, st as irMajor, t as GraphTransform, tt as SourceLocation, u as ModuleFilter, ut as parseModuleId, v as UnscannableFilesDetails, w as ViolationInput, x as Severity, y as WellKnownDiagnosticCode, z as Edge } from "./transform-CzxyWbUC.mjs";
1
+ import { $ as ModuleKind, A as ViolationInput, B as Capability, C as ClassifierContext, D as Severity, E as FINGERPRINT_SCHEME, F as locationsOf, G as GraphDelivery, H as EdgeAttributes, I as primaryEdge, J as HostInfo, L as primaryModule, M as compareViolations, N as countBySeverity, O as SeverityCounts, P as fingerprintOf, Q as ModuleIdScheme, R as primarySourceLocation, S as Classifier, T as defineClassifier, U as EdgeKind, V as Edge, W as FIRST_PARTY_KINDS, X as MODULE_ID_SCHEMES, Y as IR_VERSION, Z as ModuleId, _ as DiagnosticSeverity, a as defineGraphComputation, at as WellKnownCapability, b as UnscannableFilesDetails, ct as displayModuleId, d as ModuleSelection, dt as isThirdParty, et as ModuleNode, ft as parseModuleId, g as DiagnosticCode, h as Diagnostic, i as GraphComputation, it as THIRD_PARTY_KINDS, j as ViolationLocation, k as Violation, l as GraphView, lt as irMajor, m as BaselineStaleDetails, n as TransformContext, nt as ProjectGraphInit, o as EdgeFilter, ot as WellKnownEdgeKind, p as BaselineInvalidDetails, q as GraphMutation, r as defineTransform, rt as SourceLocation, st as assertIrCompatible, t as GraphTransform, tt as ProjectGraph, u as ModuleFilter, ut as isFirstParty, v as EmptyScopeDetails, w as TagPatch, x as WellKnownDiagnosticCode, y as RuleSkippedDetails, z as renderMessage } from "./transform-beNJIws-.mjs";
2
2
  //#region src/analysis/scc.d.ts
3
3
  /**
4
4
  * Strongly connected components over static+reexport edges (a dynamic import is a
@@ -7,6 +7,88 @@ import { $ as ProjectGraph, A as primaryEdge, B as EdgeAttributes, C as Violatio
7
7
  */
8
8
  declare const stronglyConnectedComponents: GraphComputation<readonly (readonly string[])[]>;
9
9
  //#endregion
10
+ //#region src/baseline.d.ts
11
+ /**
12
+ * One accepted violation.
13
+ *
14
+ * `fingerprint` is the ONLY field matching keys on. Everything else is context for the human
15
+ * reading the diff, and is deliberately regenerated rather than compared — a rule improving
16
+ * its wording must not invalidate the debt a team already accepted, which is the whole reason
17
+ * `fingerprintOf` excludes the message in the first place.
18
+ *
19
+ * The alternative — a file of bare hashes — was rejected because a baseline lands in a pull
20
+ * request, and "+4 opaque hashes" is not something a reviewer can approve.
21
+ */
22
+ interface BaselineEntry {
23
+ fingerprint: string;
24
+ /** Rule instance id. Context only. */
25
+ ruleId: string;
26
+ /** Repo-relative rendering of the primary location. Context only. */
27
+ location: string;
28
+ /** Rendered message at the time the entry was written. Context only. */
29
+ message: string;
30
+ }
31
+ interface BaselineFile {
32
+ /**
33
+ * The fingerprint scheme the entries were produced under; must equal
34
+ * {@link FINGERPRINT_SCHEME}.
35
+ *
36
+ * Checked rather than ignored because the failure is otherwise invisible: under a bumped
37
+ * scheme every entry stops matching, and a silent no-match looks exactly like "someone
38
+ * introduced 400 violations" — which is the one message this file exists to prevent.
39
+ */
40
+ scheme: string;
41
+ entries: readonly BaselineEntry[];
42
+ }
43
+ /** Either a usable file or the reason it is not; never a throw. See {@link parseBaseline}. */
44
+ type BaselineParseResult = {
45
+ file: BaselineFile;
46
+ } | {
47
+ error: string;
48
+ };
49
+ /** The partition {@link applyBaseline} produces. */
50
+ interface AppliedBaseline {
51
+ /** Findings that COUNT — not present in the baseline. */
52
+ violations: readonly Violation[];
53
+ /** Findings the baseline accepted, in the same relative order. */
54
+ suppressed: readonly Violation[];
55
+ /**
56
+ * Fingerprints in the baseline that this run did not produce.
57
+ *
58
+ * Reported, never acted on here: whether they mean "fixed" or "not looked at" depends on
59
+ * whether the run was complete, which is knowledge only the run edge has.
60
+ */
61
+ stale: readonly string[];
62
+ }
63
+ /**
64
+ * Renders a baseline file. Deterministic: two runs over the same findings produce the same
65
+ * bytes, so a regenerated baseline that changed is a change in the findings.
66
+ *
67
+ * Sorted by `(ruleId, location, fingerprint)` and NOT by message — a reworded rule would
68
+ * otherwise reorder the file and turn a no-op regeneration into a large diff. Deduped by
69
+ * fingerprint, because one fingerprint can legitimately cover several findings.
70
+ */
71
+ declare function serializeBaseline(violations: readonly Violation[], repoRoot: string): string;
72
+ /**
73
+ * Reads a baseline file.
74
+ *
75
+ * Returns the reason instead of throwing: the caller is the run edge, and every failure here
76
+ * has to become a `baseline-invalid` diagnostic rather than an exception that destroys the
77
+ * other findings in the run.
78
+ */
79
+ declare function parseBaseline(text: string): BaselineParseResult;
80
+ /**
81
+ * Splits findings into counted and accepted, by fingerprint.
82
+ *
83
+ * Input order is preserved in both outputs, so the total order `compareViolations` established
84
+ * survives suppression and reporter output stays byte-stable.
85
+ *
86
+ * A fingerprint that matches several findings suppresses ALL of them — two imports of one
87
+ * dependency from one module share a fingerprint by design (see `fingerprintOf`), and
88
+ * accepting "domain must not import react" has to mean accepting it, not one arbitrary half.
89
+ */
90
+ declare function applyBaseline(violations: readonly Violation[], file: BaselineFile): AppliedBaseline;
91
+ //#endregion
10
92
  //#region src/classifiers/path.d.ts
11
93
  interface PathPattern {
12
94
  /**
@@ -457,7 +539,10 @@ interface FailOnDiagnostics {
457
539
  emptyScope?: boolean;
458
540
  /** A rule's options failed its schema, so the rule did not run. Default true. */
459
541
  invalidOptions?: boolean;
460
- /** The configuration itself is wrong and something was dropped. Default true. */
542
+ /**
543
+ * The configuration itself is wrong and something was dropped, or a configured baseline
544
+ * could not be read. Default true.
545
+ */
461
546
  invalidConfig?: boolean;
462
547
  /** A configured rule is deprecated. Default false. */
463
548
  deprecated?: boolean;
@@ -524,7 +609,7 @@ declare const DIAGNOSTIC_GATES: {
524
609
  readonly default: true;
525
610
  };
526
611
  readonly invalidConfig: {
527
- readonly codes: readonly ["invalid-config"];
612
+ readonly codes: readonly ["invalid-config", "baseline-invalid"];
528
613
  readonly default: true;
529
614
  };
530
615
  readonly deprecated: {
@@ -635,8 +720,9 @@ interface UserConfig {
635
720
  /**
636
721
  * Path to a baseline file of accepted violations, relative to {@link repoRoot}.
637
722
  *
638
- * RESERVED declared, resolved, and carried on `ResolvedConfig`, but not yet read. See
639
- * `AnalysisResult.suppressed`.
723
+ * Read at the RUN EDGE, not by `analyze` suppression is policy, like `failOn`, and the
724
+ * engine stays pure. Matched findings move to `AnalysisResult.suppressed`. Write the file
725
+ * with `archwall check --update-baseline`.
640
726
  *
641
727
  * A graph-based linter has no other suppression mechanism available: with no source text
642
728
  * there can be no `// archwall-ignore`, so accepting existing findings has to be a file
@@ -664,7 +750,7 @@ interface ResolvedRule {
664
750
  interface ResolvedConfig {
665
751
  /** Absolute. Base for reported paths and fingerprints. */
666
752
  repoRoot: string;
667
- /** Absolute path to the baseline file, or null. RESERVED; see {@link UserConfig.baseline}. */
753
+ /** Absolute path to the baseline file, or null when none is configured. */
668
754
  baseline: string | null;
669
755
  /** Absolute, at or below {@link repoRoot}. Base for the boundary and classifiers. */
670
756
  sourceRoot: string;
@@ -829,5 +915,5 @@ declare function dropSelfEdges(): GraphTransform;
829
915
  */
830
916
  declare function dropTypeOnlyEdges(): GraphTransform;
831
917
  //#endregion
832
- export { type AnalysisResult, type AnalysisStats, type AnalyzeOptions, ArchWallError, BUILTIN_REPORTER_NAMES, type BuiltinReporterName, type CallableRule, type Capability, type Classifier, type ClassifierContext, type ConfiguredRule, DIAGNOSTIC_GATES, type Diagnostic, type DiagnosticCode, type DiagnosticSeverity, type Edge, type EdgeAttributes, type EdgeFilter, type EdgeKind, type EmptyScopeDetails, FINGERPRINT_SCHEME, FIRST_PARTY_KINDS, type FailOn, type FailOnDiagnostics, type GraphComputation, type GraphDelivery, type GraphMutation, type GraphTransform, type GraphView, type HostInfo, IR_VERSION, IrVersionMismatchError, MODULE_ID_SCHEMES, type ModuleFilter, type ModuleId, type ModuleIdScheme, type ModuleKind, type ModuleNode, type ModuleSelection, type OutputDestination, type OutputSink, type PathClassifierOptions, type PathPattern, type Preset, type PresetMeta, type PresetSpec, ProjectGraph, type ProjectGraphInit, type Reporter, type ReporterIO, type ReporterOutputSpec, type ReporterSpec, type ResolvedConfig, type ResolvedFailOnDiagnostics, type ResolvedReporters, type ResolvedRule, type Rule, type RuleContext, type RuleDeprecation, type RuleMeta, type RuleOverride, type RuleRunInfo, type RuleScope, type RuleSettings, type RuleSkippedDetails, type RuleSpec, type RuleVisitors, type RunInfo, type Severity, type SeverityCounts, type SourceLocation, type StandardSchemaIssue, type StandardSchemaResult, type StandardSchemaV1, THIRD_PARTY_KINDS, type TagPatch, type TransformContext, type UnscannableFilesDetails, type UserConfig, type Violation, type ViolationInput, type ViolationLocation, type WellKnownCapability, type WellKnownDiagnosticCode, type WellKnownEdgeKind, analyze, assertIrCompatible, compareViolations, configureRule, consoleReporter, countBySeverity, defaultIO, defineClassifier, defineConfig, defineGraphComputation, definePreset, defineReporter, defineRule, defineTransform, displayModuleId, dropSelfEdges, dropTypeOnlyEdges, failingDiagnosticCodes, fingerprintOf, formatViolation, irMajor, isBuiltinReporterName, isFirstParty, isThirdParty, jsonReporter, locationsOf, matchCaptures, matchesPattern, parseModuleId, pathClassifier, primaryEdge, primaryModule, primarySourceLocation, renderMessage, resolveConfig, resolveFailOnDiagnostics, resolveReporters, sarifReporter, stronglyConnectedComponents };
918
+ export { type AnalysisResult, type AnalysisStats, type AnalyzeOptions, type AppliedBaseline, ArchWallError, BUILTIN_REPORTER_NAMES, type BaselineEntry, type BaselineFile, type BaselineInvalidDetails, type BaselineParseResult, type BaselineStaleDetails, type BuiltinReporterName, type CallableRule, type Capability, type Classifier, type ClassifierContext, type ConfiguredRule, DIAGNOSTIC_GATES, type Diagnostic, type DiagnosticCode, type DiagnosticSeverity, type Edge, type EdgeAttributes, type EdgeFilter, type EdgeKind, type EmptyScopeDetails, FINGERPRINT_SCHEME, FIRST_PARTY_KINDS, type FailOn, type FailOnDiagnostics, type GraphComputation, type GraphDelivery, type GraphMutation, type GraphTransform, type GraphView, type HostInfo, IR_VERSION, IrVersionMismatchError, MODULE_ID_SCHEMES, type ModuleFilter, type ModuleId, type ModuleIdScheme, type ModuleKind, type ModuleNode, type ModuleSelection, type OutputDestination, type OutputSink, type PathClassifierOptions, type PathPattern, type Preset, type PresetMeta, type PresetSpec, ProjectGraph, type ProjectGraphInit, type Reporter, type ReporterIO, type ReporterOutputSpec, type ReporterSpec, type ResolvedConfig, type ResolvedFailOnDiagnostics, type ResolvedReporters, type ResolvedRule, type Rule, type RuleContext, type RuleDeprecation, type RuleMeta, type RuleOverride, type RuleRunInfo, type RuleScope, type RuleSettings, type RuleSkippedDetails, type RuleSpec, type RuleVisitors, type RunInfo, type Severity, type SeverityCounts, type SourceLocation, type StandardSchemaIssue, type StandardSchemaResult, type StandardSchemaV1, THIRD_PARTY_KINDS, type TagPatch, type TransformContext, type UnscannableFilesDetails, type UserConfig, type Violation, type ViolationInput, type ViolationLocation, type WellKnownCapability, type WellKnownDiagnosticCode, type WellKnownEdgeKind, analyze, applyBaseline, assertIrCompatible, compareViolations, configureRule, consoleReporter, countBySeverity, defaultIO, defineClassifier, defineConfig, defineGraphComputation, definePreset, defineReporter, defineRule, defineTransform, displayModuleId, dropSelfEdges, dropTypeOnlyEdges, failingDiagnosticCodes, fingerprintOf, formatViolation, irMajor, isBuiltinReporterName, isFirstParty, isThirdParty, jsonReporter, locationsOf, matchCaptures, matchesPattern, parseBaseline, parseModuleId, pathClassifier, primaryEdge, primaryModule, primarySourceLocation, renderMessage, resolveConfig, resolveFailOnDiagnostics, resolveReporters, sarifReporter, serializeBaseline, stronglyConnectedComponents };
833
919
  //# sourceMappingURL=index.d.mts.map
package/dist/index.mjs CHANGED
Binary file