mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2026-10-06 03:38:23 +00:00
Reverses SNO's D2. §7.7 turns out to say that a seeker's position never enters the cost of finding a bag — "looking and walking are equivalent" — so a client with no avatar can open one; what was left was whether the work is affordable, and measured on this JVM a region key is 1.2 ms at height 8 against the spec's own 1.3 ms on a desktop core. A sweep also decomposes per axis, so a box of gap G costs 3*2^(G/3) tree builds and 2^G combines rather than 2^G whole keys. The corner anyone actually hides in is cheap. quartz/plans/2026-09-22-cyberspace-region-bags.md carries the design: three layers (protocol, amy verbs, a card), the measured cost table the budget comes from, and the rule that falls out of it — price the hint before building a single tree, because a bag can carry a gap-30 hint precisely to burn a day of a reader's battery. Every sweep is a tap, including the gap-0 case the spec calls a destination rather than a search, so a reader never learns that some bags open themselves and a hostile one cannot hide inside that expectation. First step lands here: §2.2 in full. The three 85-bit axes are interleaved XYZXYZ from the top with the plane bit at the bottom, which is what makes nearby coordinates share a prefix and therefore what makes an aligned Cantor subtree a region everyone agrees on without communicating. An axis splits at 64 into a 21-bit high half and an unsigned low Long — enough for the layout, the plane, §10's sector shift and alignedBase, which is exactly what a sweep enumerates, and no big integer until §4's trees need one. Pinned entirely by vectors the spec publishes: the six GPS consensus locks of §9.8 round-tripped, the ideaspace point of §7.7 decoded to the axes that section states in prose (2^84 + 12345, 3*2^80 + 777, 2^85 - 1 - 4242), its sector tags, and london aligned to height 11 reproducing the london_h5_box11 hint coordinate byte for byte. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01JwXApJjoZYtkD3sPRWbPNa
3.5 KiB
3.5 KiB
quartz plans
Audited 2026-09-08. 12 plans: 7 shipped (archived), 0 in-progress, 4 queued, 1 closed (negative result).
Queued
| Plan | Summary |
|---|---|
| 2026-05-08-local-headers-explorer.md | Headers-only Bitcoin P2P client to verify NIP-03 OTS attestations without a trusted block explorer. |
| 2026-06-12-giftwrap-deletion-requests.md | Let a recipient-authored kind-5 delete/block a gift wrap (kind 1059) addressed to them. |
| 2026-07-03-incremental-negentropy-storage.md | Always-current (created_at, id) index so cold NEG-OPENs stop paying a full scan + seal (~340 ms at 50k vs strfry's ~21 ms). |
| 2026-07-04-small-req-floor.md | Small-REQ dispatch floor: decomposed, inline fast path tried and reverted (no wire-level win); floor is transport-side. |
| 2026-08-13-gpu-pow-mining.md | GPU NIP-13 mining declined (ARMv8 has SHA-256 in silicon, mobile GPUs do not). Midstate is ~3x on JVM targets; Android hinges on Conscrypt per-digest JNI cost, still unmeasured. created_at refresh while mining shipped. |
| 2026-09-08-marmot-spec-resync.md | Marmot moved off the MIP-era spec (2026-07-02): group state split into app_data_dictionary components, account identity proof v2, and a convergence engine. Current MDK rejects our groups outright. Gap analysis + 8-stage plan; Stages 0-4 done (mdk interop reference, app_data_dictionary, identity proof v2, the six group components, transport corrections); lifecycle + branch selection landed. |
| 2026-09-22-cyberspace-region-bags.md | Open kind 33330 region bags: §2 coordinates, §4 Cantor roots, §7.2 region keys, §7.7 hint sweeps, §7.6 item verification. Reverses SNO's D2 — §7.7 says a seeker's position never enters the cost, and a key is 1.2 ms at h8 against the spec's own 1.3 ms. Three layers: quartz, amy, and a tap-to-search card. |
Archived (shipped)
| Plan | Summary |
|---|---|
| archive/2026-06-03-fix-nip46-bunker-double-resume-plan.md | Fix NIP-46 bunker double-resume crash and retry id-reuse races via Channel-per-request + fresh id per attempt. |
| archive/2026-06-04-auth-scope-vs-policy.md | Move relay-server authenticated-identity state from the policy into the engine-owned connection scope. |
| archive/2026-06-09-clink.md | Implement CLINK (Offers/Debits/Manage) Lightning-over-Nostr pointers, events, and client/server in Quartz. |
| archive/2026-06-11-runstr-interop.md | RUNSTR kind-1301 workout events and supporting fitness kinds in Quartz plus Amethyst fitness screens. |
| archive/2026-06-19-napplet-nip5a-resolver.md | Platform-agnostic NIP-5A static-site resolver verifying content-addressed Blossom blobs against signed manifests. |
| archive/2026-06-20-powr-interop.md | Parse and render the POWR/NIP-101e kind-1301 strength-workout dialect alongside the existing RUNSTR dialect. |
| archive/2026-06-28-git-smart-http-browser.md | Git smart-HTTP v2 client to browse NIP-34 repo file trees and render source from the clone URL. |