Skip to content

Learning

Defined in: src/types.ts:484

createdAt: number

Defined in: src/types.ts:515


evidence: string[]

Defined in: src/types.ts:489


evidenceCount: number

Defined in: src/types.ts:491


optional evidenceDetail?: EvidenceItem[]

Defined in: src/types.ts:502


optional evidenceKinds?: Partial<Record<SignalKind, number>>

Defined in: src/types.ts:498


helpfulCount: number

Defined in: src/types.ts:504


id: string

Defined in: src/types.ts:485


ineffectiveCount: number

Defined in: src/types.ts:503


injectedCount: number

Defined in: src/types.ts:505


lastEvidenceAt: number | null

Defined in: src/types.ts:517


lastUsedAt: number | null

Defined in: src/types.ts:506


mergedIntoId: string | null

Defined in: src/types.ts:524

When this rule was soft-retired by being consolidated into another rule (Phase 4 merge), the id of the surviving rule it was merged into — the retained citation. Null otherwise. Cleared on restore; only meaningful while the rule is retired with retiredReason === "merged".


promotedPrUrl: string | null

Defined in: src/types.ts:519

URL of the CLAUDE.md promote PR, set when status becomes promoted.


rationale: string

Defined in: src/types.ts:488


repoPath: string

Defined in: src/types.ts:486


retiredAt: number | null

Defined in: src/types.ts:507


retiredReason: string | null

Defined in: src/types.ts:508


rule: string

Defined in: src/types.ts:487


scopeGlobs: string[]

Defined in: src/types.ts:514

Optional glob patterns scoping where this rule applies (repo-relative, e.g. “src/” + star-star or “ui/” + star-star + ”/*.svelte”). Empty = an “Always-rule” injected for every task; non-empty = injected only when the session’s target files match a glob (Phase 3, #842). Distiller-inferred from path-like signal text, or operator-set.


status: LearningStatus

Defined in: src/types.ts:490


updatedAt: number

Defined in: src/types.ts:516