Counterparties · opportunities · contacts · the board
The customer graph is the CRM
Every counterparty — client, partner or supplier — is a partition of its own; every deal carries its journey and its state; every board is rendered from the records. Nothing is typed twice, nothing is exported to be read.
What ships
Crm/Counterparty— a client, a partner or a supplier, and the ROOT of its own partition: ONE type for all three, since they are the same shape and differ only in thetypefield that says which. It carries that kind, the company facts as dimension members, the owner and the workspace page; interactions, deals, contacts and documents live underneath, exactly where the engagement's material already is.Crm/Opportunity— one deal: state (Open / Won / Lost / On hold), the offering, the amount, the expected close, and the next step on each side. Record its next interaction from its page or ask the assistant.Crm/Interaction— one customer interaction, one chip: aCrm/Stagemember, Completed ✓ / Current ● / Planned ○, a calendar date, the deal it advances.Crm/Contact— a person at the counterparty, with consent as a first-class field.Crm/Board— the portfolio board: one chip bar per counterparty, sorted by the deadline of the next step, live.- Seven dimensions — Counterparty Type, Stage, Industry, Country, Segment, Offering, Currency — as node types with their initial members; every record references a member by path and the Edit page renders a real picker. The counterparty TYPE is what kind of organisation it is; the STAGE is where the relationship stands.
/crmskill and the CRM assistant agent — record a meeting, advance a deal, set a next step, add a contact, in conversation.
The process
Prospect → meetings, documentation, offer → workshop or pilot → proposal → engagement. Each step is an interaction node under the counterparty, a chip on the bar; the Guide describes the stages, the states and who records what. The rendering rules are the Journey Model.