How fastabc/fastconf works
FastConf is a Go configuration manager: it assembles layered local and provider inputs, runs a fail-safe typed reload pipeline, and atomically publishes immutable snapshots for lock-free reads. The graph highlights that workflow plus documented profiles, policy, provenance, watching, integrations, and CLI/sidecar capabilities. Edges follow the excerpts and README; where implementations were not sampled, documented capabilities are retained but uncertain internal links are omitted.
Main entry points: manager.go Manager & Reload · pipeline.go Validation & Policy · assemble.go Input Assembly · fastconfd fastconfd API
Components 23
Inputs & Providers
- Config Files
- Config Providers
providers
Reload Pipeline
- Input Assembly
assemble.go - File Scanner
internal/scan/scan.go - Layer Merge
commit.go - Transforms & Secrets
transform - Typed Hooks
codec/typed_hooks.go - Typed Decode
decode.go - Validation & Policy
pipeline.go
Published Runtime
- Manager & Reload
manager.go - Atomic State
state.go - Change Watchers
file_watch.go - History & Rollback
history.go - Origins & Explain
internal/provenance/index.go - Observers & Events
observe/observe.go - Subscriptions
subscribe.go
Extensions
- Policy Engines
policy - Config Rendering
integrations/render/render.go - Metrics & Tracing
observability
Operator Tools
- fastconfctl
cmd/fastconfctl - fastconfd API
cmd/fastconfd
Other components
- Go Application
- HTTP Clients
Connections 26
- Go Application → Manager & Reload: creates manager
README.md - Config Files → Input Assembly: loads layers
README.md - Config Providers → Input Assembly: supplies inputs
README.md - Manager & Reload → Input Assembly: assembles inputs
- Input Assembly → File Scanner: scans files
- Input Assembly → Layer Merge: stages layers
- Manager & Reload → Validation & Policy: runs stages
pipeline.go - Validation & Policy → Transforms & Secrets: runs transform
pipeline.go - Validation & Policy → Typed Hooks: runs typed hooks
pipeline.go - Validation & Policy → Typed Decode: runs decode
pipeline.go - Validation & Policy → Policy Engines: evaluates policy
pipeline.go - Manager & Reload → Atomic State: publishes snapshot
README.md - Go Application → Atomic State: reads snapshot
README.md - Manager & Reload → Change Watchers: starts watchers
manager.go - Manager & Reload → History & Rollback: retains history
README.md - Layer Merge → Origins & Explain: records origins
- Atomic State → Origins & Explain: explains fields
internal/provenance/index.go - Manager & Reload → Observers & Events: notifies observers
README.md - Manager & Reload → Subscriptions: notifies subscribers
README.md - Config Providers → HTTP Clients: fetches remote config
- Config Rendering → Config Providers: renders provider data
integrations/render/render.go - Metrics & Tracing → Manager & Reload: observes reloads
- fastconfctl → Manager & Reload: loads and inspects
- fastconfd API → Manager & Reload: serves snapshots
cmd/fastconfd/handlers.go - HTTP Clients → fastconfd API: requests config
cmd/fastconfd/main.go - fastconfd API → Manager & Reload: requests reload
cmd/fastconfd/handlers.go