Changes for page ProjectsSheet

Last modified by Zenna Elfen on 2025/11/24 11:39

From version 6.1
edited by Zenna Elfen
on 2025/11/24 10:53
Change comment: Update class sheet
To version 10.1
edited by Zenna Elfen
on 2025/11/24 11:39
Change comment: Update class sheet

Summary

Details

Page properties
Content
... ... @@ -59,6 +59,18 @@
59 59   <dd>$doc.display('shortText2')</dd>
60 60   <dt #if (!$editing && $hasEdit)
61 61   class="editableProperty"
62 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('content1')))"
63 + data-property-type="object"#end>
64 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_content1"#end>
65 + $escapetool.xml($doc.displayPrettyName('content1', false, false))
66 + </label>
67 + <span class="xHint">
68 + $escapetool.xml($services.localization.render('Add an image for the project by clicking the image in the menu. This image will be visible in the table.'))
69 + </span>
70 + </dt>
71 + <dd>$doc.display('content1')</dd>
72 + <dt #if (!$editing && $hasEdit)
73 + class="editableProperty"
62 62   data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('data_synchronization')))"
63 63   data-property-type="object"#end>
64 64   <label#if ($editing) for="Projects.Code.ProjectsClass_0_data_synchronization"#end>
... ... @@ -101,7 +101,7 @@
101 101   $escapetool.xml($doc.displayPrettyName('long_res', false, false))
102 102   </label>
103 103   <span class="xHint">
104 - $escapetool.xml($services.localization.render('How is data persisted locally and replicated between peers?'))
116 + $escapetool.xml($services.localization.render('How do peers collaboratively change shared data and merge conflicts?'))
105 105   </span>
106 106   </dt>
107 107   <dd>$doc.display('long_res')</dd>
... ... @@ -179,220 +179,220 @@
179 179   <dd>$doc.display('long_ident')</dd>
180 180   <dt #if (!$editing && $hasEdit)
181 181   class="editableProperty"
182 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('staticList5')))"
194 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_transport')))"
183 183   data-property-type="object"#end>
184 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_staticList5"#end>
185 - $escapetool.xml($doc.displayPrettyName('staticList5', false, false))
196 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_transport"#end>
197 + $escapetool.xml($doc.displayPrettyName('list_transport', false, false))
186 186   </label>
187 187   <span class="xHint">
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'))
200 + $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'))
189 189   </span>
190 190   </dt>
191 - <dd>$doc.display('staticList5')</dd>
203 + <dd>$doc.display('list_transport')</dd>
192 192   <dt #if (!$editing && $hasEdit)
193 193   class="editableProperty"
194 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText10')))"
206 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_transport')))"
195 195   data-property-type="object"#end>
196 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_longText10"#end>
197 - $escapetool.xml($doc.displayPrettyName('longText10', false, false))
208 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_transport"#end>
209 + $escapetool.xml($doc.displayPrettyName('long_transport', false, false))
198 198   </label>
199 199   <span class="xHint">
200 200   $escapetool.xml($services.localization.render('How do peers establish end-to-end byte streams and reliable delivery?'))
201 201   </span>
202 202   </dt>
203 - <dd>$doc.display('longText10')</dd>
215 + <dd>$doc.display('long_transport')</dd>
204 204   <dt #if (!$editing && $hasEdit)
205 205   class="editableProperty"
206 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('staticList6')))"
218 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_phys')))"
207 207   data-property-type="object"#end>
208 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_staticList6"#end>
209 - $escapetool.xml($doc.displayPrettyName('staticList6', false, false))
220 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_phys"#end>
221 + $escapetool.xml($doc.displayPrettyName('list_phys', false, false))
210 210   </label>
211 211   <span class="xHint">
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'))
224 + $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'))
213 213   </span>
214 214   </dt>
215 - <dd>$doc.display('staticList6')</dd>
227 + <dd>$doc.display('list_phys')</dd>
216 216   <dt #if (!$editing && $hasEdit)
217 217   class="editableProperty"
218 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText11')))"
230 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_phys')))"
219 219   data-property-type="object"#end>
220 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_longText11"#end>
221 - $escapetool.xml($doc.displayPrettyName('longText11', false, false))
232 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_phys"#end>
233 + $escapetool.xml($doc.displayPrettyName('long_phys', false, false))
222 222   </label>
223 223   <span class="xHint">
224 224   $escapetool.xml($services.localization.render('How does data move across the medium?'))
225 225   </span>
226 226   </dt>
227 - <dd>$doc.display('longText11')</dd>
239 + <dd>$doc.display('long_phys')</dd>
228 228   <dt #if (!$editing && $hasEdit)
229 229   class="editableProperty"
230 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('staticList7')))"
242 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_cont')))"
231 231   data-property-type="object"#end>
232 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_staticList7"#end>
233 - $escapetool.xml($doc.displayPrettyName('staticList7', false, false))
244 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_cont"#end>
245 + $escapetool.xml($doc.displayPrettyName('list_cont', false, false))
234 234   </label>
235 235   <span class="xHint">
236 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 237   </span>
238 238   </dt>
239 - <dd>$doc.display('staticList7')</dd>
251 + <dd>$doc.display('list_cont')</dd>
240 240   <dt #if (!$editing && $hasEdit)
241 241   class="editableProperty"
242 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText12')))"
254 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_cont')))"
243 243   data-property-type="object"#end>
244 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_longText12"#end>
245 - $escapetool.xml($doc.displayPrettyName('longText12', false, false))
256 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_cont"#end>
257 + $escapetool.xml($doc.displayPrettyName('long_cont', false, false))
246 246   </label>
247 247   <span class="xHint">
248 248   $escapetool.xml($services.localization.render('How is data addressed and verified by content, not location?'))
249 249   </span>
250 250   </dt>
251 - <dd>$doc.display('longText12')</dd>
263 + <dd>$doc.display('long_cont')</dd>
252 252   <dt #if (!$editing && $hasEdit)
253 253   class="editableProperty"
254 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('staticList8')))"
266 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_p2p')))"
255 255   data-property-type="object"#end>
256 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_staticList8"#end>
257 - $escapetool.xml($doc.displayPrettyName('staticList8', false, false))
268 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_p2p"#end>
269 + $escapetool.xml($doc.displayPrettyName('list_p2p', false, false))
258 258   </label>
259 259   <span class="xHint">
260 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 261   </span>
262 262   </dt>
263 - <dd>$doc.display('staticList8')</dd>
275 + <dd>$doc.display('list_p2p')</dd>
264 264   <dt #if (!$editing && $hasEdit)
265 265   class="editableProperty"
266 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText13')))"
278 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_p2p')))"
267 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))
280 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_p2p"#end>
281 + $escapetool.xml($doc.displayPrettyName('long_p2p', false, false))
270 270   </label>
271 271   <span class="xHint">
272 - $escapetool.xml($services.localization.render('What relevance does this topic have for the project?'))
284 + $escapetool.xml($services.localization.render('How can two peers connect directly across networks, firewalls, and NATs?'))
273 273   </span>
274 274   </dt>
275 - <dd>$doc.display('longText13')</dd>
287 + <dd>$doc.display('long_p2p')</dd>
276 276   <dt #if (!$editing && $hasEdit)
277 277   class="editableProperty"
278 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('staticList9')))"
290 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_sess')))"
279 279   data-property-type="object"#end>
280 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_staticList9"#end>
281 - $escapetool.xml($doc.displayPrettyName('staticList9', false, false))
292 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_sess"#end>
293 + $escapetool.xml($doc.displayPrettyName('list_sess', false, false))
282 282   </label>
283 283   <span class="xHint">
284 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 285   </span>
286 286   </dt>
287 - <dd>$doc.display('staticList9')</dd>
299 + <dd>$doc.display('list_sess')</dd>
288 288   <dt #if (!$editing && $hasEdit)
289 289   class="editableProperty"
290 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('MesForm')))"
302 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_sess')))"
291 291   data-property-type="object"#end>
292 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_MesForm"#end>
293 - $escapetool.xml($doc.displayPrettyName('MesForm', false, false))
304 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_sess"#end>
305 + $escapetool.xml($doc.displayPrettyName('long_sess', false, false))
294 294   </label>
295 295   <span class="xHint">
296 296   $escapetool.xml($services.localization.render('How are connections initiated, authenticated, resumed, and kept alive?'))
297 297   </span>
298 298   </dt>
299 - <dd>$doc.display('MesForm')</dd>
311 + <dd>$doc.display('long_sess')</dd>
300 300   <dt #if (!$editing && $hasEdit)
301 301   class="editableProperty"
302 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('staticList10')))"
314 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_mess')))"
303 303   data-property-type="object"#end>
304 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_staticList10"#end>
305 - $escapetool.xml($doc.displayPrettyName('staticList10', false, false))
316 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_mess"#end>
317 + $escapetool.xml($doc.displayPrettyName('list_mess', false, false))
306 306   </label>
307 307   <span class="xHint">
308 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 309   </span>
310 310   </dt>
311 - <dd>$doc.display('staticList10')</dd>
323 + <dd>$doc.display('list_mess')</dd>
312 312   <dt #if (!$editing && $hasEdit)
313 313   class="editableProperty"
314 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('longText15')))"
326 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_mess')))"
315 315   data-property-type="object"#end>
316 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_longText15"#end>
317 - $escapetool.xml($doc.displayPrettyName('longText15', false, false))
328 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_mess"#end>
329 + $escapetool.xml($doc.displayPrettyName('long_mess', false, false))
318 318   </label>
319 319   <span class="xHint">
320 320   $escapetool.xml($services.localization.render('How is data encoded, structured, and/or made interoperable between peers?'))
321 321   </span>
322 322   </dt>
323 - <dd>$doc.display('longText15')</dd>
335 + <dd>$doc.display('long_mess')</dd>
324 324   <dt #if (!$editing && $hasEdit)
325 325   class="editableProperty"
326 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('ctn_filesynch')))"
338 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_blob')))"
327 327   data-property-type="object"#end>
328 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_ctn_filesynch"#end>
329 - $escapetool.xml($doc.displayPrettyName('ctn_filesynch', false, false))
340 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_blob"#end>
341 + $escapetool.xml($doc.displayPrettyName('list_blob', false, false))
330 330   </label>
331 331   <span class="xHint">
332 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 333   </span>
334 334   </dt>
335 - <dd>$doc.display('ctn_filesynch')</dd>
347 + <dd>$doc.display('list_blob')</dd>
336 336   <dt #if (!$editing && $hasEdit)
337 337   class="editableProperty"
338 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('filesynch')))"
350 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_blob')))"
339 339   data-property-type="object"#end>
340 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_filesynch"#end>
341 - $escapetool.xml($doc.displayPrettyName('filesynch', false, false))
352 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_blob"#end>
353 + $escapetool.xml($doc.displayPrettyName('long_blob', false, false))
342 342   </label>
343 343   <span class="xHint">
344 344   $escapetool.xml($services.localization.render('How are large objects transferred and deduplicated efficiently across peers?'))
345 345   </span>
346 346   </dt>
347 - <dd>$doc.display('filesynch')</dd>
359 + <dd>$doc.display('long_blob')</dd>
348 348   <dt #if (!$editing && $hasEdit)
349 349   class="editableProperty"
350 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('ctn_localsto')))"
362 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_localsto')))"
351 351   data-property-type="object"#end>
352 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_ctn_localsto"#end>
353 - $escapetool.xml($doc.displayPrettyName('ctn_localsto', false, false))
364 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_localsto"#end>
365 + $escapetool.xml($doc.displayPrettyName('list_localsto', false, false))
354 354   </label>
355 355   <span class="xHint">
356 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 357   </span>
358 358   </dt>
359 - <dd>$doc.display('ctn_localsto')</dd>
371 + <dd>$doc.display('list_localsto')</dd>
360 360   <dt #if (!$editing && $hasEdit)
361 361   class="editableProperty"
362 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('localsto')))"
374 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_localsto')))"
363 363   data-property-type="object"#end>
364 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_localsto"#end>
365 - $escapetool.xml($doc.displayPrettyName('localsto', false, false))
376 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_localsto"#end>
377 + $escapetool.xml($doc.displayPrettyName('long_localsto', false, false))
366 366   </label>
367 367   <span class="xHint">
368 368   $escapetool.xml($services.localization.render('How do nodes persist, index, and process data locally—without external servers?'))
369 369   </span>
370 370   </dt>
371 - <dd>$doc.display('localsto')</dd>
383 + <dd>$doc.display('long_localsto')</dd>
372 372   <dt #if (!$editing && $hasEdit)
373 373   class="editableProperty"
374 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('ctn_crash')))"
386 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('list_crash')))"
375 375   data-property-type="object"#end>
376 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_ctn_crash"#end>
377 - $escapetool.xml($doc.displayPrettyName('ctn_crash', false, false))
388 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_list_crash"#end>
389 + $escapetool.xml($doc.displayPrettyName('list_crash', false, false))
378 378   </label>
379 379   <span class="xHint">
380 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 381   </span>
382 382   </dt>
383 - <dd>$doc.display('ctn_crash')</dd>
395 + <dd>$doc.display('list_crash')</dd>
384 384   <dt #if (!$editing && $hasEdit)
385 385   class="editableProperty"
386 - data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('Crash_Res')))"
398 + data-property="$escapetool.xml($services.model.serialize($object.getPropertyReference('long_crashres')))"
387 387   data-property-type="object"#end>
388 - <label#if ($editing) for="Projects.Code.ProjectsClass_0_Crash_Res"#end>
389 - $escapetool.xml($doc.displayPrettyName('Crash_Res', false, false))
400 + <label#if ($editing) for="Projects.Code.ProjectsClass_0_long_crashres"#end>
401 + $escapetool.xml($doc.displayPrettyName('long_crashres', false, false))
390 390   </label>
391 391   <span class="xHint">
392 392   $escapetool.xml($services.localization.render('How do nodes recover and maintain correctness under failure?'))
393 393   </span>
394 394   </dt>
395 - <dd>$doc.display('Crash_Res')</dd>
407 + <dd>$doc.display('long_crashres')</dd>
396 396   </dl>
397 397  </div>
398 398  {{/html}}