add granular session log: Mar 1 upload pipeline + filesystem consolidation
This commit is contained in:
parent
457a9b8cd7
commit
4a0df65a97
@ -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
|
||||||
Loading…
Reference in New Issue
Block a user