glm-5.3-flash
70815e22a0
docs(research): record POC-3 outcome — phase 0 gates all pass
...
- pocs.md: POC-3 marked complete/proceed with result summary; sequencing
status updated
- alk-stack.md: verify item 2 (HTTP smart protocol shape) resolved,
pointing at poc3-findings.md
2026-09-21 02:45:08 +00:00
glm-5.3-flash
8ef833430e
docs(research): POC-3 complete — smart-http through alkhttp verified
...
- real git 2.43 clones/fetches/tag-checkouts over http:// through the full
alkcall -> alkhttp path (Connection::from_bidi(http/1.1) -> HttpAdapter ->
axum custom routes); h2c clone also verified
- request bodies stream (measured): BodyDataStream yields one hyper-read
chunk per poll_next; dribble probe + git's forced-chunked POST path
- pack responses stream under back pressure: bounded mpsc -> Body::from_stream,
O(counts) RSS on a 60k-object clone (peak ~8 MB above idle at 5.33 MB pack)
- protocol correction for git-protocol.md: http V2 responses end at the
flush; the 0002 response-end pkt is synthesized by remote-curl, never on
the wire; first POST carries the cached capability dump; flush-only POST
(probe_rpc) wants 200 + empty body
- POC-3 outcome recorded in pocs.md; alk-stack.md item 2 resolved
Verification: cargo test / clippy -D warnings / fmt --check clean
2026-09-21 02:44:25 +00:00
glm-5.3-flash
3e68cb5b68
docs(research): POC-2 complete — server-side pack generation verified
...
POC-2 (standalone mode, /workspace/alkgit-poc2) confirms the fetch crux:
gitoxide's own generation pipeline streams valid packs to any io::Write,
and real git 2.43 clones/fetches over the POC-1 bridge with fsck --strict
passing on every clone.
- Findings: docs/research/poc2-findings.md (proceed)
- git-protocol.md: pack-generation option list resolved ((b) wins);
record two-stage closure (commit ancestry -> TreeContents), odb handle
prerequisites, bundle::write's real role (receive-pack indexing),
missing-delta-synthesis note
- gitoxide.md: generation pipeline + gix-odb API contract notes
(Cache !Sync, prevent_pack_unload, missing_objects check)
- pocs.md: POC-2 outcome recorded; POC-3 is the remaining phase-0 gate
Verification: cargo run -- selftest (gen -> bundle roundtrip ->
index-pack --strict -> verify-pack -> unpack-objects --strict -> fsck ->
closure cross-check -> sideband wire decode); 10k-commit/60k-object
fixture: closure 60000==60000, pack 5.33MB in 5.5s at ~11MB extra RSS;
real git clones (loose and packed sources) + tag checkout + incremental
fetch all fsck-clean over git:// through the alkcall Connection/BiStream
path
2026-09-20 18:36:11 +00:00
glm-5.3-flash
665f701133
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
2026-09-20 12:18:04 +00:00
glm-5.3-flash
b9ab5e4c9e
docs: two POC modes — branch vs standalone scratch project
...
- pocs.md: define both modes + per-POC assignment (POC-1/2 standalone at
/workspace/alkgit-pocN, POC-3 branch mode); findings are the
deliverable, POC source never merges to main
- sdd_process.md: phase 0 + POC Specialist sections cover both modes
- poc-specialist.md: mode determination up front, standalone environment
section, 'stay in your lane' principle updated
- AGENTS.md: lifecycle status describes the two modes
Verified: none needed (markdown only)
2026-09-19 17:35:58 +00:00
glm-5.3-flash
4d3ec3cc63
docs: composability boundary + public-clone deployment anchor
...
- vision: 'ALPN as a service' section (core is front-door-blind; v1
reduces to storage + ACL + protocol adapters); primary deployment
target = public anonymous fetch, authenticated push, minimal ACL
- alk-stack: concrete composability boundary (core+transport depend on
alkcall types only; adapters replaceable)
- AGENTS.md: convention 15 codifies the boundary
Verified: none needed (markdown only)
2026-09-19 17:07:25 +00:00
glm-5.3-flash
a3cdef909b
feat: workspace skeleton + phase 0 research docs
...
- Cargo workspace with 5 sub-crates: alkgit-core (storage),
alkgit-transport (smart protocol), alkgit-http, alkgit-ssh, alkgitd
(binary); sha1 pinned through the gix stack, sha256 passthrough feature
- docs/research/: vision, gitoxide alignment, alk stack fit, server-side
protocol inventory, license/reference policy, POC plan
- AGENTS.md: conventions mirroring alkcall (no comments, thiserror, tokio,
no secrets on wire/at rest, visible-surface=authorized-surface,
gitoxide-only serving path, bounded resources, registry-resolved repos)
Verified: cargo build, clippy -D warnings, fmt, test, check --all-features
2026-09-19 15:36:21 +00:00