Technical debrief
The planning matrix
Our planning surface for a year a calendar can't hold: months are columns, days are rows. We wrote the doctrine before the features. Pre-launch, tests already green.
Problem
No calendar fits a year.
It is pre-launch, and its name stays unpublished until launch.
A calendar's native unit is the day or the week. Ask it about capacity across a quarter and it has no answer at that resolution. So you end up holding the year in your head instead of on the screen.
The product started as our own colour-coded spreadsheet, tracking travel, stays, conferences and milestones across twelve months. That spreadsheet proved the job exists. It also proved the workaround: a matrix nobody built for the purpose, doing the job anyway.
It is for people who juggle three or more overlapping life dimensions across quarters and years: consultants, expat founders, anyone who travels for a living.
Approach
Doctrine before features.
It runs on macOS, web, iOS and Android from one Flutter codebase, on Riverpod and GoRouter.
No month view, ever.
We wrote the doctrine before the features, and you can check it against the product: no month view, no week view, no day view.
Day-level detail sits alongside the matrix as inspection. It never becomes a separate screen or a different paradigm, and every feature request is resolved against the doctrine rather than against a competitor's screenshot.
The matrix carries layers and states.
The value is structured compression, so the matrix stays dense rather than hiding information for looks.
Every plan item belongs to one thematic layer: work, travel or personal. Sharing is the same object model with access attached, not a feature bolted on afterwards.
Draft, confirmed and AI-suggested are three first-class states. Only confirmed items sync outward, so the planning space stays safe for unfinished thinking.
An MCP server, not a chatbot.
There is no in-app AI surface and no AI provider dependency inside the product itself. You connect your own client instead, to a schema-constrained MCP server. It exposes seven planning tools: read context, search, summarise, propose patch, preview impact, save draft, apply confirmed patch.
AI proposes, you confirm, and the matrix stays the source of truth.
Every commit is CI-green.
Typed results replace thrown exceptions and typed patch objects replace loose maps. Design tokens replace hardcoded values, ports replace cross-feature coupling, and clocks are injected rather than read from the wall.
Row-level security is default-deny on every table. Edge functions run through one audited handler shell: CORS allowlist, method gate, JWT verification, rate limiting. UUIDs are anonymised before they reach a log.
GDPR export and delete are shipped features, not a promise for later.
Result
Seven tools, every test green.
It has not shipped, so nothing here is a claim about a live user. It is a report on what the codebase does today, checked by its own tests.
What holds today.
From the brief of record, 5 August 2026. Nothing here carries a check link, because nothing about this product is public before launch.
“Done” means five jobs, from the brief of record.
- See the year clearly: every commitment in one matrix.
- Turn chaos into structure: unstructured input becomes typed plan items.
- Judge capacity long-range: density, gaps and collisions obvious at a glance.
- Coordinate dimensions: layers separate work, travel and personal in one view.
- Replace the spreadsheet: real types, states and spanning, not merged cells.
None of the five is proven the way Kickgeist's evidence is, by an operator against a deadline nobody controlled. What is proven is narrower. The doctrine held long enough to write the tests above, and they are all still green.
One mail. No form.
Tell us what is in the way.
Say what you're building and where it stopped.
Copy it into your mail client if that is easier.
The draft opens with
- What you are building
- What is in the way
- The stack
- When you want to start
The contact page says who answers, and what the reply contains.
Next debriefThe agent pipeline
