Description
All 7 Go tools (discover, execute, map, grasp, scout, harvest, orchestrate) lack a --version flag. They print full usage on -version.
Current Behavior
$ discover --version
Usage: discover [flags]...
# Prints help instead of version
$ execute --version
Usage: execute [flags]...
Required Fix
Add --version flag to each tool's Cobra/flag setup that prints:
$ discover --version
discover v1.0.1-codocs (commit abc1234)
$ execute --version
execute v1.0.0-initial (commit def5678)
Implementation
In each tool's main.go:
- Add
version variable (set via -ldflags at build time)
- Add
--version flag that prints version and exits
- Update CI build to inject version:
go build -ldflags "-X main.version=v1.2.0-3-g4c5a78d" ...
Affected Repos
- SIN-Code-Discover-Tool
- SIN-Code-Execute-Tool
- SIN-Code-Map-Tool
- SIN-Code-Grasp-Tool
- SIN-Code-Scout-Tool
- SIN-Code-Harvest-Tool
- SIN-Code-Orchestrate-Tool
Acceptance Criteria
Priority
MEDIUM — Required for sin update to work properly; also basic CLI professionalism
Description
All 7 Go tools (discover, execute, map, grasp, scout, harvest, orchestrate) lack a
--versionflag. They print full usage on-version.Current Behavior
$ discover --version Usage: discover [flags]... # Prints help instead of version $ execute --version Usage: execute [flags]...Required Fix
Add
--versionflag to each tool's Cobra/flag setup that prints:Implementation
In each tool's
main.go:versionvariable (set via-ldflagsat build time)--versionflag that prints version and exitsgo build -ldflags "-X main.version=v1.2.0-3-g4c5a78d" ...Affected Repos
Acceptance Criteria
--versionwith semantic version + git commitsin update --checkcan detect version differencesPriority
MEDIUM — Required for
sin updateto work properly; also basic CLI professionalism