Skip to content
C.W.K.
Stream
Lesson 03 of 04 · published

Four Things It Deliberately Is Not

~12 min · boundary, non-goals, scope, architecture

Level 0Raw Ore
0 XP0/36 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete
A product boundary is easier to hold when the things outside it are named, and named as choices.

Non-goals do more work than goals

The architecture document has a section titled What it deliberately is not, and it carries more weight than the feature list above it. A goal tells you what to build next. A named non-goal tells you what to do when somebody proposes something reasonable that would quietly change what the product is — which happens far more often, and is far harder to argue about in the moment.

There are four, and the interesting thing is that each one exists for a different reason.

Not an advisor — because of the posture

Already covered: percentile and historical framing are descriptive; the app never ranks, screens-to-buy, or signals. This one is an ethical boundary, inherited from siblings.

Not a portfolio manager — because of ownership

A different kind of reason entirely. The portfolio sibling owns holdings, cash, and family financial records. Touchstone may read it — read-only, live — to badge tickers it happens to own. It never writes, and never duplicates. This is not restraint, it is data ownership: two apps holding the same records is a guarantee that one of them will eventually be wrong, and no amount of care prevents it.

Not a trading terminal — because of capability

The strongest of the four, and worth reading carefully. The failure-and-safety section does not say the app gates financial actions carefully. It says: the product never performs financial actions of any kind. There is nothing to gate because the capability must not exist.

That is a real architectural difference. A gated capability is a capability with a lock on it — and locks are configuration, configuration drifts, and drifted configuration is how gates come off. An absent capability has no lock to lose. There is no order-placement code path to accidentally expose, because there is no order-placement code.

Absence beats a gate. When a capability would be dangerous and you do not need it, the safest implementation is not a careful permission check — it is no implementation. A feature that does not exist cannot be misconfigured, cannot be reached by a bug in an adjacent feature, and cannot be quietly re-enabled by someone who did not read the reasoning.

Not a research workbench — because of shape

The fourth is about what the product's output looks like. No notebook piles, no sprawl of one-off task specs. Deliverables are engine-computed metrics and delegation-produced reports — both durable, both queryable. The alternative is the familiar drift where the real state of the analysis lives in twelve notebooks on someone's laptop and nobody can answer a question without re-running one.

There is a small, sharp line in this section worth stealing: the legacy data-center repository that predates this product is named as not a reference for the design, and marked deliberately unread. That is a stronger claim than "we started fresh." It says the old artifact was available, and reading it was refused, because inheriting its shape was the actual risk.

Code

Four refusals, four different reasons·text
NOT AN ADVISOR          reason: POSTURE
  never ranks, screens-to-buy, or signals
  -> enforced by review of every new surface

NOT A PORTFOLIO MGR     reason: OWNERSHIP
  reads holdings live, read-only; never writes, never copies
  -> a local holdings table is named a design bug

NOT A TRADING TERMINAL  reason: CAPABILITY
  no orders, no action-provoking alerts, no per-second anything
  -> "nothing to gate because the capability must not exist"

NOT A RESEARCH BENCH    reason: SHAPE
  no notebook piles, no task-spec sprawl
  -> deliverables are computed metrics + reviewed reports,
     durable and queryable

# Ask of each of your own non-goals: WHICH of these four is it?
# If you cannot say, it is probably just a feature you skipped.

External links

Exercise

Write four non-goals for something you maintain, and label each with its reason: posture, ownership, capability, or shape. Then find the one you have been quietly violating — most codebases have at least one non-goal that was declared once and has been eroding since. The ownership ones erode fastest, usually as a cache that was 'just temporary'.
Hint
The capability ones are the easiest to check and the most valuable to hold: grep for the code path. If the dangerous function exists anywhere in the tree, your non-goal is a gate, not an absence — and you should know which one you actually have.

Progress

Progress is local-only — sign in to sync across devices.
Spotted a bug or have feedback on this page?Report an Issue

Comments 0

🔔 Reply notifications (sign in)
Sign inPlease sign in to comment.

No comments yet — be the first.