4 Commits
Author SHA1 Message Date
glm-5.3-flash 2f5f0ad8ed Phase 0 third pass: fork fan-out workload, dedup economics, cache ownership
- New OQ-FS-17: the multi-agent fork fan-out (many sessions forking the
  same workspace on the shared dev server — directories, docker
  containers, or remote mounts) as the workload that makes
  content-addressed dedup load-bearing, with the honest economics:
  file-level granularity already captures the fork win (unchanged files
  dedup identically); chunk-level pays only on large in-place-edited
  files and costs per-chunk metadata
- Inline threshold recorded as backend-dependent (SQLite's ~100KB
  observation; postgres/KV differ) — a configuration knob over a storage
  profile, not a constant
- Two named objectives recorded in the working direction: efficient
  many-repo git storage (OQ-FS-12) + SFTP-capable VFS for remote
  mounting (OQ-FS-16), with the container fan-out variant noted
- rudolfs precision: verified it genuinely has an S3 backend (rusoto_s3);
  the bucket/namespace key, disk-cache-permanent split, and swappable
  permanent backend are its actual patterns; cache-ownership question
  (store-layer decorator vs door-layer cache) parked in OQ-FS-17
- POC #4 feeds OQ-FS-17; survey list gains the dedup-economics item
- AGENTS.md: new convention 13 (caches key on content hashes, never on
  paths), conventions 14-18 renumbered with cross-references fixed,
  rudolfs added to the third-party reference list, fork fan-out added
  to the quick reference

Verification: docs-only repo — OQ-FS-01..17 contiguous, every referenced
workspace path exists, convention cross-references checked after
renumbering
2026-09-23 09:56:12 +00:00
glm-5.3-flash 23a39cc9c0 Phase 0 second pass: storage identity + two-crate split + anchor workload
- Reframe storage identity: git-compatible sha1/sha256 (algorithm-tagged),
  not BLAKE3 — the ancestor POCs' BLAKE3 was an iroh-blobs artifact, and
  consuming iroh-blobs (OQ-FS-03 option (a)) dissolves with it; findings
  transfer (inline/outboard hybrid, GC shape, write-ordering analysis),
  code doesn't
- Chunk-level dedup adopted as working goal for large content, with the
  honest calibration recorded: git dedups at object granularity (objects
  are effectively single-chunk); chunk manifests are the generalization
  that pays on workspace-scale files
- Two-crate working direction: alkblobs (bucket-style CAS blob store,
  appfile layout) beneath alkfs (path tree + branches + serving protocol);
  durability contract now crosses the put/get seam
- New OQ-FS-16: remote-mount anchor workload — today's sshfs/vanilla-SFTP
  mount of this dev server's workspace, with an honest decomposition of
  why it's slow and what an indexed VFS fixes server-side
- POC register: #3 rewritten as alkblobs sha1/sha256 store skeleton,
  #4 reframed (git objects ride whole-file), new #8 mount-workload
  baseline (sshfs latency measurement, runnable today)
- AGENTS.md: two-crate direction in the crate description + convention 10
  (identity, chunk-granularity note, seam durability contract) + a
  Phase-0 working-direction quick-reference section (leanings, not
  decisions)

Verification: docs-only repo — all 16 OQ ids contiguous, every referenced
workspace path exists, BLAKE3 references re-checked as historical context
2026-09-23 09:19:58 +00:00
glm-5.3-flash 9e863747fc Set up repo scaffolding: gitignore, AGENTS.md, Phase 0 doc
- .gitignore matching sibling repos (target/, node_modules/, .worktrees/, Cargo.lock)
- AGENTS.md on the alkcall/alksocks template: git workflow, 17 project
  conventions adapted for a virtual-filesystem crate (no forced host-FS
  access, metadata/content split, durability ordering, storage-trait
  one-way doors), verification commands (docs-only posture for Phase 0),
  and architecture context pointing at the ancestor research and family ADRs
- docs/research/phase-0.md: initial Phase 0 draft — vision/scope sketch,
  guiding principles, what's already settled, prior art (alknet-filesystem
  POCs, iroh-blobs + external-store probe, git/git-lfs, alkgit backend
  seam, russh-sftp, SQLite/honker, rudolfs), 15 open questions
  (OQ-FS-01..15) grouped by theme, a 7-entry candidate POC register
  (proposals, none run), survey list, and an unconverged checklist

Verification: docs-only repo — every referenced path, ADR id, and OQ id
checked to exist (workspace paths, alkcall ADRs 034-051, alkgit research
files); OQ numbering OQ-FS-01..15 complete with no gaps
2026-09-23 08:57:02 +00:00
glm-5.3-flash eb302f3a7a init 2026-09-23 07:57:04 +00:00