Documentation
ΒΆ
Index ΒΆ
- Constants
- func CheckStaleness(rep Report, dur time.Duration) error
- func FormatFilesList(fileGroups map[string][]*storage.Token) string
- func FormatGrepResults(tokens []*storage.Token) string
- func FormatGrepResultsByRequirement(tokens []*storage.Token) string
- func FormatTokensTable(tokens []*storage.Token, groupBy string) string
- func GrepTokens(db *storage.DB, pattern string, limit int) ([]*storage.Token, error)
- func GroupTokens(tokens []*storage.Token, groupBy string) map[string][]*storage.Token
- func ParseGAPClaims(path string) (map[string]claim, error)
- func Run(rep Report, out, csv string) error
- func VerifyClaims(rep Report, claims map[string]claim) error
- func WriteCSV(rep Report, path string) error
- type Canary
- type Report
Constants ΒΆ
const CanaryEnd = "END"
const CanaryKey = "CANARY"
const CanaryStart = "START"
const CommentPrefix = "<!--"
const CommentSuffix = "-->"
Variables ΒΆ
This section is empty.
Functions ΒΆ
func CheckStaleness ΒΆ
CheckStaleness delegates to gate.CheckStalenessTokens for consistency.
func FormatFilesList ΒΆ
FormatFilesList converts fileGroups (map[file][]tokens) into a human-readable summary grouped by aspect.
func FormatGrepResults ΒΆ
FormatGrepResults returns human readable list output for grep tokens.
func FormatGrepResultsByRequirement ΒΆ
FormatGrepResultsByRequirement groups grep tokens by requirement.
func FormatTokensTable ΒΆ
FormatTokensTable renders grouped tokens (used by show command).
func GrepTokens ΒΆ
CANARY: REQ=CBIN-205; FEATURE="ContextCaps"; ASPECT=API; STATUS=IMPL; UPDATED=2026-08-28 GrepTokens returns tokens whose feature/file/test/bench/reqID match pattern (case-insensitive substring), bounded by limit (<=0 uses the storage layer's own small default; see storage.DefaultSearchLimit).
NOTE: SearchTokens' SQL already matches keywords, feature, req_id, file_path, test, and bench columns (bounded by LIMIT), so a single bounded call covers every column this function's contract advertises. Previously this loaded the entire token table via db.ListTokens(nil, "", "", 0) to catch file/test/bench matches that the old (narrower) SearchTokens couldn't produce; that full-table union is no longer needed now that SearchTokens covers those columns itself.
func GroupTokens ΒΆ
GroupTokens groups tokens by aspect/status (default aspect).
func ParseGAPClaims ΒΆ
func Run ΒΆ
Run executes a scan and writes JSON/CSV outputs. Caller supplies already-built report. This separates CLI main from library logic.
func VerifyClaims ΒΆ
Types ΒΆ
Directories
ΒΆ
| Path | Synopsis |
|---|---|
|
cmd
|
|
|
canary
command
CANARY: REQ=CBIN-CLI-104; FEATURE="CanaryCLI"; ASPECT=CLI; STATUS=IMPL; OWNER=canary; UPDATED=2025-10-16
|
CANARY: REQ=CBIN-CLI-104; FEATURE="CanaryCLI"; ASPECT=CLI; STATUS=IMPL; OWNER=canary; UPDATED=2025-10-16 |
|
pkg
|
|
|
canaryscan
CANARY: REQ=CBIN-202; FEATURE="MermaidRefs"; ASPECT=Engine; STATUS=TESTED; TEST=TestCANARY_CBIN_202_ExtractDiagramRefs; UPDATED=2026-08-28
|
CANARY: REQ=CBIN-202; FEATURE="MermaidRefs"; ASPECT=Engine; STATUS=TESTED; TEST=TestCANARY_CBIN_202_ExtractDiagramRefs; UPDATED=2026-08-28 |
|
cmds/gap
CANARY: REQ=CBIN-140; FEATURE="GapCLI"; ASPECT=CLI; STATUS=IMPL; UPDATED=2025-10-17
|
CANARY: REQ=CBIN-140; FEATURE="GapCLI"; ASPECT=CLI; STATUS=IMPL; UPDATED=2025-10-17 |
|
cmds/implement
CANARY: REQ=CBIN-133; FEATURE="RequirementLookup"; ASPECT=API; STATUS=TESTED; UPDATED=2025-10-16
|
CANARY: REQ=CBIN-133; FEATURE="RequirementLookup"; ASPECT=API; STATUS=TESTED; UPDATED=2025-10-16 |
|
cmds/next
CANARY: REQ=CBIN-132; FEATURE="NextPriorityCommand"; ASPECT=CLI; STATUS=BENCHED; TEST=TestCANARY_CBIN_132_CLI_NextPrioritySelection; BENCH=BenchmarkCANARY_CBIN_132_CLI_PriorityQuery; OWNER=canary; UPDATED=2025-10-16
|
CANARY: REQ=CBIN-132; FEATURE="NextPriorityCommand"; ASPECT=CLI; STATUS=BENCHED; TEST=TestCANARY_CBIN_132_CLI_NextPrioritySelection; BENCH=BenchmarkCANARY_CBIN_132_CLI_PriorityQuery; OWNER=canary; UPDATED=2025-10-16 |
|
cmds/project
CANARY: REQ=CBIN-146; FEATURE="ProjectCLI"; ASPECT=CLI; STATUS=IMPL; UPDATED=2025-10-18
|
CANARY: REQ=CBIN-146; FEATURE="ProjectCLI"; ASPECT=CLI; STATUS=IMPL; UPDATED=2025-10-18 |
|
cmds/specify
CANARY: REQ=CBIN-134; FEATURE="SpecModification"; ASPECT=CLI; STATUS=IMPL; DOC=user:docs/user/spec-modification-guide.md; DOC_HASH=676eb2a18c9d002a; UPDATED=2025-10-17
|
CANARY: REQ=CBIN-134; FEATURE="SpecModification"; ASPECT=CLI; STATUS=IMPL; DOC=user:docs/user/spec-modification-guide.md; DOC_HASH=676eb2a18c9d002a; UPDATED=2025-10-17 |
|
cmds/view
Package view aggregates everything known about one requirement β tokens, files, tests, dependencies, spec/plan, diagrams, ticket link β into one bounded, agent-friendly answer.
|
Package view aggregates everything known about one requirement β tokens, files, tests, dependencies, spec/plan, diagrams, ticket link β into one bounded, agent-friendly answer. |
|
config
CANARY: REQ=CBIN-140; FEATURE="ProjectConfig"; ASPECT=Storage; STATUS=IMPL; UPDATED=2025-10-16
|
CANARY: REQ=CBIN-140; FEATURE="ProjectConfig"; ASPECT=Storage; STATUS=IMPL; UPDATED=2025-10-16 |
|
gap
CANARY: REQ=CBIN-140; FEATURE="GapService"; ASPECT=Engine; STATUS=IMPL; UPDATED=2025-10-17
|
CANARY: REQ=CBIN-140; FEATURE="GapService"; ASPECT=Engine; STATUS=IMPL; UPDATED=2025-10-17 |
|
matcher
CANARY: REQ=CBIN-133; FEATURE="FuzzyMatcher"; ASPECT=Engine; STATUS=TESTED; TEST=TestCANARY_CBIN_133_Engine_Levenshtein; OWNER=canary; UPDATED=2025-10-16
|
CANARY: REQ=CBIN-133; FEATURE="FuzzyMatcher"; ASPECT=Engine; STATUS=TESTED; TEST=TestCANARY_CBIN_133_Engine_Levenshtein; OWNER=canary; UPDATED=2025-10-16 |
|
migrate
CANARY: REQ=CBIN-131; FEATURE="MigrateFrom"; ASPECT=CLI; STATUS=IMPL; OWNER=canary; UPDATED=2025-10-16
|
CANARY: REQ=CBIN-131; FEATURE="MigrateFrom"; ASPECT=CLI; STATUS=IMPL; OWNER=canary; UPDATED=2025-10-16 |
|
reqid
CANARY: REQ=CBIN-139; FEATURE="AspectIDGenerator"; ASPECT=Engine; STATUS=IMPL; UPDATED=2025-10-16
|
CANARY: REQ=CBIN-139; FEATURE="AspectIDGenerator"; ASPECT=Engine; STATUS=IMPL; UPDATED=2025-10-16 |
|
sources
Package sources resolves requirement-ID prefixes to their origin: a local flatfile series (e.g.
|
Package sources resolves requirement-ID prefixes to their origin: a local flatfile series (e.g. |
|
specs
CANARY: REQ=CBIN-134; FEATURE="ExactIDLookup"; ASPECT=Engine; STATUS=IMPL; UPDATED=2025-10-16
|
CANARY: REQ=CBIN-134; FEATURE="ExactIDLookup"; ASPECT=Engine; STATUS=IMPL; UPDATED=2025-10-16 |
|
storage
CANARY: REQ=CBIN-146; FEATURE="ContextManagement"; ASPECT=Engine; STATUS=IMPL; UPDATED=2025-10-18
|
CANARY: REQ=CBIN-146; FEATURE="ContextManagement"; ASPECT=Engine; STATUS=IMPL; UPDATED=2025-10-18 |
|
storage/testutil
CANARY: REQ=CBIN-146; FEATURE="TestInfrastructure"; ASPECT=Storage; STATUS=IMPL; UPDATED=2025-10-18
|
CANARY: REQ=CBIN-146; FEATURE="TestInfrastructure"; ASPECT=Storage; STATUS=IMPL; UPDATED=2025-10-18 |
|
tools
|
|
|
canary
command
|
|
|
convert-md-canary
command
|