docs(research): POC-1 complete — pkt-line over alkcall BiStream verified

Full V2 fetch handshake (ls-refs + fetch with done + sideband pack) runs
between real git 2.43 and a Rust listener over the alkcall
Connection -> BiStream -> tokio-util compat -> gix-packetline path.

Verification: git ls-remote, git clone (fsck --strict clean), incremental
git fetch, annotated-tag checkout, in-process duplex selftest. All over
alkcall 0.8 core types; the flagged futures-io risk resolved with a
two-line tokio-util compat adapter.

Findings: docs/research/poc-1-findings.md (deliverable; POC source stays
disposable at /workspace/alkgit-poc1 per the standalone POC mode).

Also records in the research docs:
- git-protocol.md: observed done-path shape (no acknowledgments section),
  git:// first-request framing, advertise-once rule
- gitoxide.md: gix-packetline async stop-delimiter + reset() contract
- alk-stack.md: POC-1 verification item marked resolved
- pocs.md: POC-1 status -> proceed
This commit is contained in:
glm-5.3-flash committed 2026-09-20 12:18:04 +00:00
1 parent b9ab5e4c9e
commit 665f701133
5 files changed
+209

No files matched your search

+3
View File
@@ -81,6 +81,9 @@ door produced the stream.
1. **BiStream ↔ pkt-line fit**: run a real `git clone` handshake over an
alkcall `Connection` using `gix-packetline` async codec end-to-end.
**Verified (POC-1, 2026-09-20)**: real git 2.43 clones/fetches
fsck-clean over `Connection → BiStream → tokio-util compat →
gix-packetline`. See `poc-1-findings.md`.
2. **HTTP smart protocol shape**: confirm alkhttp's streaming response body
can carry a pack (chunked) and that request bodies stream in without
buffering the whole POST in memory (receive-pack can be gigabytes).