Skip to content

FROM feat/739-slack-compact TO development - #740

Open
ryaneggz wants to merge 11 commits into
developmentfrom
feat/739-slack-compact
Open

FROM feat/739-slack-compact TO development#740
ryaneggz wants to merge 11 commits into
developmentfrom
feat/739-slack-compact

Conversation

@ryaneggz

@ryaneggz ryaneggz commented Aug 11, 2026

Copy link
Copy Markdown
Collaborator

Closes #739

Final design after adversarial review

  • Exact-pins ryaneggz/pi-messenger-bridge PR feat(slack): Manage PI Agent from Slack #2 at 4056384d7e3901809019e006185a68987fcc8c0b, carrying the complete thread/admin/compact stack in a master-targeted PR.
  • The package owns authenticated compact parsing, preserves raw Slack text, acknowledges the exact originating chat/thread, compacts with the current generation/context, confirms Slack disconnect, then signals restart.
  • Ordinary inbound messages use unpredictable internal request IDs activated only at the matching user message_start; markers are stripped before provider/session context. Explicit active-turn source tracking prevents local TUI steer/follow-up turns from posting to Slack.
  • The supervisor pins cwd/session storage, resumes with --continue, launches Pi in an isolated process group, and performs bounded exact-group TERM→KILL cleanup even when the leader has exited.
  • Restart IPC is a mode-0600 Unix socket whose server authenticates the exact supervised Pi PID with Linux SO_PEERCRED. Child tools, pane output, /proc fd tricks, and sibling processes cannot forge it.
  • The harness installs and lifecycle-smokes the exact bridge artifact in CI; Codex recovery, thread replies, admin commands, Hermes isolation, heartbeat/status, and lock cleanup remain covered.

Verification

  • Bridge head 4056384d: 122 tests; Biome lint; TypeScript typecheck; build.
  • Harness head 2ab05695: 39 files / 491 tests, including real Pi continuation, IPC forgery rejection, process-group lifecycle, local-turn isolation, cross-chat/thread ordering, and exact installed-artifact smoke.
  • Shell: Bash syntax and ShellCheck warning gate pass.
  • Eval: 98 probes; 94 PASS / 4 SKIPPED / 0 REGRESSION.
  • Exact-pin consumer CI: https://github.com/mifunedev/openharness/actions/runs/31485327740
  • Independent final review: PASS, no high/medium findings.
  • Deterministic audit: PR-AUDIT-PROMOTABLE.

Dependency PR

Neither PR is merged by automation.

@ryaneggz
ryaneggz marked this pull request as ready for review August 11, 2026 06:33
@ryaneggz

Copy link
Copy Markdown
Collaborator Author

Merge-order hazard with #748 — invisible at this PR's gate

git merge-tree --write-tree --messages \
  upstream/feat/739-slack-compact upstream/feat/746-firstmate-executor

CONFLICT (content): Merge conflict in .oh/evals/RESULTS.md
CONFLICT (content): Merge conflict in CHANGELOG.md

This PR and #748 both read MERGEABLE / CLEAN, because GitHub compares each
branch only against development and never against the other. The conflict is
real.

Whichever of the two merges second must re-run /eval and regenerate
.oh/evals/RESULTS.md on top of the merged base.
Hand-resolving that file
produces a benchmark that describes neither branch. CHANGELOG.md is an ordinary
textual resolve.

Structural, not a one-off: every branch that runs /eval rewrites the whole
RESULTS.md, so any two such branches conflict by construction. Worth its own
issue; not filed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant