Skip to content

feat(dev): CodeZip dev runner and process lifecycle core - #1883

Open
tejaskash wants to merge 3 commits into
feat/project-foundationfrom
feat/dev-server-core
Open

feat(dev): CodeZip dev runner and process lifecycle core#1883
tejaskash wants to merge 3 commits into
feat/project-foundationfrom
feat/dev-server-core

Conversation

@tejaskash

@tejaskash tejaskash commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add process lifecycle utilities for long-running local servers, including line-based logging, process-group cleanup, and SIGTERM to SIGKILL escalation
  • add CodeZipDevRunner support for Python projects using uv and uvicorn --reload
  • add CodeZipDevRunner support for TypeScript projects using npm and tsx watch
  • pass PORT, LOCAL_DEV, and caller-provided environment variables to the agent process
  • define the DevRunner interface alongside its future handler and inject process dependencies for isolated tests

Verification

  • added runner coverage for missing source directories, dependency setup, command construction, and environment injection
  • added process coverage for output streaming, stderr classification, shutdown, and missing executables
  • bun test (565 tests)
  • typecheck passes

@github-actions github-actions Bot added the size/l PR size: L label Jul 31, 2026
@github-actions github-actions Bot added the agentcore-harness-reviewing AgentCore Harness review in progress label Jul 31, 2026
@codecov-commenter

codecov-commenter commented Jul 31, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 87.00000% with 26 lines in your changes missing coverage. Please review.
⚠️ Please upload report for BASE (feat/project-foundation@f68b907). Learn more about missing BASE report.

Files with missing lines Patch % Lines
src/core/dev/run.ts 13.04% 20 Missing ⚠️
src/core/dev/process.ts 95.12% 4 Missing ⚠️
src/core/dev/port.ts 85.71% 2 Missing ⚠️
Additional details and impacted files
@@                    Coverage Diff                     @@
##             feat/project-foundation    #1883   +/-   ##
==========================================================
  Coverage                           ?   96.17%           
==========================================================
  Files                              ?      253           
  Lines                              ?    12455           
  Branches                           ?        0           
==========================================================
  Hits                               ?    11979           
  Misses                             ?      476           
  Partials                           ?        0           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions github-actions Bot removed the agentcore-harness-reviewing AgentCore Harness review in progress label Jul 31, 2026
@tejaskash tejaskash changed the title feat(dev): CodeZip dev runner and process lifecycle core [NOT READY FOR REVIEW] feat(dev): CodeZip dev runner and process lifecycle core Jul 31, 2026
@tejaskash
tejaskash force-pushed the feat/dev-server-core branch from f5e0f3a to ba41e68 Compare July 31, 2026 16:55
@tejaskash
tejaskash force-pushed the feat/dev-server-core branch 4 times, most recently from 750364c to fe79c87 Compare August 3, 2026 18:01
@tejaskash
tejaskash force-pushed the feat/dev-server-core branch from fe79c87 to 356b555 Compare August 3, 2026 21:16
@tejaskash
tejaskash force-pushed the feat/dev-server-core branch from 70f25ad to 970d944 Compare August 6, 2026 15:57
@tejaskash tejaskash changed the title [NOT READY FOR REVIEW] feat(dev): CodeZip dev runner and process lifecycle core feat(dev): CodeZip dev runner and process lifecycle core Aug 6, 2026
@tejaskash
tejaskash force-pushed the feat/dev-server-core branch from ddad635 to dd9c5de Compare August 6, 2026 17:34
@tejaskash
tejaskash force-pushed the feat/dev-server-core branch from 5213de0 to 6cad8b2 Compare August 6, 2026 18:43
@tejaskash
tejaskash force-pushed the feat/dev-server-core branch from 6cad8b2 to c96378f Compare August 6, 2026 19:19
…ution

Implements the core infrastructure for `agentcore project dev`:
- ProcessSupervisor manages child processes with SIGTERM/SIGHUP cleanup
- CodeZipDevRunner bootstraps Python (uvicorn) and TypeScript (tsx) runtimes
- findAvailablePort walks up from requested port to find a free one
- Consumer-owned DevRunner interface with ProcessExit union type
- port: reject non-EADDRINUSE errors instead of treating every failure
  as "port busy" (EACCES on a privileged port no longer masquerades as
  in-use and gets silently walked past)
- dev: delete duplicate core/dev/run.ts; consume io/exec.ts (runProcess)
  so subprocess IO lives only in io/ (boundary of concern)
- codezip: drop nodePackageManager lockfile detection; assume npm
- process: rewrite watch() comment; tighten 128+signal comment
@tejaskash
tejaskash force-pushed the feat/dev-server-core branch from 3f9671b to d20d71f Compare August 6, 2026 19:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/l PR size: L

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants