Skip to content

Commit a1408f2

Browse files
committed
chore: update progress for US-111
1 parent 70a0d38 commit a1408f2

2 files changed

Lines changed: 15 additions & 1 deletion

File tree

prd.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1954,7 +1954,7 @@
19541954
"Tests pass"
19551955
],
19561956
"priority": 116,
1957-
"passes": false,
1957+
"passes": true,
19581958
"notes": "LOW \u2014 found during PTY review. waitFor() occurrence param and type() edge cases have zero coverage despite being part of TerminalHarness API."
19591959
},
19601960
{

progress.txt

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1680,3 +1680,17 @@ PRD: ralph/kernel-hardening (46 stories)
16801680
- `hasProcessGroup(pgid)` in process-table.ts checks for any non-exited process with that pgid — once all members exit, the group is gone
16811681
- MockRuntimeDriver with `neverExit: true` + `killSignals: []` is the standard pattern for testing signal delivery
16821682
---
1683+
1684+
## 2026-03-18 - US-111
1685+
- What was implemented: Added three edge-case tests for TerminalHarness API
1686+
- waitFor with occurrence=2 — runs "echo AAA" and verifies waitFor("AAA", 2) succeeds (text appears in echoed command line + output)
1687+
- waitFor with occurrence=3 on text appearing only twice — verifies timeout rejection
1688+
- type() with echo disabled and no newline (zero output) — verifies settlement timer fires after SETTLE_MS (~50ms), not hanging
1689+
- Files changed:
1690+
- packages/kernel/test/shell-terminal.test.ts — added 3 tests to shell-terminal describe block
1691+
- prd.json — marked US-111 (P116) as passes: true
1692+
- **Learnings for future iterations:**
1693+
- PTY echo causes typed text to appear on screen, so "AAA" in "echo AAA" command counts as an occurrence in waitFor
1694+
- type() starts settlement timer before writing input — even with zero output it resolves after SETTLE_MS (50ms)
1695+
- Disabling echo via "noecho" command + ptySetDiscipline is a clean way to test zero-output type() scenarios
1696+
---

0 commit comments

Comments
 (0)