Lexicon updates for the kryphocron 0.3 substrate.
This release adds the wire-format fields the 0.3 substrate's encoding-at-default property needs, the publicCompanion field for dual-faced posts, the mode field for policy.audience, and corrects the audienceList shape to an AT-URI string.
Breaking changes
postPrivate.audienceListshape corrected from a record-def ref (which codegenned to an embeddedpolicy.audienceobject) to a plain AT-URI string. Downstream consumers parsing 0.2.0 records asaudienceList: { ... }must migrate to parsing it asaudienceList: "at://...". The substrate's read-time consultation and retroactive-membership semantics were always by-reference; the 0.2.0 encoding had drifted.postPrivate.textrelaxed to optional. Records now carry exactly one oftextorencodedContent(XOR, substrate-enforced).
Added
postPrivate.publicCompanion— optional AT-URI pairing a private record with a public counterpart.postPrivate.encodedContent— optionalbytes(max 1MB) carrying codec output when an at-rest content codec is installed.postPrivate.encodedContentCodec— optionalstring(max 128) carrying the operator-namespaced codec identifier (e.g.laquna/0.2).postPrivate.encodedContentGeneration— optionalstring(max 128) carrying the per-record rotation generation mark. Hosts MUST pick a lex-sortable encoding for rewrite-on-rotate job selection.policy.audience.mode— optional visibility mode withknownValueslist/everyone/followers/following/nobody. Lexicon-permissive; substrate-strict closure of the value set.policy.audience.membersandpolicy.audience.namerelaxed to lexicon-optional; conditional-required rules enforced substrate-side.
Dependency
Companion to kryphocron 0.3.0.