Skip to content

feat(cli): land Slice 0 foundation walking skeleton - #50

Merged
gnanirahulnutakki merged 7 commits into
devfrom
feat/slice-0-foundation
Jul 10, 2026
Merged

feat(cli): land Slice 0 foundation walking skeleton#50
gnanirahulnutakki merged 7 commits into
devfrom
feat/slice-0-foundation

Conversation

@gnanirahulnutakki

@gnanirahulnutakki gnanirahulnutakki commented Jul 10, 2026

Copy link
Copy Markdown
Member

Summary

  • establish the supported Go module, reproducible make build, structured logging, and fail-safe configuration precedence
  • add the source-abstract fleet.Source / FleetResult seam with a typed empty StubSource
  • ship sith version, sith clusters, sith ui, and sith hub with deterministic text/JSON behavior
  • add table-driven package tests, race coverage, process-level binary integration tests, and the GSTACK journal
  • enforce format, vet, pinned golangci-lint, build, race, coverage, and e2e gates in least-privilege CI

Security and maintenance corrections to the draft spec

  • use supported oldstable Go 1.25; Go 1.24 is outside the official support window
  • use maintained go.yaml.in/yaml/v3 v3.0.4 instead of the archived gopkg.in/yaml.v3 source
  • pin GitHub Actions to full release commit SHAs and golangci-lint to v2.12.2
  • reject unknown, oversized, and multi-document config input; keep all Slice 0 behavior local and network-free

Validation

  • make ci with Go 1.25.12 and golangci-lint v2.12.2
  • GitHub Actions run 29117218747 green at tip 2628d29
  • go test -race -count=1 -coverprofile=coverage.out ./...
  • go test -race -count=1 -tags=e2e ./tests/e2e, including deterministic Makefile/ldflags metadata injection
  • 20 shuffled unit-test repetitions
  • govulncheck ./...: no vulnerabilities found
  • all seven commits DCO signed-off, SSH-signed, and linked to GSTACK checkpoints
  • manual text/JSON/exit-code smoke for every Slice 0 command

The process-level e2e suite is the meaningful integration boundary for this stub-only slice. The required two-real-cluster kind proof starts in Slice 1, where kubeconfig fan-out and Kubernetes API behavior exist; adding client-go here would violate Slice 0's explicit non-goals.

The authoritative build-plan/spec PR remains separate; this change includes only the session scaffold required by #47 and does not duplicate plan documents.

Closes #47

Gnani Rahul added 6 commits July 10, 2026 14:03
Pin the supported Go baseline, minimal runtime dependencies, and strict formatting, linting, and security checks for Slice 0.

GSTACK-Checkpoint: 2026-07-10/slice-0-foundation#1
Signed-off-by: Gnani Rahul <gnani.nutakki@gmail.com>
Implement build metadata, fail-safe config precedence, structured logging, and the source-abstract FleetResult stub seam with table-driven tests.

GSTACK-Checkpoint: 2026-07-10/slice-0-foundation#2
Signed-off-by: Gnani Rahul <gnani.nutakki@gmail.com>
Wire Cobra commands to the stub fleet source, provide deterministic text and JSON output, and verify the real binary boundary with subprocess smoke tests.

GSTACK-Checkpoint: 2026-07-10/slice-0-foundation#3
Signed-off-by: Gnani Rahul <gnani.nutakki@gmail.com>
Run module verification, formatting, vet, pinned lint, build, race tests, coverage, and process-level e2e checks with least-privilege action permissions.

GSTACK-Checkpoint: 2026-07-10/slice-0-foundation#4
Signed-off-by: Gnani Rahul <gnani.nutakki@gmail.com>
Replace the planning-only README with runnable build guidance and capture implementation, validation, review, and commit checkpoints in the GSTACK journal.

GSTACK-Checkpoint: 2026-07-10/slice-0-foundation#5
Signed-off-by: Gnani Rahul <gnani.nutakki@gmail.com>
The v9 action invokes golangci-lint run itself, so provide only the ./... package pattern and record the failed remote run in the GSTACK journal.

GSTACK-Checkpoint: 2026-07-10/slice-0-foundation#6
Signed-off-by: Gnani Rahul <gnani.nutakki@gmail.com>
Exercise the real make build path with deterministic ldflags and assert the compiled binary reports the injected version, commit, and date.

GSTACK-Checkpoint: 2026-07-10/slice-0-foundation#7
Signed-off-by: Gnani Rahul <gnani.nutakki@gmail.com>
@gnanirahulnutakki
gnanirahulnutakki merged commit 3a20e2d into dev Jul 10, 2026
1 check passed
@gnanirahulnutakki
gnanirahulnutakki deleted the feat/slice-0-foundation branch July 10, 2026 19:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant