You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
dspec rests on one bet, and it is the part I want argued with rather than praised.
The map in .ds/ is prose an agent writes about the repository it is working in — what each
feature is, where it lives, the rules it must not break, and why it is the way it is. Nothing
verifies it. There is no parser, no schema, no fingerprint, no drift check. 0.2.0 deleted all of
that on purpose. What keeps the map honest is three instructions the agent is given and nothing
else:
the code wins — when .ds/ and the code disagree, the map is what is wrong, and fixing it
is part of the change that broke it;
nothing is described unread — a session updating the map may not rewrite a description of
code it has not opened;
what could not be settled is written down as unsettled, so the confident half can be
believed.
That is the whole mechanism. It is in templates/bootstrap.md and templates/memory.md, about
240 lines of prose between them, and the program that installs them is ~900 lines of dependency-free
TypeScript.
The three questions I actually want answered:
Is "the code wins, fix the map" enough? Or does a knowledge layer need verification — a
fingerprint, a check in CI — before a team can rely on it? I removed verification because the
version that had it spent its budget proving the map was stale instead of making it useful, but
that is one person's read of one tool.
Does ## Unsettled survive contact with a real team? The idea is that a map which marks
the edge of what it knows can be trusted about the rest. The failure mode I expect is that it
degrades into a backlog nobody reads, or that agents write nothing there because admitting
doubt reads as failure.
Where does this break at scale? It is built for a repository with tens of features. At a
few hundred, the index stops being scannable and the "read the index first" instruction starts
costing more than the search it replaces. I don't know where that line is.
What I am not asking for: a line-by-line review, or a verdict on whether the idea is good.
If you want to try it in five minutes rather than read about it, demo/shop is a 15-file
storefront with a map committed. Ask your agent why does checkout reject my second discount code?
in there, then ask the same thing with .ds/ deleted, and compare which files each session opens.
Disagreement is more useful to me than agreement here — if you think the premise is wrong, that is
the comment I want.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
dspec rests on one bet, and it is the part I want argued with rather than praised.
The map in
.ds/is prose an agent writes about the repository it is working in — what eachfeature is, where it lives, the rules it must not break, and why it is the way it is. Nothing
verifies it. There is no parser, no schema, no fingerprint, no drift check. 0.2.0 deleted all of
that on purpose. What keeps the map honest is three instructions the agent is given and nothing
else:
.ds/and the code disagree, the map is what is wrong, and fixing itis part of the change that broke it;
code it has not opened;
believed.
That is the whole mechanism. It is in
templates/bootstrap.mdandtemplates/memory.md, about240 lines of prose between them, and the program that installs them is ~900 lines of dependency-free
TypeScript.
The three questions I actually want answered:
Is "the code wins, fix the map" enough? Or does a knowledge layer need verification — a
fingerprint, a check in CI — before a team can rely on it? I removed verification because the
version that had it spent its budget proving the map was stale instead of making it useful, but
that is one person's read of one tool.
Does
## Unsettledsurvive contact with a real team? The idea is that a map which marksthe edge of what it knows can be trusted about the rest. The failure mode I expect is that it
degrades into a backlog nobody reads, or that agents write nothing there because admitting
doubt reads as failure.
Where does this break at scale? It is built for a repository with tens of features. At a
few hundred, the index stops being scannable and the "read the index first" instruction starts
costing more than the search it replaces. I don't know where that line is.
What I am not asking for: a line-by-line review, or a verdict on whether the idea is good.
If you want to try it in five minutes rather than read about it,
demo/shopis a 15-filestorefront with a map committed. Ask your agent why does checkout reject my second discount code?
in there, then ask the same thing with
.ds/deleted, and compare which files each session opens.Disagreement is more useful to me than agreement here — if you think the premise is wrong, that is
the comment I want.
All reactions