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

+5
View File
@@ -24,6 +24,11 @@ docs.
## POC-1: pkt-line over alkcall BiStream
**Status**: complete (2026-09-20) — **proceed**. See `poc-1-findings.md`.
Real git 2.43 clones/fetches/fsck-clean over the alkcall
`Connection → BiStream → tokio-util compat → gix-packetline` path; the
flagged futures-io risk resolved with a two-line compat adapter.
**Hypothesis**: a full V2 fetch handshake (`ls-refs` + one `fetch` round)
between real `git` CLI (as client, `git clone`/`git fetch`) and a Rust
listener that bridges alkcall `BiStream` to `gix-packetline`'s async codec