Wiki source code of ProjectsSheet

Version 7.1 by Zenna Elfen on 2025/11/24 11:06

Hide last authors
Zenna Elfen 1.1 1 {{velocity}}
2 #set ($object = $doc.getObject('Projects.Code.ProjectsClass'))
3 #if (!$object)
4 #set ($messageKey = 'projects.sheet.description')
5 #set ($messageType = 'info')
6 #if ($doc.documentReference.name != 'ProjectsSheet')
7 #set ($messageKey = 'projects.sheet.noObject')
8 #set ($messageType = 'warning')
9 #end
10 {{$messageType}}
11 $services.localization.render($messageKey)
12 {{/$messageType}}
13 #stop
14 #end
15 #set ($discard = $xwiki.jsfx.use('uicomponents/edit/editableProperty.js', {
16 'forceSkinAction': true,
17 'language': $xcontext.locale
18 }))
19 #set ($discard = $doc.use($object))
20 #set ($editing = $xcontext.action == 'edit')
21 {{html wiki="true" clean="false"}}
22 <div class="xform">
23 <dl>
24 <dt #if (!$editing && $hasEdit)
25 class="editableProperty"
Zenna Elfen 5.1 26 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('title2')))"
Zenna Elfen 1.1 27 data-property-type="object"#end>
Zenna Elfen 5.1 28 <label#if ($editing) for="Projects.Code.ProjectsClass_0_title2"#end>
29 $escapetool.xml($doc.displayPrettyName('title2', false, false))
Zenna Elfen 1.1 30 </label>
31 <span class="xHint">
32 $escapetool.xml($services.localization.render('What''s the name of the project?'))
33 </span>
34 </dt>
Zenna Elfen 5.1 35 <dd>$doc.display('title2')</dd>
Zenna Elfen 1.1 36 <dt #if (!$editing && $hasEdit)
37 class="editableProperty"
Zenna Elfen 4.1 38 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('shortText3')))"
39 data-property-type="object"#end>
40 <label#if ($editing) for="Projects.Code.ProjectsClass_0_shortText3"#end>
41 $escapetool.xml($doc.displayPrettyName('shortText3', false, false))
42 </label>
43 <span class="xHint">
44 $escapetool.xml($services.localization.render('What are key aspects of this project?'))
45 </span>
46 </dt>
47 <dd>$doc.display('shortText3')</dd>
48 <dt #if (!$editing && $hasEdit)
49 class="editableProperty"
Zenna Elfen 1.1 50 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('shortText2')))"
51 data-property-type="object"#end>
52 <label#if ($editing) for="Projects.Code.ProjectsClass_0_shortText2"#end>
53 $escapetool.xml($doc.displayPrettyName('shortText2', false, false))
54 </label>
55 <span class="xHint">
56 $escapetool.xml($services.localization.render('What''s the projects website?'))
57 </span>
58 </dt>
59 <dd>$doc.display('shortText2')</dd>
60 <dt #if (!$editing && $hasEdit)
61 class="editableProperty"
Zenna Elfen 2.1 62 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('data_synchronization')))"
Zenna Elfen 1.1 63 data-property-type="object"#end>
Zenna Elfen 2.1 64 <label#if ($editing) for="Projects.Code.ProjectsClass_0_data_synchronization"#end>
65 $escapetool.xml($doc.displayPrettyName('data_synchronization', false, false))
Zenna Elfen 1.1 66 </label>
67 <span class="xHint">
Zenna Elfen 2.1 68 $escapetool.xml($services.localization.render('Synchronization answers how updates flow between peers and how they determine what data to exchange. This layer is about diffing, reconciliation, order, causality tracking, and efficient exchange, not persistence or user-facing collaboration semantics. Examples: Range-Based Set Reconciliation, RIBLT, Gossip-based sync, State-based vs op-based sync, Lamport/Vector/HLC clocks, Braid Protocol'))
Zenna Elfen 1.1 69 </span>
70 </dt>
Zenna Elfen 2.1 71 <dd>$doc.display('data_synchronization')</dd>
Zenna Elfen 1.1 72 <dt #if (!$editing && $hasEdit)
73 class="editableProperty"
Zenna Elfen 2.1 74 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText1')))"
Zenna Elfen 1.1 75 data-property-type="object"#end>
Zenna Elfen 2.1 76 <label#if ($editing) for="Projects.Code.ProjectsClass_0_longText1"#end>
77 $escapetool.xml($doc.displayPrettyName('longText1', false, false))
Zenna Elfen 1.1 78 </label>
79 <span class="xHint">
Zenna Elfen 2.1 80 $escapetool.xml($services.localization.render('How do peers detect differences and synchronize state?'))
Zenna Elfen 1.1 81 </span>
82 </dt>
Zenna Elfen 2.1 83 <dd>$doc.display('longText1')</dd>
Zenna Elfen 1.1 84 <dt #if (!$editing && $hasEdit)
85 class="editableProperty"
Zenna Elfen 2.1 86 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('conf_res')))"
Zenna Elfen 1.1 87 data-property-type="object"#end>
Zenna Elfen 2.1 88 <label#if ($editing) for="Projects.Code.ProjectsClass_0_conf_res"#end>
89 $escapetool.xml($doc.displayPrettyName('conf_res', false, false))
Zenna Elfen 1.1 90 </label>
91 <span class="xHint">
Zenna Elfen 2.1 92 $escapetool.xml($services.localization.render('This layer defines how shared data evolves when multiple peers edit concurrently. It focuses on conflict-free merging, causality, and consistency of meaning, not transport or storage. CRDTs ensure deterministic convergence, while event-sourced or stream-driven models maintain a history of all changes and derive consistent state from it. Examples: CRDTs (Yjs, Automerge), OT, Event Sourcing, Stream Processing, Version Vectors, Peritext'))
Zenna Elfen 1.1 93 </span>
94 </dt>
Zenna Elfen 2.1 95 <dd>$doc.display('conf_res')</dd>
Zenna Elfen 1.1 96 <dt #if (!$editing && $hasEdit)
97 class="editableProperty"
Zenna Elfen 6.1 98 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_res')))"
Zenna Elfen 1.1 99 data-property-type="object"#end>
Zenna Elfen 6.1 100 <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_res"#end>
101 $escapetool.xml($doc.displayPrettyName('long_res', false, false))
Zenna Elfen 1.1 102 </label>
103 <span class="xHint">
Zenna Elfen 2.1 104 $escapetool.xml($services.localization.render('How is data persisted locally and replicated between peers?'))
Zenna Elfen 1.1 105 </span>
106 </dt>
Zenna Elfen 6.1 107 <dd>$doc.display('long_res')</dd>
Zenna Elfen 3.1 108 <dt #if (!$editing && $hasEdit)
109 class="editableProperty"
Zenna Elfen 6.1 110 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_rep')))"
Zenna Elfen 3.1 111 data-property-type="object"#end>
Zenna Elfen 6.1 112 <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_rep"#end>
113 $escapetool.xml($doc.displayPrettyName('list_rep', false, false))
Zenna Elfen 3.1 114 </label>
Zenna Elfen 6.1 115 <span class="xHint">
116 $escapetool.xml($services.localization.render('This layer focuses on durability, consistency, and redundancy. It handles write-paths, crash-resilience, and replication semantics across nodes. It is the “database/storage engine” layer where data lives and survives over time, independent of sync or merging logic. Examples: SQLite, IndexedDB, LMDB, Hypercore (append-only logs), WALs, Merkle-DAGs (IPFS/IPLD), Blob/media storage'))
117 </span>
Zenna Elfen 3.1 118 </dt>
Zenna Elfen 6.1 119 <dd>$doc.display('list_rep')</dd>
Zenna Elfen 3.1 120 <dt #if (!$editing && $hasEdit)
121 class="editableProperty"
Zenna Elfen 6.1 122 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_rep')))"
Zenna Elfen 3.1 123 data-property-type="object"#end>
Zenna Elfen 6.1 124 <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_rep"#end>
125 $escapetool.xml($doc.displayPrettyName('long_rep', false, false))
Zenna Elfen 3.1 126 </label>
127 <span class="xHint">
Zenna Elfen 6.1 128 $escapetool.xml($services.localization.render('How is data persisted locally and replicated between peers?'))
Zenna Elfen 3.1 129 </span>
130 </dt>
Zenna Elfen 6.1 131 <dd>$doc.display('long_rep')</dd>
Zenna Elfen 3.1 132 <dt #if (!$editing && $hasEdit)
133 class="editableProperty"
Zenna Elfen 6.1 134 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_peer')))"
Zenna Elfen 3.1 135 data-property-type="object"#end>
Zenna Elfen 6.1 136 <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_peer"#end>
137 $escapetool.xml($doc.displayPrettyName('list_peer', false, false))
Zenna Elfen 3.1 138 </label>
139 <span class="xHint">
Zenna Elfen 6.1 140 $escapetool.xml($services.localization.render('Discovery occurs in two phases: 1. Peer Discovery → finding any nodes 2. Topic Discovery → finding relevant nodes or resources These mechanisms enable decentralized bootstrapping and interest-based overlays. **Examples**: DHTs (Kademlia, Pastry), mDNS, DNS-SD, Bluetooth scanning, QR bootstrapping, static peer lists, Interest-based routing, PubSub discovery (libp2p), Rendezvous protocols'))
Zenna Elfen 3.1 141 </span>
142 </dt>
Zenna Elfen 6.1 143 <dd>$doc.display('list_peer')</dd>
Zenna Elfen 3.1 144 <dt #if (!$editing && $hasEdit)
145 class="editableProperty"
Zenna Elfen 6.1 146 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_peer')))"
Zenna Elfen 3.1 147 data-property-type="object"#end>
Zenna Elfen 6.1 148 <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_peer"#end>
149 $escapetool.xml($doc.displayPrettyName('long_peer', false, false))
Zenna Elfen 3.1 150 </label>
151 <span class="xHint">
Zenna Elfen 6.1 152 $escapetool.xml($services.localization.render('How do peers find each other, and how do they discover content in the network?'))
Zenna Elfen 3.1 153 </span>
154 </dt>
Zenna Elfen 6.1 155 <dd>$doc.display('long_peer')</dd>
Zenna Elfen 3.1 156 <dt #if (!$editing && $hasEdit)
157 class="editableProperty"
Zenna Elfen 6.1 158 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_ident')))"
Zenna Elfen 3.1 159 data-property-type="object"#end>
Zenna Elfen 6.1 160 <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_ident"#end>
161 $escapetool.xml($doc.displayPrettyName('list_ident', false, false))
Zenna Elfen 3.1 162 </label>
163 <span class="xHint">
Zenna Elfen 6.1 164 $escapetool.xml($services.localization.render('Identity systems ensure reliable mapping between peers and cryptographic keys. They underpin authorization, federated trust, and secure overlays. Examples: PKI, Distributed Identities (DIDs), Web-of-Trust, TOFU (SSH-style), Verifiable Credentials (VCs), Peer key fingerprints (libp2p PeerIDs), Key transparency logs'))
Zenna Elfen 3.1 165 </span>
166 </dt>
Zenna Elfen 6.1 167 <dd>$doc.display('list_ident')</dd>
Zenna Elfen 3.1 168 <dt #if (!$editing && $hasEdit)
169 class="editableProperty"
Zenna Elfen 6.1 170 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_ident')))"
Zenna Elfen 3.1 171 data-property-type="object"#end>
Zenna Elfen 6.1 172 <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_ident"#end>
173 $escapetool.xml($doc.displayPrettyName('long_ident', false, false))
Zenna Elfen 3.1 174 </label>
175 <span class="xHint">
Zenna Elfen 6.1 176 $escapetool.xml($services.localization.render('How peers identify themselves, authenticate, and establish trustworthy relationships?'))
Zenna Elfen 3.1 177 </span>
178 </dt>
Zenna Elfen 6.1 179 <dd>$doc.display('long_ident')</dd>
Zenna Elfen 3.1 180 <dt #if (!$editing && $hasEdit)
181 class="editableProperty"
Zenna Elfen 7.1 182 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_transport')))"
Zenna Elfen 3.1 183 data-property-type="object"#end>
Zenna Elfen 7.1 184 <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_transport"#end>
185 $escapetool.xml($doc.displayPrettyName('list_transport', false, false))
Zenna Elfen 3.1 186 </label>
187 <span class="xHint">
Zenna Elfen 7.1 188 $escapetool.xml($services.localization.render('This layer provides logical connections and flow control. QUIC and WebRTC bring modern congestion control and encryption defaults; Interpeer explores transport beyond IP assumptions. **Examples**: TCP, UDP, QUIC, SCTP, WebRTC DataChannels, Interpeer transport stack. Examples: TCP, UDP, QUIC, SCTP, WebRTC DataChannels, Interpeer transport stack'))
Zenna Elfen 3.1 189 </span>
190 </dt>
Zenna Elfen 7.1 191 <dd>$doc.display('list_transport')</dd>
Zenna Elfen 3.1 192 <dt #if (!$editing && $hasEdit)
193 class="editableProperty"
Zenna Elfen 7.1 194 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_transport')))"
Zenna Elfen 3.1 195 data-property-type="object"#end>
Zenna Elfen 7.1 196 <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_transport"#end>
197 $escapetool.xml($doc.displayPrettyName('long_transport', false, false))
Zenna Elfen 3.1 198 </label>
199 <span class="xHint">
200 $escapetool.xml($services.localization.render('How do peers establish end-to-end byte streams and reliable delivery?'))
201 </span>
202 </dt>
Zenna Elfen 7.1 203 <dd>$doc.display('long_transport')</dd>
Zenna Elfen 3.1 204 <dt #if (!$editing && $hasEdit)
205 class="editableProperty"
Zenna Elfen 7.1 206 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_phys')))"
Zenna Elfen 3.1 207 data-property-type="object"#end>
Zenna Elfen 7.1 208 <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_phys"#end>
209 $escapetool.xml($doc.displayPrettyName('list_phys', false, false))
Zenna Elfen 3.1 210 </label>
211 <span class="xHint">
Zenna Elfen 7.1 212 $escapetool.xml($services.localization.render('Highly relevant for offline-first / edge networks, device-to-device communication, and mesh networks and relates to the hardware which facilitates connections. Examples: Ethernet, Wi-Fi Direct / Wi-Fi Aware (post-AWDL), Bluetooth Mesh, LoRa, NFC, Cellular, CSMA/CA, TDMA, FHSS'))
Zenna Elfen 3.1 213 </span>
214 </dt>
Zenna Elfen 7.1 215 <dd>$doc.display('list_phys')</dd>
Zenna Elfen 3.1 216 <dt #if (!$editing && $hasEdit)
217 class="editableProperty"
Zenna Elfen 7.1 218 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_phys')))"
Zenna Elfen 3.1 219 data-property-type="object"#end>
Zenna Elfen 7.1 220 <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_phys"#end>
221 $escapetool.xml($doc.displayPrettyName('long_phys', false, false))
Zenna Elfen 3.1 222 </label>
223 <span class="xHint">
224 $escapetool.xml($services.localization.render('How does data move across the medium?'))
225 </span>
226 </dt>
Zenna Elfen 7.1 227 <dd>$doc.display('long_phys')</dd>
Zenna Elfen 3.1 228 <dt #if (!$editing && $hasEdit)
229 class="editableProperty"
Zenna Elfen 7.1 230 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_cont')))"
Zenna Elfen 3.1 231 data-property-type="object"#end>
Zenna Elfen 7.1 232 <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_cont"#end>
233 $escapetool.xml($doc.displayPrettyName('list_cont', false, false))
Zenna Elfen 3.1 234 </label>
235 <span class="xHint">
236 $escapetool.xml($services.localization.render('Content addressing ensures immutability, verifiability, and deduplication. Identity of data = cryptographic hash, enabling offline-first and tamper-evident systems. **Examples**: IPFS CIDs, BitTorrent infohashes, Git hashes, SHA-256 addressing, Named Data Networking (NDN)'))
237 </span>
238 </dt>
Zenna Elfen 7.1 239 <dd>$doc.display('list_cont')</dd>
Zenna Elfen 3.1 240 <dt #if (!$editing && $hasEdit)
241 class="editableProperty"
Zenna Elfen 7.1 242 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_cont')))"
Zenna Elfen 3.1 243 data-property-type="object"#end>
Zenna Elfen 7.1 244 <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_cont"#end>
245 $escapetool.xml($doc.displayPrettyName('long_cont', false, false))
Zenna Elfen 3.1 246 </label>
247 <span class="xHint">
248 $escapetool.xml($services.localization.render('How is data addressed and verified by content, not location?'))
249 </span>
250 </dt>
Zenna Elfen 7.1 251 <dd>$doc.display('long_cont')</dd>
Zenna Elfen 3.1 252 <dt #if (!$editing && $hasEdit)
253 class="editableProperty"
Zenna Elfen 7.1 254 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_p2p')))"
Zenna Elfen 3.1 255 data-property-type="object"#end>
Zenna Elfen 7.1 256 <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_p2p"#end>
257 $escapetool.xml($doc.displayPrettyName('list_p2p', false, false))
Zenna Elfen 3.1 258 </label>
259 <span class="xHint">
260 $escapetool.xml($services.localization.render('Connectivity ensures peers bypass NATs/firewalls to reach each other. **Examples**: IPv6 direct, NAT Traversal, STUN, TURN, ICE (used in WebRTC), UDP hole punching, UPnP'))
261 </span>
262 </dt>
Zenna Elfen 7.1 263 <dd>$doc.display('list_p2p')</dd>
Zenna Elfen 3.1 264 <dt #if (!$editing && $hasEdit)
265 class="editableProperty"
266 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText13')))"
267 data-property-type="object"#end>
268 <label#if ($editing) for="Projects.Code.ProjectsClass_0_longText13"#end>
269 $escapetool.xml($doc.displayPrettyName('longText13', false, false))
270 </label>
271 <span class="xHint">
272 $escapetool.xml($services.localization.render('What relevance does this topic have for the project?'))
273 </span>
274 </dt>
275 <dd>$doc.display('longText13')</dd>
276 <dt #if (!$editing && $hasEdit)
277 class="editableProperty"
Zenna Elfen 7.1 278 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_sess')))"
Zenna Elfen 3.1 279 data-property-type="object"#end>
Zenna Elfen 7.1 280 <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_sess"#end>
281 $escapetool.xml($doc.displayPrettyName('list_sess', false, false))
Zenna Elfen 3.1 282 </label>
283 <span class="xHint">
284 $escapetool.xml($services.localization.render('Manages connection lifecycle, including authentication handshakes, reconnection after drops, and session continuation. **Examples**: TLS handshake semantics, Noise IK/XX patterns, session tokens, keep-alive heartbeats, reconnection strategies, session resumption tickets'))
285 </span>
286 </dt>
Zenna Elfen 7.1 287 <dd>$doc.display('list_sess')</dd>
Zenna Elfen 3.1 288 <dt #if (!$editing && $hasEdit)
289 class="editableProperty"
Zenna Elfen 7.1 290 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_sess')))"
Zenna Elfen 3.1 291 data-property-type="object"#end>
Zenna Elfen 7.1 292 <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_sess"#end>
293 $escapetool.xml($doc.displayPrettyName('long_sess', false, false))
Zenna Elfen 3.1 294 </label>
295 <span class="xHint">
296 $escapetool.xml($services.localization.render('How are connections initiated, authenticated, resumed, and kept alive?'))
297 </span>
298 </dt>
Zenna Elfen 7.1 299 <dd>$doc.display('long_sess')</dd>
Zenna Elfen 3.1 300 <dt #if (!$editing && $hasEdit)
301 class="editableProperty"
Zenna Elfen 7.1 302 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_mess')))"
Zenna Elfen 3.1 303 data-property-type="object"#end>
Zenna Elfen 7.1 304 <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_mess"#end>
305 $escapetool.xml($doc.displayPrettyName('list_mess', false, false))
Zenna Elfen 3.1 306 </label>
307 <span class="xHint">
308 $escapetool.xml($services.localization.render(' Serialization ensures portable data representation, forward-compatible schemas, and efficient messaging. **Examples**: IPFS CIDs, BitTorrent infohashes, Git hashes, SHA-256 addressing, Named Data Networking (NDN)'))
309 </span>
310 </dt>
Zenna Elfen 7.1 311 <dd>$doc.display('list_mess')</dd>
Zenna Elfen 3.1 312 <dt #if (!$editing && $hasEdit)
313 class="editableProperty"
Zenna Elfen 7.1 314 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_mess')))"
Zenna Elfen 3.1 315 data-property-type="object"#end>
Zenna Elfen 7.1 316 <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_mess"#end>
317 $escapetool.xml($doc.displayPrettyName('long_mess', false, false))
Zenna Elfen 3.1 318 </label>
319 <span class="xHint">
320 $escapetool.xml($services.localization.render('How is data encoded, structured, and/or made interoperable between peers?'))
321 </span>
322 </dt>
Zenna Elfen 7.1 323 <dd>$doc.display('long_mess')</dd>
Zenna Elfen 3.1 324 <dt #if (!$editing && $hasEdit)
325 class="editableProperty"
Zenna Elfen 7.1 326 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_blob')))"
Zenna Elfen 3.1 327 data-property-type="object"#end>
Zenna Elfen 7.1 328 <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_blob"#end>
329 $escapetool.xml($doc.displayPrettyName('list_blob', false, false))
Zenna Elfen 3.1 330 </label>
331 <span class="xHint">
332 $escapetool.xml($services.localization.render(' Bulk data syncing has different trade-offs than small collaborative state (chunking, deduplication, partial transfer, resume logic). Essential for media and archival P2P use-cases. **Examples**: BitTorrent chunking, IPFS block-store, NDN segments, rsySerialization ensures portable data representation, forward-compatible schemas, and efficient messaging. **Examples**: IPFS CIDs, BitTorrent infohashes, Git hashes, SHA-256 addressing, Named Data Networking (NDN)nc-style delta sync, ZFS send-receive, streaming blob transfers'))
333 </span>
334 </dt>
Zenna Elfen 7.1 335 <dd>$doc.display('list_blob')</dd>
Zenna Elfen 3.1 336 <dt #if (!$editing && $hasEdit)
337 class="editableProperty"
Zenna Elfen 7.1 338 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_blob')))"
Zenna Elfen 3.1 339 data-property-type="object"#end>
Zenna Elfen 7.1 340 <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_blob"#end>
341 $escapetool.xml($doc.displayPrettyName('long_blob', false, false))
Zenna Elfen 3.1 342 </label>
343 <span class="xHint">
344 $escapetool.xml($services.localization.render('How are large objects transferred and deduplicated efficiently across peers?'))
345 </span>
346 </dt>
Zenna Elfen 7.1 347 <dd>$doc.display('long_blob')</dd>
Zenna Elfen 3.1 348 <dt #if (!$editing && $hasEdit)
349 class="editableProperty"
Zenna Elfen 7.1 350 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_localsto')))"
Zenna Elfen 3.1 351 data-property-type="object"#end>
Zenna Elfen 7.1 352 <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_localsto"#end>
353 $escapetool.xml($doc.displayPrettyName('list_localsto', false, false))
Zenna Elfen 3.1 354 </label>
355 <span class="xHint">
356 $escapetool.xml($services.localization.render('Provides durable on-device state and local computation (event sourcing, materialization, compaction). Enables offline-first writes and deterministic replay. **Examples**: RocksDB, LevelDB, SQLite, LMDB, local WALs/append-only logs, embedded stream processors (NATS Core JetStream mode, Actyx-like edge runtimes), Kafka-like libraries'))
357 </span>
358 </dt>
Zenna Elfen 7.1 359 <dd>$doc.display('list_localsto')</dd>
Zenna Elfen 3.1 360 <dt #if (!$editing && $hasEdit)
361 class="editableProperty"
Zenna Elfen 7.1 362 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_localsto')))"
Zenna Elfen 3.1 363 data-property-type="object"#end>
Zenna Elfen 7.1 364 <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_localsto"#end>
365 $escapetool.xml($doc.displayPrettyName('long_localsto', false, false))
Zenna Elfen 3.1 366 </label>
367 <span class="xHint">
368 $escapetool.xml($services.localization.render('How do nodes persist, index, and process data locally—without external servers?'))
369 </span>
370 </dt>
Zenna Elfen 7.1 371 <dd>$doc.display('long_localsto')</dd>
Zenna Elfen 3.1 372 <dt #if (!$editing && $hasEdit)
373 class="editableProperty"
Zenna Elfen 7.1 374 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_crash')))"
Zenna Elfen 3.1 375 data-property-type="object"#end>
Zenna Elfen 7.1 376 <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_crash"#end>
377 $escapetool.xml($doc.displayPrettyName('list_crash', false, false))
Zenna Elfen 3.1 378 </label>
379 <span class="xHint">
380 $escapetool.xml($services.localization.render('Ensures P2P apps don’t corrupt state on crashes. Tied to local storage & stream-processing, and critical in offline-first and distributed update pipelines. Abortability is the updated term, as per Mr. Kleppmann for Atomicity as part of the [ACID abbreviation](https://www.youtube.com/watch?v=5ZjhNTM8XU8). **Examples**: IPFS CIDs, BitTorrent infohashes, Git hashes, SHA-256 addressing, Named Data Networking (NDN)'))
381 </span>
382 </dt>
Zenna Elfen 7.1 383 <dd>$doc.display('list_crash')</dd>
Zenna Elfen 3.1 384 <dt #if (!$editing && $hasEdit)
385 class="editableProperty"
Zenna Elfen 7.1 386 data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_crashres')))"
Zenna Elfen 3.1 387 data-property-type="object"#end>
Zenna Elfen 7.1 388 <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_crashres"#end>
389 $escapetool.xml($doc.displayPrettyName('long_crashres', false, false))
Zenna Elfen 3.1 390 </label>
391 <span class="xHint">
392 $escapetool.xml($services.localization.render('How do nodes recover and maintain correctness under failure?'))
393 </span>
394 </dt>
Zenna Elfen 7.1 395 <dd>$doc.display('long_crashres')</dd>
Zenna Elfen 1.1 396 </dl>
397 </div>
398 {{/html}}
399 {{/velocity}}