Skip to content

feat(bin): add task lifecycle notification hook - #1405

Open
calcoloergosum wants to merge 2 commits into
kunchenguid:mainfrom
calcoloergosum:fm/firstmate-notify-terminal-hook
Open

feat(bin): add task lifecycle notification hook#1405
calcoloergosum wants to merge 2 commits into
kunchenguid:mainfrom
calcoloergosum:fm/firstmate-notify-terminal-hook

Conversation

@calcoloergosum

Copy link
Copy Markdown

Intent

Publish the already fully validated Firstmate task-lifecycle notification hook branch through the authenticated fork, open its pull request against kunchenguid/firstmate, and verify CI.

What Changed

  • New bin/fm-notify.sh emits optional, fail-open task.ready/task.completed events to a local executable configured via config/notification-hook, sending one bounded privacy-safe firstmate.notification.v1 JSON payload (≤512 bytes, stable SHA-256 event identity) on stdin with a clamped FM_NOTIFICATION_TIMEOUT_SECS timeout and size-capped fixed-token diagnostics in state/notification-hook.log.
  • bin/fm-watch.sh becomes the single task.ready emission owner, invoking the notifier on pending status signals with mode-specific readiness (local-only, direct-PR, green no-mistakes PR, scout report) resolved inside fm-notify.sh; bin/fm-teardown.sh becomes the single task.completed owner, emitting only after a successful non-forced ship/scout teardown.
  • Adds tests/fm-notify.test.sh and a teardown completion-emission test, and documents the hook across AGENTS.md, docs/configuration.md, docs/architecture.md, docs/scripts.md, and docs/verification/runtime-backends.md.

Testing

  • ⏭️ Test - skipped

Pipeline

Updates from git push no-mistakes

✅ **intent** - passed

✅ No issues found.

✅ **Rebase** - passed

✅ No issues found.

⏭️ **Review** - skipped

Step was skipped.

⏭️ **Test** - skipped

Step was skipped.

⏭️ **Document** - skipped

Step was skipped.

⏭️ **Lint** - skipped

Step was skipped.

✅ **Push** - passed

✅ No issues found.

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