~bigbes/agents-dev · parade

main · last commit 13 days ago · 7g0stsfu

← Back to the parade

ah-xuc.10 cmd/agenthubd: wire webhook secret and Telegram notifier Past Stand

status: closed P2 task @Eugene Blikh
bd reopen ah-xuc.10
Created byEugene Blikh
Ownerbigbes@gmail.com
Created2026-07-13T05:16:18Z
Started2026-07-13T07:35:21Z
Updated2026-07-13T07:53:56Z
Closed2026-07-13T07:53:56Z
Description
Wiring only. agenthubd run(): construct internal/telegram when the config block is present, otherwise keep the existing slog no-op notifier; pass the notifier into reconcile.Deps; pass the webhook secret and a hook invoking Reconciler.Poke into httpapi.Deps. internal/deps updated if that is the wiring point. Startup board preflight: with nine required buckets the existing adapter title lookup already fails fatal with the found-titles list when the Triage/Blocked/Question columns are missing on the board — verify that failure stays readable at startup. ahub needs no changes (validate-config picks up the new keys through the config package).
Acceptance criteria
go build ./cmd/... green; go test ./cmd/... green including a run() smoke asserting the webhook route responds when the secret is set and is absent when unset, and that the telegram notifier is selected when configured; go vet clean
Notes
Coordinator refinement: also wire the runner as ports.Publisher into reconcile.Deps.

Depends on

  • ah-xuc — Stage 2: webhooks, Task Spec, full buckets, Telegram, srht push, watchdog parent-child closed
  • ah-xuc.6 — telegram: ports.Notifier implementation (Bot API through HTTPS_PROXY) blocks closed
  • ah-xuc.9 — reconcile: publish review branch, watchdog on stale events, Telegram notifications blocks closed
  • ah-xuc.7 — httpapi: Vikunja webhook receiver with HMAC verification blocks closed

Depended on by

  • ah-xuc.11 — e2e: Stage 2 flows — webhook poke, Triage bounce, skills, publish, watchdog, Telegram blocks
  • ah-xuc.12 — docs: sync SPEC with Stage 2 behavior blocks

Prerequisite chain — everything this waits on, transitively

  • ah-xuc — Stage 2: webhooks, Task Spec, full buckets, Telegram, srht push, watchdog parent-child closed
  • ah-xuc.6 — telegram: ports.Notifier implementation (Bot API through HTTPS_PROXY) blocks closed
  • ah-xuc.1 — Stage 2 foundation: domain buckets/outcome, ports contracts, config surface blocks closed
  • ah-xuc.9 — reconcile: publish review branch, watchdog on stale events, Telegram notifications blocks closed
  • ah-xuc.8 — reconcile: spec-driven claim, Triage bounce, parked buckets, per-run timeout blocks closed
  • ah-xuc.2 — internal/spec: Task Spec frontmatter parse, type-label defaults, validation blocks closed
  • ah-xuc.3 — vikunja: fetch task labels into BoardTask.Labels blocks closed
  • ah-xuc.4 — store: migration v2 — per-run timeout column blocks closed
  • ah-xuc.7 — httpapi: Vikunja webhook receiver with HMAC verification blocks closed

No comments.

Close reason

95560cc; reviewer merge-ready (single wiring path, nil-safe, pointer-identity tested); validator all-pass incl. first live daemon runs — readable fatal preflight, telegram deferred past preflight with no I/O
  • Eugene Blikh added under epic ah-xuc · 2026-07-13T08:16:17Z
  • Eugene Blikh created the issue · 2026-07-13T08:16:17Z
  • Eugene Blikh added dependency on ah-xuc.6 · 2026-07-13T08:16:53Z
  • Eugene Blikh added dependency on ah-xuc.9 · 2026-07-13T08:16:53Z
  • Eugene Blikh ah-xuc.11 now depends on this · 2026-07-13T08:16:54Z
  • Eugene Blikh added dependency on ah-xuc.7 · 2026-07-13T08:16:54Z
  • Eugene Blikh ah-xuc.12 now depends on this · 2026-07-13T08:16:55Z
  • Eugene Blikh updated notes to Coordinator refinement: also wire the runner as ports.Publisher into reconcile.Deps. · 2026-07-13T08:19:12Z
  • Eugene Blikh claimed · 2026-07-13T10:35:20Z
  • Eugene Blikh closed the issue · 2026-07-13T10:53:56Z
    95560cc; reviewer merge-ready (single wiring path, nil-safe, pointer-identity tested); validator all-pass incl. first live daemon runs — readable fatal preflight, telegram deferred past preflight with no I/O
  • Eugene Blikh added label milestone:stage-2 · 2026-07-20T03:08:47Z
  • Eugene Blikh removed label milestone:stage-2 · 2026-07-20T03:10:23Z
Stored rows — what this pane was built from, as read
issues 1 row
id ah-xuc.10
content_hash 93e494bccda4f59baacc19a0e3b326af7c363fd21532a445b37b51577c6c63e9
title cmd/agenthubd: wire webhook secret and Telegram notifier
description Wiring only. agenthubd run(): construct internal/telegram when the config block is present, otherwise keep the existing slog no-op notifier; pass the notifier into reconcile.Deps; pass the webhook secret and a hook invoking Reconciler.Poke into httpapi.Deps. internal/deps updated if that is the wiring point. Startup board preflight: with nine required buckets the existing adapter title lookup already fails fatal with the found-titles list when the Triage/Blocked/Question columns are missing on the board — verify that failure stays readable at startup. ahub needs no changes (validate-config picks up the new keys through the config package).
design
acceptance_criteria go build ./cmd/... green; go test ./cmd/... green including a run() smoke asserting the webhook route responds when the secret is set and is absent when unset, and that the telegram notifier is selected when configured; go vet clean
notes Coordinator refinement: also wire the runner as ports.Publisher into reconcile.Deps.
status closed
priority 2
issue_type task
assignee Eugene Blikh
estimated_minutes NULL
created_at 2026-07-13T05:16:18Z
created_by Eugene Blikh
owner bigbes@gmail.com
updated_at 2026-07-13T07:53:56Z
closed_at 2026-07-13T07:53:56Z
closed_by_session
external_ref NULL
spec_id
compaction_level 0
compacted_at NULL
compacted_at_commit NULL
original_size NULL
sender
ephemeral 0
wisp_type
pinned 0
is_template 0
mol_type
work_type
source_system
metadata �{}
source_repo
close_reason 95560cc; reviewer merge-ready (single wiring path, nil-safe, pointer-identity tested); validator all-pass incl. first live daemon runs — readable fatal preflight, telegram deferred past preflight with no I/O
event_kind
actor
target
payload
await_type
await_id
timeout_ns 0
waiters
hook_bead
role_bead
agent_state
last_activity NULL
role_type
rig
due_at NULL
defer_until NULL
no_history 0
started_at 2026-07-13T07:35:21Z
is_blocked 0
dependencies 6 rows
id 12e9e9c8-2748-58a3-ba44-9ca7ef884ac7
issue_id ah-xuc.10
type parent-child
created_at 2026-07-13T08:16:17Z
created_by Eugene Blikh
metadata �{}
thread_id
depends_on_issue_id ah-xuc
depends_on_wisp_id NULL
depends_on_external NULL
id 477dacab-3262-5023-97b2-38698acf27c5
issue_id ah-xuc.11
type blocks
created_at 2026-07-13T08:16:54Z
created_by Eugene Blikh
metadata �{}
thread_id
depends_on_issue_id ah-xuc.10
depends_on_wisp_id NULL
depends_on_external NULL
id b2da041d-2b3a-5954-b4be-65e7440fcdb1
issue_id ah-xuc.10
type blocks
created_at 2026-07-13T08:16:53Z
created_by Eugene Blikh
metadata �{}
thread_id
depends_on_issue_id ah-xuc.6
depends_on_wisp_id NULL
depends_on_external NULL
id bfe7a6ef-2ee8-5c89-8083-819af5d086ff
issue_id ah-xuc.12
type blocks
created_at 2026-07-13T08:16:55Z
created_by Eugene Blikh
metadata �{}
thread_id
depends_on_issue_id ah-xuc.10
depends_on_wisp_id NULL
depends_on_external NULL
id dc36e825-0149-5e11-aac4-d2d8f03dd64c
issue_id ah-xuc.10
type blocks
created_at 2026-07-13T08:16:53Z
created_by Eugene Blikh
metadata �{}
thread_id
depends_on_issue_id ah-xuc.9
depends_on_wisp_id NULL
depends_on_external NULL
id f115477d-4fe6-54ee-a5a1-fee946cd310f
issue_id ah-xuc.10
type blocks
created_at 2026-07-13T08:16:54Z
created_by Eugene Blikh
metadata �{}
thread_id
depends_on_issue_id ah-xuc.7
depends_on_wisp_id NULL
depends_on_external NULL
events 6 rows
id 019f59e7-9843-7a48-9f86-42ee8b5ebbed
issue_id ah-xuc.10
event_type created
actor Eugene Blikh
old_value
new_value
comment NULL
created_at 2026-07-13T08:16:17Z
id 019f59ea-4279-72e2-a7a4-20b39d8f862b
issue_id ah-xuc.10
event_type updated
actor Eugene Blikh
old_value {"id":"ah-xuc.10","title":"cmd/agenthubd: wire webhook secret and Telegram notifier","description":"Wiring only. agenthubd run(): construct internal/telegram when the config block is present, otherwise keep the existing slog no-op notifier; pass the notifier into reconcile.Deps; pass the webhook secret and a hook invoking Reconciler.Poke into httpapi.Deps. internal/deps updated if that is the wiring point. Startup board preflight: with nine required buckets the existing adapter title lookup already fails fatal with the found-titles list when the Triage/Blocked/Question columns are missing on the board — verify that failure stays readable at startup. ahub needs no changes (validate-config picks up the new keys through the config package).","acceptance_criteria":"go build ./cmd/... green; go test ./cmd/... green including a run() smoke asserting the webhook route responds when the secret is set and is absent when unset, and that the telegram notifier is selected when configured; go vet clean","status":"open","priority":2,"issue_type":"task","owner":"bigbes@gmail.com","created_at":"2026-07-13T05:16:18Z","created_by":"Eugene Blikh","updated_at":"2026-07-13T05:16:18Z"}
new_value {"notes":"Coordinator refinement: also wire the runner as ports.Publisher into reconcile.Deps."}
comment NULL
created_at 2026-07-13T08:19:12Z
id 019f5a66-e579-77c8-8ab7-2ad404997ef9
issue_id ah-xuc.10
event_type claimed
actor Eugene Blikh
old_value {"id":"ah-xuc.10","title":"cmd/agenthubd: wire webhook secret and Telegram notifier","description":"Wiring only. agenthubd run(): construct internal/telegram when the config block is present, otherwise keep the existing slog no-op notifier; pass the notifier into reconcile.Deps; pass the webhook secret and a hook invoking Reconciler.Poke into httpapi.Deps. internal/deps updated if that is the wiring point. Startup board preflight: with nine required buckets the existing adapter title lookup already fails fatal with the found-titles list when the Triage/Blocked/Question columns are missing on the board — verify that failure stays readable at startup. ahub needs no changes (validate-config picks up the new keys through the config package).","acceptance_criteria":"go build ./cmd/... green; go test ./cmd/... green including a run() smoke asserting the webhook route responds when the secret is set and is absent when unset, and that the telegram notifier is selected when configured; go vet clean","notes":"Coordinator refinement: also wire the runner as ports.Publisher into reconcile.Deps.","status":"open","priority":2,"issue_type":"task","owner":"bigbes@gmail.com","created_at":"2026-07-13T05:16:18Z","created_by":"Eugene Blikh","updated_at":"2026-07-13T05:19:13Z"}
new_value {"assignee":"Eugene Blikh","status":"in_progress"}
comment NULL
created_at 2026-07-13T10:35:20Z
id 019f5a77-ea50-7f13-a0b5-e3448f3c3739
issue_id ah-xuc.10
event_type closed
actor Eugene Blikh
old_value
new_value 95560cc; reviewer merge-ready (single wiring path, nil-safe, pointer-identity tested); validator all-pass incl. first live daemon runs — readable fatal preflight, telegram deferred past preflight with no I/O
comment NULL
created_at 2026-07-13T10:53:56Z
id 019f7cda-934f-7883-a914-0cb25dd93793
issue_id ah-xuc.10
event_type label_added
actor Eugene Blikh
old_value NULL
new_value NULL
comment Added label: milestone:stage-2
created_at 2026-07-20T03:08:47Z
id 019f7cdc-0d28-7478-894a-e54db2120e51
issue_id ah-xuc.10
event_type label_removed
actor Eugene Blikh
old_value NULL
new_value NULL
comment Removed label: milestone:stage-2
created_at 2026-07-20T03:10:23Z