aboutsummaryrefslogtreecommitdiffstats
path: root/TODO
diff options
context:
space:
mode:
authorBryan Newbold <bnewbold@robocracy.org>2017-12-05 23:51:06 -0800
committerBryan Newbold <bnewbold@robocracy.org>2017-12-05 23:51:06 -0800
commitd542e4e12df6031139f5ff9c8cc607b8524cf948 (patch)
tree304fc1eb1c010c08a8b19bb74c68d32402a0c969 /TODO
parent59f222a0a29f769c746740301db98adc9b6e83ea (diff)
downloadgeniza-d542e4e12df6031139f5ff9c8cc607b8524cf948.tar.gz
geniza-d542e4e12df6031139f5ff9c8cc607b8524cf948.zip
update README/TODO
Diffstat (limited to 'TODO')
-rw-r--r--TODO33
1 files changed, 14 insertions, 19 deletions
diff --git a/TODO b/TODO
index 4add30c..f1ccb08 100644
--- a/TODO
+++ b/TODO
@@ -1,19 +1,14 @@
next:
+- clean up node bitfield implementation
+- "insert" API for HyperRegister
- crude single-thread drive+network clone
+- sparse register clone
+- "needed data chunks" and progress function?
- crude single-thread drive+network broadcast
-- drive: checkout all latest files
-- SLEEP bitfields stuff
-- .latest and .ogd files
-- sparse insert into SLEEP/drive
-- secret_key-in-home helpers (read/write)
-- multi-connection network sync (per-connection state, etc)
-- duplicate file/chunk optimizations
- 'geniza clone' command
- 'geniza checkout' command
- 'geniza init', 'geniza commit' commands
-- 'geniza broadcast' command
-- API to link and run from, eg, python
specific tests:
- drive children array: deep directory nesting (like 'tree' example)
@@ -25,20 +20,20 @@ specific tests:
- cloning with metadata pointing to relative or absolute paths
("dir/../../../../etc/passwd")
-trivial performance:
+performance:
- cache SLEEP file length when opened (don't fstat all the time)
- keep an LRU cache of SLEEP reads
-APIs:
-- trait: register
-- trait: drive
-- SLEEP file
-- SLEEP register
-- SLEEP drive
-- peer (multiple transit types)
-- synchronizer (register, peers, discovery)
-
Backburner:
+- API to link and run from, eg, python
+- uTP transport
+- in-memory storage backend
+- WASM
+- multi-connection network sync (per-connection state, etc)
+- duplicate file/chunk optimizations
+- secret_key-in-home helpers (read/write)
+- SLEEP bitfields stuff
+- .latest and .ogd files
- benchmarks! syscall counts (strace), timing, etc
- test fault injection... with strace?
- consider kafka (append performance) and sqlite (robustness) file I/O patterns