fix(zulip): replace subprocess spawn with direct session injection
CI / validate (pull_request) Failing after 3s

- Removed spawnSync subprocess (pi -p --mode json) for Zulip DM processing
- Messages now inject directly into the current pi session via
  pi.sendUserMessage(), reusing the already-hot LLM — zero cold-start
- agent_end event handler captures assistant response and relays it to Zulip
- Added pending reply queue for ordered delivery of multiple Zulip messages
- Fixed zulip-js import (CJS default export, not named createClient)
- Added types.d.ts for zulip-js with default export declaration
- Updated package.json with yaml dependency, @earendil-works/pi-coding-agent
- Config supports both nested YAML and flat env-var formats
- Removed all subprocess timeout/buffer error paths (no longer needed)
This commit is contained in:
Abiba (pi)
2026-06-24 20:24:27 +00:00
parent 154454ac6d
commit ab3cb50eb4
4 changed files with 2959 additions and 82 deletions
+10 -4
View File
@@ -9,14 +9,20 @@
"check": "tsc --noEmit"
},
"dependencies": {
"zulip-js": "^2.0.0",
"yaml": "^2.0.0"
"yaml": "^2.9.0",
"zulip-js": "^2.0.0"
},
"devDependencies": {
"@earendil-works/pi-coding-agent": "*",
"@earendil-works/pi-coding-agent": "^0.80.2",
"typescript": "^5.0.0"
},
"keywords": ["pi", "zulip", "agent", "abiba", "sysloggh"],
"keywords": [
"pi",
"zulip",
"agent",
"abiba",
"sysloggh"
],
"license": "UNLICENSED",
"private": true
}