aboutsummaryrefslogtreecommitdiffstats
path: root/notes/drive.md
blob: 91161173a20a2ce0f5718c9b2c830beb86c347a7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

First varint is a header. Lowest bit of header is "endsWithSeq".

When expanding, if "endsWithSeq", is set, add the current index to *every*
level of the array?

When adding, the current index is always added at every stage of the path.

In the index, include one entry for subdirectories; take the newest element of
the subdirectory as that entry (which might itself be a deeper nested
subdirectory entry)

There seem to be extra empty arrays everywhere? not sure what's up with that,
maybe I have an off-by-one.

The current path counts as an entry (eg, "/README" decomposes to "/" and
"README", two entries). I'm not sure why... so directories can have entries?

Entry indexes are effectively 1-based (0 is the pubkey entry); don't correct
for this.

In children:
- Changes/edits to a path entirely replace the old entry index with the new
  index.
- removals of an entry are done by writing a new entry with the same path, no
  stat data, and with all child paths removed (of this index and the old
  index).