Financial Close
Agents
Seven agents watch this module. They brief, advise, order and propose cover — the entity rollup, the dependency graph, the flux thresholds, the skill graph and the lock conditions are all computed before any of them is called. No agent here can change a task status, reassign work, or lock a period.
Replayed proposals
Agents in this module
7
2 model tier(s)
Calls this run
7
Taken from the audit trail
Mode
Scripted
Fixture-backed and deterministic
Figures an agent originated
0
Enforced by the numeric guardrail
The roster and its boundaries
What each agent does, what it cannot do, and the code that makes that true
| Agent | Does | Never does | Bounded by | Calls |
|---|---|---|---|---|
claude-opus-5 (replayed) | Briefs the controller on where the close stands, what is holding it up and who must act. | Changes a task status, a critical path or a lock condition. | close/tasks.ts and close/lock.ts compute the state it describes | 1 0 ms |
claude-sonnet-5 (replayed) | Writes year-on-year flux commentary and states an evidence gap where the data does not establish a driver. | Decides which movements need explaining — thresholds do that before it is called. | close/flux.ts applies the policy thresholds | 1 2 ms |
claude-opus-5 (replayed) | Recommends the resequencing or reassignment that would pull the close date in, and names what each move depends on. | Reorders the graph. The dependency structure and the longest remaining chain are computed, not advised. | close/tasks.ts — orchestrate() derives the critical path | 1 0 ms |
claude-sonnet-5 (replayed) | Reads owner load against working capacity and says where the close is capacity-constrained rather than process-constrained. | Reassigns a task or changes a due day. | close/skills.ts computes open load, capacity and utilisation per person | 1 0 ms |
claude-opus-5 (replayed) | Proposes who should take over a task that is holding others up, citing the work that person has actually completed. | Names anyone the evidence does not qualify, or performs the reassignment. Eligibility is decided before it is called and the handoff is a human action. | close/assignment.ts filters on entity authority, role and completed-task evidence; close/skills.ts builds that evidence from history | 1 0 ms |
claude-sonnet-5 (replayed) | Reads the group rollup and says which of the twelve entities will not close, and what is stopping each one. | Changes an entity status. Status is derived from that entity’s own tasks and cannot be reported green over a late one. | close/entities.ts — rollUpClose() derives every status from the task set | 1 0 ms |
claude-sonnet-5 (replayed) | Puts the unmet lock conditions in the order they should be cleared and names the owner of each. | Locks the period or marks a condition met. The lock refuses in code, not in prose. | close/lock.ts — assessLock() decides; actions.ts refuses | 1 0 ms |
Deep reasoning
Judgement-heavy work where the cost of a wrong call is high.
claude-opus-5C1C3C6
Workhorse
The default. Structured proposals with a rationale.
claude-sonnet-5C2C4C7C5
What each agent did this run
Newest last, straight from the audit trail
- #8C2 Flux Commentary Agent9:14:26 amDrafted flux commentary on 26 movements
claude-sonnet-5 (replayed)2 ms - #9C1 Close Risk Agent9:14:26 amDrafted the close risk briefing
claude-opus-5 (replayed)0 ms - #10C3 Critical Path Agent9:14:26 amAdvised on the critical path
claude-opus-5 (replayed)0 ms - #11C4 Capacity & SLA Agent9:14:26 amAssessed close team capacity against proven skills
claude-sonnet-5 (replayed)0 ms - #12C7 Entity Readiness Agent9:14:26 amAssessed readiness across 12 entities
claude-sonnet-5 (replayed)0 ms - #13C6 Task Reassignment Agent9:14:26 amProposed cover for 2 stranded task(s)
claude-opus-5 (replayed)0 ms - #14C5 Lock Readiness Agent9:14:26 amOrdered the outstanding path to a period lock
claude-sonnet-5 (replayed)0 ms