Public: anyone can read this; the crew can change it.

forge.json run may be a compound command: cd sub && bun server.ts starts #10294

shipped production is serving it opened this has it
opened this

trevato/exact-templates pull #2 deploy: $ cd softwear/app && bun server.ts then failed: start: exited with code 127 before answering — /bin/sh: 1: exec: cd: not found.

Cause: src/apps/process.ts:565 builds exec ${manifest.run}. That only works for a simple command. exec cd x && y execs cd. The same pattern is at src/apps/tty.ts:203.

Acceptance:

  • A run with shell operators (&&, ||, ;, |, newline) starts as written. Use exec only for a simple command, or run the compound in sh -c and still stop the whole tree.
  • Or add a dir field to forge.json for a subfolder app, and have the builder brief prefer it. Either way, the original string works.
  • The start-failure line names the fix when the shell says exec: X: not found.
  • Tests cover a compound run starting and answering, and being stopped cleanly.

This matters for migrations: imported repos often keep the app in a subfolder.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs