Action centre
| Who | When | Loan | What happened | Decision | |
|---|---|---|---|---|---|
|
|
|||||
| Loan # | Project / borrower | Prov. | Acct mgr | Risk | Authorization | Outstanding | Rate | LTV | Maturity | Late | |
|---|---|---|---|---|---|---|---|---|---|---|---|
| No loans match those filters. | |||||||||||
What triggered it
The conditions I evaluated, with the values I read. Disagree with one of these and you have a specific thing to change, rather than a system to distrust.
| Check | What I found | What it needed | |
|---|---|---|---|
| No structured checks recorded for this entry. | |||
What I considered and rejected
The options I did not take, and why. An agent that only shows the path it chose is asking to be taken on faith.
The rule
Where it comes from
What changed as a result
The file
Everything I did on this file, in order
What's happening
Everything I am doing, including the checks that find nothing. A feed that only speaks when something happens leaves you wondering whether it is running at all — so "checked, no change" is a result here, not silence.
Showing the most recent entries. In production this is the same stream the Teams cards are cut from.
Somebody put these on your list. This is the only thing in the app that is filed by hand, and that is right — one person asking another to do something is not derivable from a loan record.
These have no author and cannot be ticked off. They disappear when the underlying fact changes — which is the point, and also the reason they sit apart from the list above.
This morning
The playbook's daily checklist, already run. Every returned payment with a deadline falling today or already passed — nothing waits for a weekly meeting. Ten minutes on a quiet day; longer around the 1st to the 5th and around the 15th.
What the app would send
Rendered here — nothing leaves the browserRouted to the role that owns the step, not broadcast. The originator is asked, Finance executes, the two heads are told, and Credit gets a digest rather than a ping per event.
By investor
Funded balance by lender across the book, with the open items on their files.
| Investor | Loans | Funded balance | % of book | Open items |
|---|---|---|---|---|
🔒 sourced from TMO or Salesforce — read-only here. Everything editable in this app is our own judgement layer.
⚠ Marked NSF — Came off NSF —
Summary
Composed from this loan's own fields each time it is read, so it cannot go stale.
What needs doing
Latest internal note
Latest approved investor comment
Open items
· Owner · Accountable · Governance
What I have done on this file
You are judgment. I am the work.What I will do next, unless you tell me otherwise
Kept deliberately short. If this list grows long the autonomy line is drawn in the wrong place and you are back to doing the work.
The clock
Discovery clock from D0 · calendar clock on fixed month datesTwo clocks run in parallel. Contact, follow-up and the investor notice count from the day the return was logged. The default letter and the watchlist sweep fall on the 15th and month-end regardless — so a return found on the 14th has one day of runway and one found on the 2nd has thirteen.
The NSF mark
Derived from the daily TMO read, never filed by hand. It needs both a returned-payment code and interest owing above zero — so it comes off by itself the morning either stops being true.
Cleared and reversed are different claims and the software must not merge them. A reversal that still counted toward two-in-six would push a healthy loan onto the watchlist for a bank error. Worth confirming with the playbook owner.
Who has been contacted
Awaiting and no reply are kept apart on purpose. One means the clock is still running; the other means they are ignoring us, and only the second is a reason to escalate.
Escalation
Default letter — prepared and held
The playbook says the letter issues on the 15th absent an override. It carries legal consequence, so this app drafts it, holds it, and escalates loudly rather than sending on a timer.
Investor notice (D+3)
Every investor holding an interest is notified, except the four internal and aggregator vehicles. Pure set logic against the loan's investor list — and the step most easily got wrong by eye.
History — six month window
| Returned | Amount | Type | Outcome |
|---|---|---|---|
Drafts
Filled from this loan. Copy and send from your own mail — nothing goes out from here.
Trail
The playbook says the comment column is the audit trail. Here it writes itself — every transition posts a dated entry.
Lender position
Sourced from TMO funding. The clip is the B lender's premium over the borrower rate; it does not apply to an A tranche, so those cells read “—” rather than zero.
| Lender | Class | % | Committed | Funded | Repaid | Funded balance | Gross | Servicing | Net | Clip |
|---|---|---|---|---|---|---|---|---|---|---|
| Total | 100% | |||||||||
What is owed
Margin and reserves
Index and margin
Rate history
| Date | From | To | Reason |
|---|---|---|---|
The register lives in TMO. We read it, parse the raw type string into something consistent, and track what a reviewer decided. TMO carries 60+ raw type strings with casing and spelling variants — the raw value is shown so you can see what we are absorbing.
This is not the same as “documents are current”. An empty register means nobody has ever recorded insurance, financials or a tax receipt against this file — it is the strongest signal on this screen, not the absence of one.
| Document | As TMO stores it | State | Expires | Party | Parse | Review | |
|---|---|---|---|---|---|---|---|
| · critical |
Opening a case is a human act. Nothing opens one automatically off a maturity date, because the quality of those dates has not been validated.
Extending a maturity needs the consent of every affected lender — there is no majority rule. A lender who has not answered is shown as awaiting, never as declined. Partial is a real outcome: consenting lenders extend, the others are repaid at the original maturity.
Each lender's decision
| Lender | Class | % | Decision | Conditions | Comment | Recorded |
|---|---|---|---|---|---|---|
Decisions are append-only — changing one keeps the previous answer on the record.
Conditions
Fee and follow-ups
Posted and collected are different claims. Posted means it is recorded against the loan; collected means the money is in.
Follow-ups
Post the new maturity to TMO
Until this fires, the loan's effective maturity is still the TMO date. An executed letter does not move it.
Blocked by:
Why an extension is sought
The executed letter itself is not stored anywhere in this system — there is no document store behind these statuses. Do not look for an upload button.
One timeline, three kinds of record. An internal note and an investor-facing comment are different record types, not one record with a tick-box — the boundary is meant to be structural. Imported rows are the old monthly spreadsheet and can never be edited.
🔒 Internal note
↗ Investor-facing comment
Goes to review before it can be published. Somebody other than you has to approve it.
Advances
| # | Date | Type | Reference | Amount | Status |
|---|---|---|---|---|---|