Skip to content

[nightshift] doc-drift: documentation out of sync with codebase #22

@nightshift-micr

Description

@nightshift-micr

Nightshift v3: Documentation Drift Analysis

Automated analysis of documentation-code sync for Microck/tailstick.


P2 Findings (Medium — Documentation incomplete)

1. Config fields not documented in docs/configuration.md

Multiple config struct fields (from internal/config/config.go) are not documented in the configuration docs:

  • All JSON-tagged fields in the Config struct should be documented
  • The .env.example environment variables should cross-reference config docs

2. Test files not mentioned in docs/testing.md

The following test files exist but are not referenced in the testing documentation:

  • internal/app/workflow_test.go
  • internal/config/config_test.go
  • internal/crypto/secret_test.go
  • internal/gui/server_test.go
  • internal/tailscale/client_test.go
  • internal/tailscale/context_test.go

The testing docs should explain how to run each test suite and what each test file covers.

3. Go version not mentioned in README

go.mod specifies Go 1.25, but the README doesn't mention the required Go version.

4. Release runbook without Makefile target

docs/release-runbook.md describes a release process but the Makefile has no release target. The runbook should either document the manual steps or a Makefile target should be added.


P3 Findings (Low — Minor gaps)

5. Architecture doc missing package references

docs/architecture.md does not reference any of the internal packages:

  • internal.app, internal.config, internal.crypto, internal.gui
  • internal.logging, internal.model, internal.platform, internal.state, internal.tailscale

The architecture doc should include a package diagram or table explaining each package's responsibility.

6. CONTRIBUTING.md missing test instructions

CONTRIBUTING.md doesn't mention how to run tests (go test ./...). Contributors need to know the test command.

7. Makefile targets not documented

Makefile targets (build, test, clean, etc.) are not documented in docs/operations.md or the README.


Recommendations

  1. Config docs: Audit config.go struct fields and ensure each has a corresponding entry in docs/configuration.md
  2. Testing docs: Add a section per test file explaining coverage and how to run it
  3. README: Add Go version requirement, project structure overview
  4. Architecture: Add package dependency diagram with all internal/* packages
  5. CONTRIBUTING.md: Add go test ./... and go build ./... commands

Generated by Nightshift v3 (GLM 5.1)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions