Documentation
¶
Overview ¶
Package lint implements `stackkit module lint` (ADR-0027 Decision 3, gates G1+G3): the deterministic module-hygiene checks that gate proposal PRs and tool-update PRs. It operates on an already-extracted cue.ModuleContract so the same rules run from the CLI, from CI, and from the scaffolder's self-check after rendering.
Rules are intentionally derivable from the module CUE alone — no DB, no network — so the gate is reproducible on any checkout at any commit.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CountBySeverity ¶
CountBySeverity returns (errors, warnings).
Types ¶
type Finding ¶
type Finding struct {
Module string `json:"module"`
Service string `json:"service,omitempty"`
Code string `json:"code"`
Severity Severity `json:"severity"`
Message string `json:"message"`
}
Finding is a single lint result. Service is empty for module-scoped rules.
func Module ¶
func Module(mc skcue.ModuleContract) []Finding
Module runs every rule against a single extracted module contract and returns findings sorted deterministically (severity, then service, code).