跳转到内容

ak.schema.signal_message_stream.v1

← Schemas

Arkret Message Stream Signal Plaintext
ak.schema.signal_message_stream.v1 · file: schemas/signal-message-stream.schema.json

Closed decrypted plaintext payload profile for transient Message generation previews carried only inside ak.schema.signal_envelope.v1. It is not a durable Event or Content Block.

* $ · oneOf[3]
Closed decrypted plaintext payload profile for transient Message generation previews carried only inside ak.schema.signal_envelope.v1. It is not a durable Event or Content Block.
oneOf · oneOf[0] · allOf[2] · $ref #/$defs/keyframe
allOf · allOf[0] · object · $ref #/$defs/common_properties
* kind · const "ak.message.stream"
enum: "ak.message.stream"
* payload_sequence · integer
Strictly increasing but non-contiguous sequence within (sender_actor_id, sender_device_id, canonical scope_ref), including the complete ActorId. It is independent of the per-stream seq and participates in generic Signal replay handling.
* strand_id · string · $ref #/$defs/strand_id
pattern: ^ak:strand:[A-Za-z0-9_-]{44}$
* message_id · string · $ref #/$defs/message_id
Predeclared final Message identity, derived by retyping the complete 33-octet token of the planned ak.message.create Event.event_id.
pattern: ^ak:message:[A-Za-z0-9_-]{44}$
* attempt · integer
* stream_id · string
pattern: ^ak:message_stream:[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
* seq · integer
* frame_kind · string (enum)
enum: "keyframe" "delta" "abort"
allOf · allOf[1] · object
kind · const "ak.message.stream"
enum: "ak.message.stream"
payload_sequence · integer
strand_id · string · $ref #/$defs/strand_id
pattern: ^ak:strand:[A-Za-z0-9_-]{44}$
message_id · string · $ref #/$defs/message_id
pattern: ^ak:message:[A-Za-z0-9_-]{44}$
attempt · integer
stream_id · string
pattern: ^ak:message_stream:[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
seq · integer
frame_kind · const "keyframe"
enum: "keyframe"
* format · string (enum)
enum: "plain" "markdown"
* text · string · $ref #/$defs/preview_text
Authoritative limit is 16 KiB of valid UTF-8, enforced after decryption by a byte validator. maxLength is a not-wider code-point fast bound. LF, CR and TAB are allowed; other C0 controls and DEL are forbidden.
pattern: ^[^\u0000-\u0008\u000B\u000C\u000E-\u001F\u007F]*$
* truncated · boolean
oneOf · oneOf[1] · allOf[2] · $ref #/$defs/delta
allOf · allOf[0] · object · $ref #/$defs/common_properties
* kind · const "ak.message.stream"
enum: "ak.message.stream"
* payload_sequence · integer
Strictly increasing but non-contiguous sequence within (sender_actor_id, sender_device_id, canonical scope_ref), including the complete ActorId. It is independent of the per-stream seq and participates in generic Signal replay handling.
* strand_id · string · $ref #/$defs/strand_id
pattern: ^ak:strand:[A-Za-z0-9_-]{44}$
* message_id · string · $ref #/$defs/message_id
Predeclared final Message identity, derived by retyping the complete 33-octet token of the planned ak.message.create Event.event_id.
pattern: ^ak:message:[A-Za-z0-9_-]{44}$
* attempt · integer
* stream_id · string
pattern: ^ak:message_stream:[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
* seq · integer
* frame_kind · string (enum)
enum: "keyframe" "delta" "abort"
allOf · allOf[1] · object
kind · const "ak.message.stream"
enum: "ak.message.stream"
payload_sequence · integer
strand_id · string · $ref #/$defs/strand_id
pattern: ^ak:strand:[A-Za-z0-9_-]{44}$
message_id · string · $ref #/$defs/message_id
pattern: ^ak:message:[A-Za-z0-9_-]{44}$
attempt · integer
stream_id · string
pattern: ^ak:message_stream:[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
seq · integer
frame_kind · const "delta"
enum: "delta"
* base_seq · integer
* text_append · allOf[2]
allOf · allOf[0] · string · $ref #/$defs/preview_text
Authoritative limit is 16 KiB of valid UTF-8, enforced after decryption by a byte validator. maxLength is a not-wider code-point fast bound. LF, CR and TAB are allowed; other C0 controls and DEL are forbidden.
pattern: ^[^\u0000-\u0008\u000B\u000C\u000E-\u001F\u007F]*$
allOf · allOf[1] · ?
oneOf · oneOf[2] · allOf[2] · $ref #/$defs/abort
allOf · allOf[0] · object · $ref #/$defs/common_properties
* kind · const "ak.message.stream"
enum: "ak.message.stream"
* payload_sequence · integer
Strictly increasing but non-contiguous sequence within (sender_actor_id, sender_device_id, canonical scope_ref), including the complete ActorId. It is independent of the per-stream seq and participates in generic Signal replay handling.
* strand_id · string · $ref #/$defs/strand_id
pattern: ^ak:strand:[A-Za-z0-9_-]{44}$
* message_id · string · $ref #/$defs/message_id
Predeclared final Message identity, derived by retyping the complete 33-octet token of the planned ak.message.create Event.event_id.
pattern: ^ak:message:[A-Za-z0-9_-]{44}$
* attempt · integer
* stream_id · string
pattern: ^ak:message_stream:[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
* seq · integer
* frame_kind · string (enum)
enum: "keyframe" "delta" "abort"
allOf · allOf[1] · object
kind · const "ak.message.stream"
enum: "ak.message.stream"
payload_sequence · integer
strand_id · string · $ref #/$defs/strand_id
pattern: ^ak:strand:[A-Za-z0-9_-]{44}$
message_id · string · $ref #/$defs/message_id
pattern: ^ak:message:[A-Za-z0-9_-]{44}$
attempt · integer
stream_id · string
pattern: ^ak:message_stream:[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$
seq · integer
frame_kind · const "abort"
enum: "abort"
* reason_code · string (enum)
enum: "generation_cancelled" "generation_failed" "superseded"

Source