Class: ProjectChronicle

August 8, 2026 ยท View on GitHub

@plures/praxis


@plures/praxis / index / ProjectChronicle

Class: ProjectChronicle

Defined in: src/chronos/project-chronicle.ts:66

In-memory, append-only chronicle of project lifecycle events.

Thread-safe for single-threaded JS; immutable snapshots via getEvents().

Constructors

Constructor

new ProjectChronicle(options?): ProjectChronicle

Defined in: src/chronos/project-chronicle.ts:71

Parameters

options?

ProjectChronicleOptions = {}

Returns

ProjectChronicle

Accessors

size

Get Signature

get size(): number

Defined in: src/chronos/project-chronicle.ts:184

Total number of recorded events.

Returns

number

Methods

clear()

clear(): void

Defined in: src/chronos/project-chronicle.ts:189

Clear all events (primarily for testing).

Returns

void


getEvents()

getEvents(): ProjectEvent[]

Defined in: src/chronos/project-chronicle.ts:179

Return a shallow copy of all events.

Returns

ProjectEvent[]


record()

record(event): ProjectEvent

Defined in: src/chronos/project-chronicle.ts:81

Record a project event. Returns the recorded event (with timestamp filled in).

Parameters

event

Omit<ProjectEvent, "timestamp"> & object

Returns

ProjectEvent


recordBuildAudit()

recordBuildAudit(score, delta, meta?): ProjectEvent

Defined in: src/chronos/project-chronicle.ts:155

Parameters

score

number

delta

number

meta?

Record<string, unknown> = {}

Returns

ProjectEvent


recordContractAdded()

recordContractAdded(contractId, meta?): ProjectEvent

Defined in: src/chronos/project-chronicle.ts:120

Parameters

contractId

string

meta?

Record<string, unknown> = {}

Returns

ProjectEvent


recordContractModified()

recordContractModified(contractId, diff, meta?): ProjectEvent

Defined in: src/chronos/project-chronicle.ts:124

Parameters

contractId

string

diff
after

unknown

before

unknown

meta?

Record<string, unknown> = {}

Returns

ProjectEvent


recordExpectationSatisfied()

recordExpectationSatisfied(name, meta?): ProjectEvent

Defined in: src/chronos/project-chronicle.ts:132

Parameters

name

string

meta?

Record<string, unknown> = {}

Returns

ProjectEvent


recordExpectationViolated()

recordExpectationViolated(name, meta?): ProjectEvent

Defined in: src/chronos/project-chronicle.ts:136

Parameters

name

string

meta?

Record<string, unknown> = {}

Returns

ProjectEvent


recordFactDeprecated()

recordFactDeprecated(factTag, meta?): ProjectEvent

Defined in: src/chronos/project-chronicle.ts:172

Parameters

factTag

string

meta?

Record<string, unknown> = {}

Returns

ProjectEvent


recordFactIntroduced()

recordFactIntroduced(factTag, meta?): ProjectEvent

Defined in: src/chronos/project-chronicle.ts:168

Parameters

factTag

string

meta?

Record<string, unknown> = {}

Returns

ProjectEvent


recordGateTransition()

recordGateTransition(gateName, from, to, meta?): ProjectEvent

Defined in: src/chronos/project-chronicle.ts:140

Parameters

gateName

string

from

string

to

string

meta?

Record<string, unknown> = {}

Returns

ProjectEvent


recordRuleModified()

recordRuleModified(ruleId, diff, meta?): ProjectEvent

Defined in: src/chronos/project-chronicle.ts:108

Parameters

ruleId

string

diff
after

unknown

before

unknown

meta?

Record<string, unknown> = {}

Returns

ProjectEvent


recordRuleRegistered()

recordRuleRegistered(ruleId, meta?): ProjectEvent

Defined in: src/chronos/project-chronicle.ts:104

Parameters

ruleId

string

meta?

Record<string, unknown> = {}

Returns

ProjectEvent


recordRuleRemoved()

recordRuleRemoved(ruleId, meta?): ProjectEvent

Defined in: src/chronos/project-chronicle.ts:116

Parameters

ruleId

string

meta?

Record<string, unknown> = {}

Returns

ProjectEvent