Documentation
¶
Overview ¶
Command kanonarion is the root entry point for the CLI.
It exists so `go install github.com/eitanity/kanonarion@latest` resolves a main package at the module root: `go install <module>@latest` only builds a package whose import path equals the module path. The canonical build target remains ./cmd/kanonarion (used by the Makefile, release workflow, and the --package examples); this file is a thin duplicate of that entry point so the bare module coordinate installs the same binary.
Directories
¶
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
kanonarion
command
|
|
|
internal
|
|
|
adapters/blobcodec
Package blobcodec provides transparent zstd compression for SQLite BLOB columns.
|
Package blobcodec provides transparent zstd compression for SQLite BLOB columns. |
|
adapters/blobstore/localfs
Package localfs implements ports.BlobStore using the local filesystem.
|
Package localfs implements ports.BlobStore using the local filesystem. |
|
adapters/blobstore/modcache
Package modcache implements a ports.BlobStore that resolves module bytes from a Go module cache ($GOMODCACHE) instead of kanonarion's content-addressed blob store.
|
Package modcache implements a ports.BlobStore that resolves module bytes from a Go module cache ($GOMODCACHE) instead of kanonarion's content-addressed blob store. |
|
adapters/clock
Package clock provides ports.Clock implementations for production and tests.
|
Package clock provides ports.Clock implementations for production and tests. |
|
adapters/factstore/sqlite
Package sqlite implements ports.FactStore using a SQLite database via modernc.org/sqlite (pure Go, no CGO).
|
Package sqlite implements ports.FactStore using a SQLite database via modernc.org/sqlite (pure Go, no CGO). |
|
adapters/proxy/direct
Package direct implements ports.ModuleProxy against a Go module proxy (default: proxy.golang.org).
|
Package direct implements ports.ModuleProxy against a Go module proxy (default: proxy.golang.org). |
|
adapters/proxy/modcache
Package modcache implements ports.ModuleProxy against a local Go module cache ($GOMODCACHE) instead of a network module proxy.
|
Package modcache implements ports.ModuleProxy against a local Go module cache ($GOMODCACHE) instead of a network module proxy. |
|
adapters/signer/noop
Package noop provides the OSS default ports.Signer: an unconfigured signer that yields no attestation.
|
Package noop provides the OSS default ports.Signer: an unconfigured signer that yields no attestation. |
|
adapters/sumdb/gosum
Package gosum implements ports.SumDBClient using golang.org/x/mod/sumdb.
|
Package gosum implements ports.SumDBClient using golang.org/x/mod/sumdb. |
|
adapters/sumdb/gosumfile
Package gosumfile implements ports.SumDBClient against a project's local go.sum file instead of the network checksum database (sum.golang.org).
|
Package gosumfile implements ports.SumDBClient against a project's local go.sum file instead of the network checksum database (sum.golang.org). |
|
adapters/vcs/gitexec
Package gitexec implements ports.VCSClient by shelling out to the git binary.
|
Package gitexec implements ports.VCSClient by shelling out to the git binary. |
|
adapters/ziparchive
Package ziparchive is the shared-kernel adapter for reading ZIP archives.
|
Package ziparchive is the shared-kernel adapter for reading ZIP archives. |
|
audit
Package audit defines the context-neutral audit-event vocabulary.
|
Package audit defines the context-neutral audit-event vocabulary. |
|
callgraph/adapters/analyser/staticcha
Package staticcha implements ports.CallGraphAnalyser using Class Hierarchy Analysis (CHA) via golang.org/x/tools/go/callgraph/cha.
|
Package staticcha implements ports.CallGraphAnalyser using Class Hierarchy Analysis (CHA) via golang.org/x/tools/go/callgraph/cha. |
|
callgraph/adapters/store/sqlite
Package sqlite implements ports.CallGraphStore using a SQLite database via modernc.org/sqlite (pure Go, no CGO).
|
Package sqlite implements ports.CallGraphStore using a SQLite database via modernc.org/sqlite (pure Go, no CGO). |
|
callgraph/application
Package application contains the callgraph use cases.
|
Package application contains the callgraph use cases. |
|
callgraph/domain
Package domain defines the types and invariants for call graph extraction.
|
Package domain defines the types and invariants for call graph extraction. |
|
callgraph/ports
Package ports defines the interfaces the callgraph application layer requires from the outside world.
|
Package ports defines the interfaces the callgraph application layer requires from the outside world. |
|
capability/application
Package application wires the capability domain analysis to a source of stored call graph records.
|
Package application wires the capability domain analysis to a source of stored call graph records. |
|
capability/domain
Package domain implements capability (permission) analysis over a Go module's static call graph.
|
Package domain implements capability (permission) analysis over a Go module's static call graph. |
|
cli/testfakes
Package testfakes provides in-memory fakes for all CLI use-case interfaces.
|
Package testfakes provides in-memory fakes for all CLI use-case interfaces. |
|
composition
Package composition is the neutral composition root shared by the CLI and the public façade (pkg/kanonarion).
|
Package composition is the neutral composition root shared by the CLI and the public façade (pkg/kanonarion). |
|
config
Package config provides the ConfigSpec registration mechanism used by modules to declare their configuration schema and built-in defaults.
|
Package config provides the ConfigSpec registration mechanism used by modules to declare their configuration schema and built-in defaults. |
|
config/adapters/store/yaml
Package yaml implements ConfigStore by reading a YAML config file from disk.
|
Package yaml implements ConfigStore by reading a YAML config file from disk. |
|
config/domain
Package domain contains the core types for the config bounded context.
|
Package domain contains the core types for the config bounded context. |
|
config/ports
Package ports defines the interfaces the config bounded context exposes.
|
Package ports defines the interfaces the config bounded context exposes. |
|
coordinate
Package coordinate is a Shared Kernel: it holds ModuleCoordinate, the one value object with genuine cross-context fan-out (module identity — path and version).
|
Package coordinate is a Shared Kernel: it holds ModuleCoordinate, the one value object with genuine cross-context fan-out (module identity — path and version). |
|
directive/adapters/parser/xmod
Package xmod implements ports.DirectiveParser using golang.org/x/mod/modfile.
|
Package xmod implements ports.DirectiveParser using golang.org/x/mod/modfile. |
|
directive/adapters/store/sqlite
Package sqlite implements ports.DirectiveStore using the shared SQLite database.
|
Package sqlite implements ports.DirectiveStore using the shared SQLite database. |
|
directive/application
Package application orchestrates directive detection: load via ports, delegate classification to the domain, evaluate governance via the config policy, persist the record and emit audit facts.
|
Package application orchestrates directive detection: load via ports, delegate classification to the domain, evaluate governance via the config policy, persist the record and emit audit facts. |
|
directive/domain
Package domain holds the pure business rules for the directive bounded context: detection, risk classification and deterministic ordering of go.mod / go.work `replace` and `exclude` directives.
|
Package domain holds the pure business rules for the directive bounded context: detection, risk classification and deterministic ordering of go.mod / go.work `replace` and `exclude` directives. |
|
directive/ports
Package ports declares the interfaces the directive application depends on.
|
Package ports declares the interfaces the directive application depends on. |
|
driver
Package driver holds the narrow write/serving driver use cases the public façade graduates: composition-root entrypoints that orchestrate existing per-context use cases into a single high-level operation, without exposing the bulk pipeline.
|
Package driver holds the narrow write/serving driver use cases the public façade graduates: composition-root entrypoints that orchestrate existing per-context use cases into a single high-level operation, without exposing the bulk pipeline. |
|
example/adapters/parser/goast
Package goast implements ports.ExampleParser using go/parser, go/ast and go/format over the _test.go entries of a module zip.
|
Package goast implements ports.ExampleParser using go/parser, go/ast and go/format over the _test.go entries of a module zip. |
|
example/adapters/store/sqlite
Package sqlite implements ports.ExampleStore using a SQLite database via modernc.org/sqlite (pure Go, no CGO).
|
Package sqlite implements ports.ExampleStore using a SQLite database via modernc.org/sqlite (pure Go, no CGO). |
|
example/application
Package application contains the example-function harvesting use case: reading a module's zip from the blob store, scanning _test.go files for Example* functions, extracting their bodies and output comments via the Go AST, and persisting an ExampleRecord.
|
Package application contains the example-function harvesting use case: reading a module's zip from the blob store, scanning _test.go files for Example* functions, extracting their bodies and output comments via the Go AST, and persisting an ExampleRecord. |
|
example/domain
Package domain defines the types and invariants for example-function harvesting.
|
Package domain defines the types and invariants for example-function harvesting. |
|
example/ports
Package ports defines the interfaces the example application layer requires from the outside world.
|
Package ports defines the interfaces the example application layer requires from the outside world. |
|
extract/adapters/extractor/local
Package local implements ports.Extractor by routing each named stage to its corresponding local use case.
|
Package local implements ports.Extractor by routing each named stage to its corresponding local use case. |
|
extract/adapters/stages/local
Package local implements ports.StageRegistry with the built-in extraction stages (license, interface, callgraph, example) in canonical execution order.
|
Package local implements ports.StageRegistry with the built-in extraction stages (license, interface, callgraph, example) in canonical execution order. |
|
extract/adapters/store/sqlite
Package sqlite implements ports.ExtractionStore on SQLite.
|
Package sqlite implements ports.ExtractionStore on SQLite. |
|
extract/application
Package application contains the extraction orchestration use case.
|
Package application contains the extraction orchestration use case. |
|
extract/domain
Package domain defines the types and invariants for a coordinated extraction operation.
|
Package domain defines the types and invariants for a coordinated extraction operation. |
|
extract/ports
Package ports defines the interfaces the extract application layer requires from the outside world.
|
Package ports defines the interfaces the extract application layer requires from the outside world. |
|
fetch/application
Package application contains the fetch use cases.
|
Package application contains the fetch use cases. |
|
fetch/domain
Package domain contains the core model for the fetch bounded context.
|
Package domain contains the core model for the fetch bounded context. |
|
fetch/ports
Package ports defines the interfaces the fetch application layer requires from the outside world.
|
Package ports defines the interfaces the fetch application layer requires from the outside world. |
|
fips/adapters/scanner/gosrc
Package gosrc implements ports.FIPSScanner by reading a project's go.mod toolchain directive and walking its source tree for FIPS-relevant import paths.
|
Package gosrc implements ports.FIPSScanner by reading a project's go.mod toolchain directive and walking its source tree for FIPS-relevant import paths. |
|
fips/adapters/store/sqlite
Package sqlite implements ports.FIPSStore using the shared SQLite database.
|
Package sqlite implements ports.FIPSStore using the shared SQLite database. |
|
fips/application
Package application orchestrates FIPS assessment: load via ports, delegate classification to the domain catalogue, evaluate governance via the config policy, persist the record and emit audit facts.
|
Package application orchestrates FIPS assessment: load via ports, delegate classification to the domain catalogue, evaluate governance via the config policy, persist the record and emit audit facts. |
|
fips/domain
Package domain holds the pure business rules for the fips bounded context assessment modelling, toolchain & algorithm catalogues, and the deterministic ordering of FIPS findings.
|
Package domain holds the pure business rules for the fips bounded context assessment modelling, toolchain & algorithm catalogues, and the deterministic ordering of FIPS findings. |
|
fips/ports
Package ports declares the interfaces the fips application depends on.
|
Package ports declares the interfaces the fips application depends on. |
|
godebug/adapters/scanner/gosrc
Package gosrc implements ports.GoDebugScanner by scanning a project's Go source tree for `//go:debug name=value` directives.
|
Package gosrc implements ports.GoDebugScanner by scanning a project's Go source tree for `//go:debug name=value` directives. |
|
godebug/adapters/store/sqlite
Package sqlite implements ports.GoDebugStore using the shared SQLite database.
|
Package sqlite implements ports.GoDebugStore using the shared SQLite database. |
|
godebug/application
Package application orchestrates godebug detection: load via ports, delegate classification to the domain taxonomy, evaluate governance via the config policy, persist the record and emit audit facts.
|
Package application orchestrates godebug detection: load via ports, delegate classification to the domain taxonomy, evaluate governance via the config policy, persist the record and emit audit facts. |
|
godebug/domain
Package domain holds the pure business rules for the godebug bounded context: detection-result modelling, versioned taxonomy classification and deterministic ordering of GODEBUG / //go:debug settings.
|
Package domain holds the pure business rules for the godebug bounded context: detection-result modelling, versioned taxonomy classification and deterministic ordering of GODEBUG / //go:debug settings. |
|
godebug/ports
Package ports declares the interfaces the godebug application depends on.
|
Package ports declares the interfaces the godebug application depends on. |
|
iface/adapters/extractor/godoc
Package godoc implements ports.InterfaceExtractor using go/parser and go/doc.
|
Package godoc implements ports.InterfaceExtractor using go/parser and go/doc. |
|
iface/adapters/store/sqlite
Package sqlite implements ports.InterfaceStore using a SQLite database via modernc.org/sqlite (pure Go, no CGO).
|
Package sqlite implements ports.InterfaceStore using a SQLite database via modernc.org/sqlite (pure Go, no CGO). |
|
iface/application
Package application contains the ExtractInterfaceUseCase, which orchestrates blob retrieval, interface extraction, hashing, and persistence for a single module coordinate.
|
Package application contains the ExtractInterfaceUseCase, which orchestrates blob retrieval, interface extraction, hashing, and persistence for a single module coordinate. |
|
iface/domain
Package domain defines the types and invariants for public interface extraction.
|
Package domain defines the types and invariants for public interface extraction. |
|
iface/ports
Package ports defines the interfaces the iface application layer requires from the outside world.
|
Package ports defines the interfaces the iface application layer requires from the outside world. |
|
license/adapters/detector/licensecheck
Package licensecheck wraps github.com/google/licensecheck as a ports.LicenseDetector.
|
Package licensecheck wraps github.com/google/licensecheck as a ports.LicenseDetector. |
|
license/adapters/overrides/yaml
Package yaml implements license/ports.LicenseOverrideStore over the license_overrides section of config.yaml.
|
Package yaml implements license/ports.LicenseOverrideStore over the license_overrides section of config.yaml. |
|
license/adapters/snippetscan
Package snippetscan walks a module's first-party Go source for SPDX snippet blocks marking third-party code transcribed into it.
|
Package snippetscan walks a module's first-party Go source for SPDX snippet blocks marking third-party code transcribed into it. |
|
license/adapters/store/sqlite
Package sqlite implements ports.LicenseStore using a SQLite database via modernc.org/sqlite (pure Go, no CGO).
|
Package sqlite implements ports.LicenseStore using a SQLite database via modernc.org/sqlite (pure Go, no CGO). |
|
license/application
Package application contains the license extraction use case: reading a module's zip from the blob store, scanning it for license files, classifying each with the configured detector, and persisting a LicenceRecord.
|
Package application contains the license extraction use case: reading a module's zip from the blob store, scanning it for license files, classifying each with the configured detector, and persisting a LicenceRecord. |
|
license/domain
Package domain defines the license bounded context's core model: the per-module license extraction record produced by scanning module zips for license files, classifying each against known SPDX identifiers, and deriving a primary license determination.
|
Package domain defines the license bounded context's core model: the per-module license extraction record produced by scanning module zips for license files, classifying each against known SPDX identifiers, and deriving a primary license determination. |
|
license/ports
Package ports defines the interfaces the license application layer requires from the outside world.
|
Package ports defines the interfaces the license application layer requires from the outside world. |
|
local/adapters/dependencies/store
Package store provides a DependencyLoader adapter backed by the global callgraph store.
|
Package store provides a DependencyLoader adapter backed by the global callgraph store. |
|
local/adapters/importer/golist
Package golist implements ports.ImportAnalyser by running go list -json -deps against the workspace directory and grouping imported packages by module.
|
Package golist implements ports.ImportAnalyser by running go list -json -deps against the workspace directory and grouping imported packages by module. |
|
local/adapters/probe/builder
Package builder implements ports.SymbolTableProber.
|
Package builder implements ports.SymbolTableProber. |
|
local/adapters/snapshot/walkdir
Package walkdir provides an fs.WalkDir-based SnapshotBuilder.
|
Package walkdir provides an fs.WalkDir-based SnapshotBuilder. |
|
local/adapters/symbols/gopackages
Package gopackages implements ports.SymbolAnalyser using go/packages type-checking to identify which exported symbols from dependency packages are referenced by the local workspace (~2-5s).
|
Package gopackages implements ports.SymbolAnalyser using go/packages type-checking to identify which exported symbols from dependency packages are referenced by the local workspace (~2-5s). |
|
local/adapters/vulnfindings/store
Package store provides a VulnFindingLoader adapter backed by the global vulnerability store.
|
Package store provides a VulnFindingLoader adapter backed by the global vulnerability store. |
|
local/adapters/workspace/goast
Package goast implements ports.WorkspaceAnalyser using go/parser to extract function declarations directly from Snapshot file contents without disk I/O.
|
Package goast implements ports.WorkspaceAnalyser using go/parser to extract function declarations directly from Snapshot file contents without disk I/O. |
|
local/application
Package application orchestrates local workspace analysis.
|
Package application orchestrates local workspace analysis. |
|
local/domain
Package domain defines the Snapshot type — a frozen, deterministic map of Go workspace files used as the shared foundation for local workspace analysis.
|
Package domain defines the Snapshot type — a frozen, deterministic map of Go workspace files used as the shared foundation for local workspace analysis. |
|
local/ports
Package ports defines the interfaces for local workspace analysis.
|
Package ports defines the interfaces for local workspace analysis. |
|
sbom/adapters/generator/cyclonedx
Package cyclonedx implements ports.SBOMGenerator producing CycloneDX 1.6 JSON.
|
Package cyclonedx implements ports.SBOMGenerator producing CycloneDX 1.6 JSON. |
|
sbom/adapters/store/sqlite
Package sqlite implements ports.SBOMStore using a SQLite database.
|
Package sqlite implements ports.SBOMStore using a SQLite database. |
|
sbom/application
Package application contains the SBOM use cases.
|
Package application contains the SBOM use cases. |
|
sbom/domain
Package domain defines the types and policy for Software Bill of Materials generation.
|
Package domain defines the types and policy for Software Bill of Materials generation. |
|
sbom/ports
Package ports defines the interfaces the sbom application layer requires from the outside world.
|
Package ports defines the interfaces the sbom application layer requires from the outside world. |
|
stdlib/adapters/gitlsremote
Package gitlsremote implements ports.CommitResolver by running `git ls-remote` against the Go source repository to resolve a release tag to its commit — the VCS-anchor half of the standard-library chain of custody.
|
Package gitlsremote implements ports.CommitResolver by running `git ls-remote` against the Go source repository to resolve a release tag to its commit — the VCS-anchor half of the standard-library chain of custody. |
|
stdlib/adapters/godev
Package godev implements the go.dev/dl-backed ports: the release manifest client and the source-tarball downloader.
|
Package godev implements the go.dev/dl-backed ports: the release manifest client and the source-tarball downloader. |
|
stdlib/adapters/licenseident
Package licenseident adapts the licence-extraction stage's detector to the standard-library ports.LicenseIdentifier, so the stdlib licence is classified by the same corpus every module licence is, rather than asserted.
|
Package licenseident adapts the licence-extraction stage's detector to the standard-library ports.LicenseIdentifier, so the stdlib licence is classified by the same corpus every module licence is, rather than asserted. |
|
stdlib/adapters/localsource
Package localsource implements ports.LocalSourceReader over the local Go toolchain's install tree: it exposes $GOROOT/src as an fs.FS for digesting and reads $GOROOT/LICENSE for classification.
|
Package localsource implements ports.LocalSourceReader over the local Go toolchain's install tree: it exposes $GOROOT/src as an fs.FS for digesting and reads $GOROOT/LICENSE for classification. |
|
stdlib/adapters/store/sqlite
Package sqlite implements ports.Store for standard-library facts using the shared mirror.db via modernc.org/sqlite (pure Go, no CGO).
|
Package sqlite implements ports.Store for standard-library facts using the shared mirror.db via modernc.org/sqlite (pure Go, no CGO). |
|
stdlib/adapters/toolchainenv
Package toolchainenv implements ports.ToolchainInspector by probing the local Go toolchain with `go env GOROOT GOVERSION`.
|
Package toolchainenv implements ports.ToolchainInspector by probing the local Go toolchain with `go env GOROOT GOVERSION`. |
|
stdlib/adapters/walkbridge
Package walkbridge adapts the standard-library acquisition use-case to the walk stage's StdlibAcquirer port.
|
Package walkbridge adapts the standard-library acquisition use-case to the walk stage's StdlibAcquirer port. |
|
stdlib/application
Package application holds the standard-library chain-of-custody use-case: it acquires the canonical source tarball, verifies its integrity against Go's published checksum, records the VCS anchor, computes the artefact digests, extracts the licence, and caches the derived facts by Go version.
|
Package application holds the standard-library chain-of-custody use-case: it acquires the canonical source tarball, verifies its integrity against Go's published checksum, records the VCS anchor, computes the artefact digests, extracts the licence, and caches the derived facts by Go version. |
|
stdlib/domain
Package domain holds the standard-library chain-of-custody value objects.
|
Package domain holds the standard-library chain-of-custody value objects. |
|
stdlib/ports
Package ports declares the boundaries the standard-library acquisition use-case drives: the go.dev/dl release manifest and tarball, the googlesource commit anchor, licence identification, and the fact cache.
|
Package ports declares the boundaries the standard-library acquisition use-case drives: the go.dev/dl release manifest and tarball, the googlesource commit anchor, licence identification, and the fact cache. |
|
vendortree/adapters/scanner/localfs
Package localfs implements ports.VendorScanner against the local filesystem.
|
Package localfs implements ports.VendorScanner against the local filesystem. |
|
vendortree/adapters/store/sqlite
Package sqlite implements ports.VendorStore using the shared SQLite database.
|
Package sqlite implements ports.VendorStore using the shared SQLite database. |
|
vendortree/application
Package application orchestrates vendored-closure reconciliation: load via the scanner port, delegate finding aggregation to the domain, evaluate governance via the config policy, persist the record and emit an audit fact.
|
Package application orchestrates vendored-closure reconciliation: load via the scanner port, delegate finding aggregation to the domain, evaluate governance via the config policy, persist the record and emit an audit fact. |
|
vendortree/domain
Package domain holds the pure business rules for the vendor bounded context reconciling a project's vendor/ tree, vendor/modules.txt, go.mod require set and go.sum into a classified set of findings (drift / inconsistency / unverified) plus a deterministic record.
|
Package domain holds the pure business rules for the vendor bounded context reconciling a project's vendor/ tree, vendor/modules.txt, go.mod require set and go.sum into a classified set of findings (drift / inconsistency / unverified) plus a deterministic record. |
|
vendortree/ports
Package ports declares the interfaces the vendor application depends on.
|
Package ports declares the interfaces the vendor application depends on. |
|
vuln/adapters/fetch
Package fetch adapts the fetch context's FetchModuleUseCase to the vuln context's ports.ModuleFetcher.
|
Package fetch adapts the fetch context's FetchModuleUseCase to the vuln context's ports.ModuleFetcher. |
|
vuln/adapters/reachability
Package reachability implements ports.ReachabilityAnalyser using static call-graph analysis.
|
Package reachability implements ports.ReachabilityAnalyser using static call-graph analysis. |
|
vuln/adapters/store/sqlite
Package sqlite implements ports.VulnerabilityStore on SQLite.
|
Package sqlite implements ports.VulnerabilityStore on SQLite. |
|
vuln/adapters/vuln/govulncheck
Package govulncheck implements ports.VulnerabilityScanner by driving the external govulncheck binary.
|
Package govulncheck implements ports.VulnerabilityScanner by driving the external govulncheck binary. |
|
vuln/adapters/vulndb/osv
Package osv implements ports.VulnerabilityDatabase against the Go vulnerability database at vuln.go.dev.
|
Package osv implements ports.VulnerabilityDatabase against the Go vulnerability database at vuln.go.dev. |
|
vuln/application
Package application orchestrates vulnerability scanning use cases.
|
Package application orchestrates vulnerability scanning use cases. |
|
vuln/domain
Package domain defines the types and invariants for vulnerability scanning.
|
Package domain defines the types and invariants for vulnerability scanning. |
|
vuln/ports
Package ports defines the interfaces the vuln application layer requires from the outside world.
|
Package ports defines the interfaces the vuln application layer requires from the outside world. |
|
walk/adapters/buildlist/gotoolchain
Package gotoolchain implements ports.BuildListResolver by delegating build-list computation to the Go toolchain.
|
Package gotoolchain implements ports.BuildListResolver by delegating build-list computation to the Go toolchain. |
|
walk/adapters/fetcher/local
Package local provides a ModuleFetcher adapter backed by the local FetchModuleUseCase.
|
Package local provides a ModuleFetcher adapter backed by the local FetchModuleUseCase. |
|
walk/adapters/gomod/xmod
Package xmod implements the GoModParser port using golang.org/x/mod/modfile.
|
Package xmod implements the GoModParser port using golang.org/x/mod/modfile. |
|
walk/adapters/localfs
Package localfs provides a walk adapter that implements walkports.LocalModuleFetcher by creating FactRecords from local filesystem source trees instead of fetching from a module proxy.
|
Package localfs provides a walk adapter that implements walkports.LocalModuleFetcher by creating FactRecords from local filesystem source trees instead of fetching from a module proxy. |
|
walk/adapters/policy/localfile
Package localfile implements PolicyStore by reading a YAML policy file from disk.
|
Package localfile implements PolicyStore by reading a YAML policy file from disk. |
|
walk/adapters/walks/sqlite
Package sqlite implements ports.WalkStore using a SQLite database via modernc.org/sqlite (pure Go, no CGO).
|
Package sqlite implements ports.WalkStore using a SQLite database via modernc.org/sqlite (pure Go, no CGO). |
|
walk/application
Package application implements the GraphResolver: a service that takes a target module coordinate and produces a complete, deterministic dependency Graph representing the transitive closure under Go's minimum version selection (MVS).
|
Package application implements the GraphResolver: a service that takes a target module coordinate and produces a complete, deterministic dependency Graph representing the transitive closure under Go's minimum version selection (MVS). |
|
walk/domain
Package domain defines the walk bounded context's core model: the dependency graph produced by resolving a target module's complete transitive closure under Go's minimum version selection (MVS), and the WalkRecord aggregate root that persists a completed walk as a tamper-evident fact.
|
Package domain defines the walk bounded context's core model: the dependency graph produced by resolving a target module's complete transitive closure under Go's minimum version selection (MVS), and the WalkRecord aggregate root that persists a completed walk as a tamper-evident fact. |
|
walk/ports
Package ports defines the interfaces the walk application layer requires from the outside world.
|
Package ports defines the interfaces the walk application layer requires from the outside world. |
|
pkg
|
|
|
kanonarion
Package kanonarion is the public API façade for the kanonarion module.
|
Package kanonarion is the public API façade for the kanonarion module. |
Click to show internal directories.
Click to hide internal directories.