Documentation
¶
Overview ¶
Package runlog is the append-only event log that owns every run's state. One JSONL file per run; sequence numbers are monotone; nothing is ever rewritten. Replaying the log is the only way run state is reconstructed.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Event ¶
type Event struct {
Seq int `json:"seq"`
Type EventType `json:"type"`
At time.Time `json:"at"`
Data json.RawMessage `json:"data,omitempty"`
}
Event is one appended fact. Seq is monotone from 1 within a run.
type EventType ¶
type EventType string
const ( RunStarted EventType = "run.started" OperationRequested EventType = "operation.requested" OperationCompleted EventType = "operation.completed" ResponseRejected EventType = "response.rejected" RequirementPassed EventType = "requirement.passed" RequirementFailed EventType = "requirement.failed" DigestMigrated EventType = "digest.migrated" ReplayDiverged EventType = "replay.diverged" RunCompleted EventType = "run.completed" RunBlocked EventType = "run.blocked" RunRefused EventType = "run.refused" )
type Log ¶
type Log struct {
Path string
// contains filtered or unexported fields
}
Log is an open run log. Appends go straight to disk with a sync.
Click to show internal directories.
Click to hide internal directories.