Skip to content

feat(pty): add Unix PTY spawn and basic I/O #35

Description

@decode2

Preflight checks

  • I searched open and closed issues and found no duplicate.
  • I understand a maintainer must add status:approved before work begins or a pull request is opened.

Problem

Splice Shell has a platform-neutral PTY session contract but no native Unix backend, so Linux sessions cannot spawn structured commands, exchange terminal I/O, or safely close and resize the root PTY process.

Proposed solution

Add the Unix portable-pty backend for structured argv, cwd and environment handling, shell startup, buffered UTF-8 output, input writes, process naming, and basic liveness. Bound root-process close escalation and retain the master PTY for resize safety.

Process-group descendant teardown and the remaining bounded-review warnings are intentionally deferred to PR4.

Affected area

Terminal and PTY

Alternatives considered

Using pipes would not provide terminal semantics. Expanding this slice to process-group descendant management would exceed the approved PR3 review boundary and couple follow-up lifecycle behavior to basic Unix spawn and I/O.

Additional context

This is PR3 of 15 in the stacked-to-main terminal-ai-platform-expansion delivery. It starts from merged PR1-2 at 23af77a and is limited to Unix PTY spawn/basic I/O plus bounded root close/resize safety. Native Windows CI remains required before merge; Wine cannot substitute for native ConPTY validation.

Metadata

Metadata

Assignees

No one assigned

    Labels

    status:approvedApproved by a maintainer for implementationtype:featureAdds or improves functionality

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions