Repo v3 rev is required to be current time? #1608
Replies: 1 comment 2 replies
-
It's a bit subtle. They aren't required to be the current time, though we imagine they usually will be, because that is simplest. The semantics needed are:
It is allowed to start from zero and increment one for each commit. However, you can only do this once ever for a repo: if the PDS burns down and you try to start from zero again, the BGS will ignore you. If you chose MAX INT or something near it, that would prevent any future commits (because they would roll over or not be possible). This would sort of destroy the identity/repository from the perspective of the network. The "no future timestamps" (beyond a couple minutes for clock drift and bursts of commits) is indented to prevent this kind of broken-ness. Choosing a Maybe the PDS just takes a timestamp when the account is created/migrated and then increments? Up to the PDS implementation (for now). |
Beta Was this translation helpful? Give feedback.
-
Hi again! Rereading the repo v3 docs, this jumped out at me:
If PDSes, BGSes, and AppViews "should ignore" rev values in the future, it sounds like a requirement that
rev
is the current time when a commit is constructed, modulo clock skew/fudge factor, or maybe in the past, but not in the future or otherwise arbitrary. Should that req't be made more explicit?Beta Was this translation helpful? Give feedback.
All reactions