kl status, kl history, and kl diff
These commands are the “understand what is happening” surface.
Use them together whenever an apply is slow, unexpected, or suspicious.
kl status
kl status shows the live operational picture for one state:
- HTTP backend lock
- in-flight apply runs
- held reservations
Example
kl status big-state
Use it when someone asks:
- Is an apply stuck?
- Is another operator holding the state?
- Are reservations blocking my change?
kl history
kl history lists append-only state versions, newest first.
Example
kl history big-state --limit 5
Use it when you want:
- the latest state version chain
- a rollback target
- a timeline after repair or drift events
kl diff
kl diff shows resource attribute differences between two versions.
Example
kl diff big-state --from=@1 --to=current --summary
Use it when you want:
- a quick “what changed?” answer after apply
- a focused view before rollback
- filtered inspection of only one address family
More examples
kl diff big-state --from=@2 --to=current --address 'time_sleep.*'
kl diff big-state --format unified
kl diff big-state --format json
Good combined workflow
kl status big-state
kl history big-state --limit 10
kl diff big-state --from=@1 --to=current --summary
That sequence answers:
- what is active now
- what versions exist
- what the latest write actually changed