Changes for page ProjectsSheet
Last modified by Zenna Elfen on 2025/11/24 11:39
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -83,16 +83,301 @@ 83 83 <dd>$doc.display('conf_res')</dd> 84 84 <dt #if (!$editing && $hasEdit) 85 85 class="editableProperty" 86 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference(' content1')))"86 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText2')))" 87 87 data-property-type="object"#end> 88 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_ content1"#end>89 - $escapetool.xml($doc.displayPrettyName(' content1', false, false))88 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_longText2"#end> 89 + $escapetool.xml($doc.displayPrettyName('longText2', false, false)) 90 90 </label> 91 91 <span class="xHint"> 92 92 $escapetool.xml($services.localization.render('How is data persisted locally and replicated between peers?')) 93 93 </span> 94 94 </dt> 95 - <dd>$doc.display('content1')</dd> 95 + <dd>$doc.display('longText2')</dd> 96 + <dt #if (!$editing && $hasEdit) 97 + class="editableProperty" 98 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('staticList2')))" 99 + data-property-type="object"#end> 100 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_staticList2"#end> 101 + $escapetool.xml($doc.displayPrettyName('staticList2', false, false)) 102 + </label> 103 + </dt> 104 + <dd>$doc.display('staticList2')</dd> 105 + <dt #if (!$editing && $hasEdit) 106 + class="editableProperty" 107 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText6')))" 108 + data-property-type="object"#end> 109 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_longText6"#end> 110 + $escapetool.xml($doc.displayPrettyName('longText6', false, false)) 111 + </label> 112 + <span class="xHint"> 113 + $escapetool.xml($services.localization.render('How do peers collaboratively change shared data and merge conflicts?')) 114 + </span> 115 + </dt> 116 + <dd>$doc.display('longText6')</dd> 117 + <dt #if (!$editing && $hasEdit) 118 + class="editableProperty" 119 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('staticList3')))" 120 + data-property-type="object"#end> 121 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_staticList3"#end> 122 + $escapetool.xml($doc.displayPrettyName('staticList3', false, false)) 123 + </label> 124 + <span class="xHint"> 125 + $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')) 126 + </span> 127 + </dt> 128 + <dd>$doc.display('staticList3')</dd> 129 + <dt #if (!$editing && $hasEdit) 130 + class="editableProperty" 131 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText8')))" 132 + data-property-type="object"#end> 133 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_longText8"#end> 134 + $escapetool.xml($doc.displayPrettyName('longText8', false, false)) 135 + </label> 136 + <span class="xHint"> 137 + $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')) 138 + </span> 139 + </dt> 140 + <dd>$doc.display('longText8')</dd> 141 + <dt #if (!$editing && $hasEdit) 142 + class="editableProperty" 143 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('staticList4')))" 144 + data-property-type="object"#end> 145 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_staticList4"#end> 146 + $escapetool.xml($doc.displayPrettyName('staticList4', false, false)) 147 + </label> 148 + <span class="xHint"> 149 + $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')) 150 + </span> 151 + </dt> 152 + <dd>$doc.display('staticList4')</dd> 153 + <dt #if (!$editing && $hasEdit) 154 + class="editableProperty" 155 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText9')))" 156 + data-property-type="object"#end> 157 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_longText9"#end> 158 + $escapetool.xml($doc.displayPrettyName('longText9', false, false)) 159 + </label> 160 + <span class="xHint"> 161 + $escapetool.xml($services.localization.render('How do messages travel across multiple hops, and what abstract network structure is created?')) 162 + </span> 163 + </dt> 164 + <dd>$doc.display('longText9')</dd> 165 + <dt #if (!$editing && $hasEdit) 166 + class="editableProperty" 167 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('staticList5')))" 168 + data-property-type="object"#end> 169 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_staticList5"#end> 170 + $escapetool.xml($doc.displayPrettyName('staticList5', false, false)) 171 + </label> 172 + <span class="xHint"> 173 + $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')) 174 + </span> 175 + </dt> 176 + <dd>$doc.display('staticList5')</dd> 177 + <dt #if (!$editing && $hasEdit) 178 + class="editableProperty" 179 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText10')))" 180 + data-property-type="object"#end> 181 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_longText10"#end> 182 + $escapetool.xml($doc.displayPrettyName('longText10', false, false)) 183 + </label> 184 + <span class="xHint"> 185 + $escapetool.xml($services.localization.render('How do peers establish end-to-end byte streams and reliable delivery?')) 186 + </span> 187 + </dt> 188 + <dd>$doc.display('longText10')</dd> 189 + <dt #if (!$editing && $hasEdit) 190 + class="editableProperty" 191 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('staticList6')))" 192 + data-property-type="object"#end> 193 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_staticList6"#end> 194 + $escapetool.xml($doc.displayPrettyName('staticList6', false, false)) 195 + </label> 196 + <span class="xHint"> 197 + $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')) 198 + </span> 199 + </dt> 200 + <dd>$doc.display('staticList6')</dd> 201 + <dt #if (!$editing && $hasEdit) 202 + class="editableProperty" 203 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText11')))" 204 + data-property-type="object"#end> 205 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_longText11"#end> 206 + $escapetool.xml($doc.displayPrettyName('longText11', false, false)) 207 + </label> 208 + <span class="xHint"> 209 + $escapetool.xml($services.localization.render('How does data move across the medium?')) 210 + </span> 211 + </dt> 212 + <dd>$doc.display('longText11')</dd> 213 + <dt #if (!$editing && $hasEdit) 214 + class="editableProperty" 215 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('staticList7')))" 216 + data-property-type="object"#end> 217 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_staticList7"#end> 218 + $escapetool.xml($doc.displayPrettyName('staticList7', false, false)) 219 + </label> 220 + <span class="xHint"> 221 + $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)')) 222 + </span> 223 + </dt> 224 + <dd>$doc.display('staticList7')</dd> 225 + <dt #if (!$editing && $hasEdit) 226 + class="editableProperty" 227 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText12')))" 228 + data-property-type="object"#end> 229 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_longText12"#end> 230 + $escapetool.xml($doc.displayPrettyName('longText12', false, false)) 231 + </label> 232 + <span class="xHint"> 233 + $escapetool.xml($services.localization.render('How is data addressed and verified by content, not location?')) 234 + </span> 235 + </dt> 236 + <dd>$doc.display('longText12')</dd> 237 + <dt #if (!$editing && $hasEdit) 238 + class="editableProperty" 239 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('staticList8')))" 240 + data-property-type="object"#end> 241 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_staticList8"#end> 242 + $escapetool.xml($doc.displayPrettyName('staticList8', false, false)) 243 + </label> 244 + <span class="xHint"> 245 + $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')) 246 + </span> 247 + </dt> 248 + <dd>$doc.display('staticList8')</dd> 249 + <dt #if (!$editing && $hasEdit) 250 + class="editableProperty" 251 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText13')))" 252 + data-property-type="object"#end> 253 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_longText13"#end> 254 + $escapetool.xml($doc.displayPrettyName('longText13', false, false)) 255 + </label> 256 + <span class="xHint"> 257 + $escapetool.xml($services.localization.render('What relevance does this topic have for the project?')) 258 + </span> 259 + </dt> 260 + <dd>$doc.display('longText13')</dd> 261 + <dt #if (!$editing && $hasEdit) 262 + class="editableProperty" 263 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('staticList9')))" 264 + data-property-type="object"#end> 265 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_staticList9"#end> 266 + $escapetool.xml($doc.displayPrettyName('staticList9', false, false)) 267 + </label> 268 + <span class="xHint"> 269 + $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')) 270 + </span> 271 + </dt> 272 + <dd>$doc.display('staticList9')</dd> 273 + <dt #if (!$editing && $hasEdit) 274 + class="editableProperty" 275 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('MesForm')))" 276 + data-property-type="object"#end> 277 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_MesForm"#end> 278 + $escapetool.xml($doc.displayPrettyName('MesForm', false, false)) 279 + </label> 280 + <span class="xHint"> 281 + $escapetool.xml($services.localization.render('How are connections initiated, authenticated, resumed, and kept alive?')) 282 + </span> 283 + </dt> 284 + <dd>$doc.display('MesForm')</dd> 285 + <dt #if (!$editing && $hasEdit) 286 + class="editableProperty" 287 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('staticList10')))" 288 + data-property-type="object"#end> 289 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_staticList10"#end> 290 + $escapetool.xml($doc.displayPrettyName('staticList10', false, false)) 291 + </label> 292 + <span class="xHint"> 293 + $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)')) 294 + </span> 295 + </dt> 296 + <dd>$doc.display('staticList10')</dd> 297 + <dt #if (!$editing && $hasEdit) 298 + class="editableProperty" 299 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText15')))" 300 + data-property-type="object"#end> 301 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_longText15"#end> 302 + $escapetool.xml($doc.displayPrettyName('longText15', false, false)) 303 + </label> 304 + <span class="xHint"> 305 + $escapetool.xml($services.localization.render('How is data encoded, structured, and/or made interoperable between peers?')) 306 + </span> 307 + </dt> 308 + <dd>$doc.display('longText15')</dd> 309 + <dt #if (!$editing && $hasEdit) 310 + class="editableProperty" 311 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('ctn_filesynch')))" 312 + data-property-type="object"#end> 313 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_ctn_filesynch"#end> 314 + $escapetool.xml($doc.displayPrettyName('ctn_filesynch', false, false)) 315 + </label> 316 + <span class="xHint"> 317 + $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')) 318 + </span> 319 + </dt> 320 + <dd>$doc.display('ctn_filesynch')</dd> 321 + <dt #if (!$editing && $hasEdit) 322 + class="editableProperty" 323 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('filesynch')))" 324 + data-property-type="object"#end> 325 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_filesynch"#end> 326 + $escapetool.xml($doc.displayPrettyName('filesynch', false, false)) 327 + </label> 328 + <span class="xHint"> 329 + $escapetool.xml($services.localization.render('How are large objects transferred and deduplicated efficiently across peers?')) 330 + </span> 331 + </dt> 332 + <dd>$doc.display('filesynch')</dd> 333 + <dt #if (!$editing && $hasEdit) 334 + class="editableProperty" 335 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('ctn_localsto')))" 336 + data-property-type="object"#end> 337 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_ctn_localsto"#end> 338 + $escapetool.xml($doc.displayPrettyName('ctn_localsto', false, false)) 339 + </label> 340 + <span class="xHint"> 341 + $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')) 342 + </span> 343 + </dt> 344 + <dd>$doc.display('ctn_localsto')</dd> 345 + <dt #if (!$editing && $hasEdit) 346 + class="editableProperty" 347 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('localsto')))" 348 + data-property-type="object"#end> 349 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_localsto"#end> 350 + $escapetool.xml($doc.displayPrettyName('localsto', false, false)) 351 + </label> 352 + <span class="xHint"> 353 + $escapetool.xml($services.localization.render('How do nodes persist, index, and process data locally—without external servers?')) 354 + </span> 355 + </dt> 356 + <dd>$doc.display('localsto')</dd> 357 + <dt #if (!$editing && $hasEdit) 358 + class="editableProperty" 359 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('ctn_crash')))" 360 + data-property-type="object"#end> 361 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_ctn_crash"#end> 362 + $escapetool.xml($doc.displayPrettyName('ctn_crash', false, false)) 363 + </label> 364 + <span class="xHint"> 365 + $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)')) 366 + </span> 367 + </dt> 368 + <dd>$doc.display('ctn_crash')</dd> 369 + <dt #if (!$editing && $hasEdit) 370 + class="editableProperty" 371 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('Crash_Res')))" 372 + data-property-type="object"#end> 373 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_Crash_Res"#end> 374 + $escapetool.xml($doc.displayPrettyName('Crash_Res', false, false)) 375 + </label> 376 + <span class="xHint"> 377 + $escapetool.xml($services.localization.render('How do nodes recover and maintain correctness under failure?')) 378 + </span> 379 + </dt> 380 + <dd>$doc.display('Crash_Res')</dd> 96 96 </dl> 97 97 </div> 98 98 {{/html}}