Context
Decisions are logged but never revisited. A real chief-of-staff tracks whether decisions turned out to be correct and learns from them. This builds a personal accuracy log over time.
Schema changes
Add to Decision model:
followUpAt DateTime? // When to review this decision
outcomeRating Int? // 1-5: how good was the decision in hindsight
actualOutcome String? // What actually happened
reviewedAt DateTime? // When the review was completed
New tool: review_decision
- Parameters:
decisionId, outcomeRating (1-5), actualOutcome (string), optional followUpAt
- Updates the decision record
minTier: "pro"
Nudge integration
The overdue nudge cron should also check for decisions where followUpAt has passed and reviewedAt is null, and emit a notification prompting review.
Files
prisma/schema.prisma — add fields to Decision + migration
lib/decisions/review.logic.ts
lib/tools/registry/decisions.registry.ts — add review_decision
lib/tools/handlers/decisions.handler.ts — add handler
Acceptance Criteria
Context
Decisions are logged but never revisited. A real chief-of-staff tracks whether decisions turned out to be correct and learns from them. This builds a personal accuracy log over time.
Schema changes
Add to
Decisionmodel:New tool:
review_decisiondecisionId,outcomeRating(1-5),actualOutcome(string), optionalfollowUpAtminTier: "pro"Nudge integration
The overdue nudge cron should also check for decisions where
followUpAthas passed andreviewedAtis null, and emit a notification prompting review.Files
prisma/schema.prisma— add fields toDecision+ migrationlib/decisions/review.logic.tslib/tools/registry/decisions.registry.ts— addreview_decisionlib/tools/handlers/decisions.handler.ts— add handlerAcceptance Criteria
followUpAttriggers a notification via cron