-
57d8b44
licence: MPL 2.0
Paul Campbell
-
424582d
doc: DESIGN.md, written from the built world
Paul Campbell
-
828aa1a
design: the tear did not survive its own breakpoint
Paul Campbell
-
0292a4f
design: the overprint was uppercasing the build hash
Paul Campbell
-
0d6acaf
design: the finish review, worked
Paul Campbell
-
9030879
design: what the first canary round showed
Paul Campbell
-
3a8ba10
design: CONTRA looks like something — the left-luggage world
Paul Campbell
-
d333920
doc: DESIGN.md is now PROTOCOL.md
Paul Campbell
-
bbe28f3
doc: PRODUCT.md — the durable product record
Paul Campbell
-
84f891e
web/8: the sharing UI, and the vault picker it turned out to need
Paul Campbell
-
f0ec676
web/8: the browser half of sharing
Paul Campbell
-
d11737c
web/8: the sharing API — share by account id, revoke by rotating
Paul Campbell
-
4a618f1
web/8: membership, the epoch, and the rotation revocation really is
Paul Campbell
-
a974578
web/8: compare-and-swap on item writes
Paul Campbell
-
12b61f4
test: split the oracles out of CI, reluctantly, and say why
Paul Campbell
-
99c2250
test: the runner's python3 cannot make a venv — fall back to pip --target
Paul Campbell
-
2b0646a
test: run the ECIES vectors in CI, and give the oracles their packages
Paul Campbell
-
d1623b2
design: record two reviews, and fix a contradiction
Paul Campbell
-
6413cdb
ci: first run on the shared runner
Paul Campbell
-
286cdaa
web/5: drive the ladder in a real browser
Paul Campbell
-
712d80f
web/5: the reprint flow, and the nag
Paul Campbell
-
e863e88
web/5: the fresh-device ladder — handoff, scan, type
Paul Campbell
-
0f00fc0
shared: seal to a public key, pinned in three implementations
Paul Campbell
-
11d8c3b
web: a switchable database file, and a passkey that says whose it is
Paul Campbell
-
63768fa
web: three screens, not one scroll — and two buttons, because two files
Paul Campbell
-
2f2a3d9
web: compute the public point ourselves, because Safari will not
Paul Campbell
-
ad84b34
web: signup in three steps, each of which can fail on its own
Paul Campbell
-
c0596f7
web: say which step failed, and stop a storage refusal losing the kit
Paul Campbell
-
cda6877
web: the Emergency Kit — two PDFs, generated in the browser, checked by tools that are not ours
Paul Campbell
-
1e27375
web: stop the front page saying things that stopped being true
Paul Campbell
-
3ab64a3
web: the vault console — items sealed and opened in the browser, nowhere else
Paul Campbell
-
8266465
web: drive the ceremony in a real engine, not just in node
Paul Campbell
-
f63ef12
web: let the client mint the ids it binds, so a stored wrap can be opened
Paul Campbell
-
fb3f054
web: signup and passphrase sign-in, with nothing on the server that can open a vault
Paul Campbell
-
c18b8be
web: the browser half of the crypto contract, byte-identical to Go
Paul Campbell
-
3730d63
web: the sealed schema, and the test that keeps us honest about it
Paul Campbell
-
361cff8
web: bootstrap the instance, the gate, and something to deploy
Paul Campbell
-
71fe556
crypto: the Go side of the contract, and proof the suite can fail
Paul Campbell
-
4658067
vectors: pin the crypto contract before any implementation can claim it
Paul Campbell
-
a13df93
intent: name the bootstrap exception to the CI merge gate
Paul Campbell
-
a9d022f
intent: point agents at the backlog before they start guessing
Paul Campbell
-
2e02fd7
design: two documents, two storage instructions — and stop apologising
Paul Campbell
-
feff5b3
design: the kit prints the Account Key too — settled
Paul Campbell
-
e601a84
intent: point the recovery decision at its open question
Paul Campbell
-
14ca156
design: one root key, three peer wraps — and two admissions in the README
Paul Campbell
-
6611061
repo: install the amadan agent house rules as a skill
Paul Campbell
-
b2270db
intent: agents create, humans promote — nothing mutates
Paul Campbell
-
9d85b3e
intent: write down the architecture before writing any code
Paul Campbell