Wire layered Python environments into service startup #570

Merged
weichen merged 5 commits from feature/layered-python-env into main 2026-10-15 14:24:56 +00:00
Owner

Points backend, frontend, and documents at the layered environment branches and teaches svc.sh to prepare a shared env root.

Why: the dependency directory existed in code but startup never passed it, so the sandbox could not import python-docx.
Evidence: component branches are synced with their mains. CI on this head is the authority.
Impact: runtime/envs is shared by instances. A failed download does not block startup.
Refs: .task/feature-layered-python-env.md

Points backend, frontend, and documents at the layered environment branches and teaches svc.sh to prepare a shared env root. Why: the dependency directory existed in code but startup never passed it, so the sandbox could not import python-docx. Evidence: component branches are synced with their mains. CI on this head is the authority. Impact: runtime/envs is shared by instances. A failed download does not block startup. Refs: .task/feature-layered-python-env.md
weichen added 2 commits 2026-10-15 14:02:02 +00:00
Why: The dependency layer already existed in the backend, but service startup never passed it, so the sandbox could not import the packages the host already had.
Evidence: SELF go tests recorded on the backend commit. svc.sh only exports the env root after env ensure leaves a current base layer, and a failed download does not block startup.
Impact: Instances share runtime/envs. Existing exec= lines are left as stored. Proposal, backend, and frontend gitlinks move to this branch.
Refs: .task/feature-layered-python-env.md
Co-authored-by: Cursor <cursoragent@cursor.com>
Sync layered-env gitlinks with current component mains
ci / test-pg (pull_request) Failing after 1m26s
ci / test (pull_request) Failing after 3m49s
ci / svc-realcombo (pull_request) Failing after 3m57s
f88cc7fb37
Why: Backend, frontend, and documents each gained one commit on main after this branch was cut. The feature commits have to contain those mains so the pull requests can merge.
Evidence: git merge origin/main in each submodule completed with the ort strategy and no conflicts.
Impact: Gitlinks move to the merge commits. The layered environment changes themselves are unchanged.
Refs: .task/feature-layered-python-env.md
Co-authored-by: Cursor <cursoragent@cursor.com>
weichen added 1 commit 2026-10-15 14:04:11 +00:00
Point the backend gitlink at the storage migration fix
ci / test (pull_request) Failing after 3m51s
ci / svc-realcombo (pull_request) Failing after 4m8s
ci / test-pg (pull_request) Failing after 9m43s
f4cba944af
Why: The combination build has to include the exec env tables in the SQLite-to-Postgres copy list, or backend CI and the Dev suite both reject the candidate.
Evidence: Backend ab12fea follows the storage-migrate test that CI run 3343 failed.
Impact: Only the backend gitlink moves.
Refs: Agent-System-Backend pull 206
Co-authored-by: Cursor <cursoragent@cursor.com>
weichen added 1 commit 2026-10-15 14:08:57 +00:00
Allow the exec env package in the architecture baseline
ci / test-pg (pull_request) Failing after 1m26s
ci / svc-realcombo (pull_request) Failing after 4m8s
ci / test (pull_request) Successful in 5m47s
bd18e11836
Why: app, server, and tools now call the layered Python environment. The dependency ratchet rejects those edges until they are recorded.
Evidence: CI job 5179 failed test-boundaries on exactly these three edges. scripts/lint-architecture.sh passes locally after the update.
Impact: The allowlist grows by three edges. No other package may import execenv until it is added the same way.
Refs: Agent-System-Dev pull 570
Co-authored-by: Cursor <cursoragent@cursor.com>
weichen added 1 commit 2026-10-15 14:14:50 +00:00
Keep service start from downloading the Python base layer
ci / svc-realcombo (pull_request) Successful in 2m2s
ci / test (pull_request) Successful in 5m49s
ci / test-pg (pull_request) Successful in 8m54s
9c7fa2730e
Why: env ensure downloads an interpreter and wheels. The real-combination start test allows 120 seconds, and that download made rc1 start time out.
Evidence: CI job 5184 timed out in test_U3_real_agent_identity_lifecycle_sqlite on scripts/svc.sh rc1 start.
Impact: Start only mounts a base layer that already exists. The first build is an explicit env ensure, run outside start.
Refs: Agent-System-Dev pull 570
Co-authored-by: Cursor <cursoragent@cursor.com>
weichen merged commit 04acb027f6 into main 2026-10-15 14:24:56 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: weichen/Agent-System-Dev#570