add granular session log: Mar 1 upload pipeline + filesystem consolidation

This commit is contained in:
jester 2026-03-02 00:07:22 +00:00
parent 457a9b8cd7
commit 4a0df65a97

View File

@ -0,0 +1,78 @@
# 2026-03-01 Upload Pipeline + Filesystem Consolidation
**Type:** Implementation + Architecture Consolidation
**Status:** Upload implemented, transport tuning in progress
---
## Completed
### Upload Model
- Implemented direct runtime upload model
- Removed staging and symlink exploration entirely
- Uploads write atomically to runtime root
- Enforced by strict allowlist (`mods/*.jar`, `world/datapacks/*.zip`)
- No directory creation, no staging folders, no symlinks
### Provenance
- Added `.zlh_metadata.json` provenance tracking
- Extended `stat` response with `source` field (`"user" | null`)
- No curated inference implemented (intentional)
### API Transport
- Identified `fetch()` streaming as source of upload proxy timing issues
- Switched to raw `http.request` piping:
```
req.pipe(proxyReq)
proxyRes.pipe(res)
```
- Confirmed agent upload via direct curl
- Upload timeout tuning identified as remaining work
### Documentation
- Consolidated filesystem architecture docs (`filesystem-and-file-browser.md`, `mod-deployment-safety.md`)
- Full grind repo consolidation pass (README, CONSTRAINTS, OPEN_THREADS, SESSION_START, ANTI_DRIFT, UPSTREAMS)
---
## System State
- Read: Stable
- Write: Stable with shadow backup
- Delete: Constrained and safe
- Upload: Implemented, transport tuning in progress
- Console: Stable
---
## Known Architectural Decisions Locked In
- Direct runtime upload — no staging, no symlinks
- `.zlh_metadata.json` is the provenance layer; `stat` returns `source`
- Raw `http.request` piping for upload proxy — no `fetch()` streaming
- Upload allowlist enforced by agent, not API
---
## Remaining Issues
### Upload Transport Timeout
- Upload route timeout not yet increased
- Need to distinguish:
- client abort
- upstream timeout
- socket reset
- Upload route should log explicit error categories
### Dev Server Filesystem Model
- Not yet designed
- Game server model is complete and stable
- Dev runtime layout, artifact promotion strategy, and file editing scope all TBD
---
## Next Steps
1. Increase upload route timeout
2. Add explicit error category logging to upload route
3. Begin dev server filesystem model planning