~bigbes/sr-ht-spec · parade

main · last commit 18 hours ago · 8tmadfpi

← Back to the parade

spec-3m9 Phase 5a: webhooks + notifications on proposal lifecycle Past Stand

status: closed P3 feature @Eugene Blikh
bd reopen spec-3m9
Created byEugene Blikh
Ownerbigbes@gmail.com
Created2026-07-23T07:02:58Z
Started2026-07-23T07:03:00Z
Updated2026-07-24T09:50:18Z
Closed2026-07-24T09:50:18Z
Description
Phase 5a: webhooks via FULL core-go convention adoption (user chose to match pages.sr.ht/lists.sr.ht byte-for-byte). Prerequisite: retrofit graph/ onto core-go conventions (database.Model, @access/@private directives, cursor pagination, auth.Middleware + a user model with OAuth2 scopes). Then add gql_proposal_wh_sub/_delivery + webhook SDL/resolvers/delivery on top. Reference: ~/data/home/tmp/pages.sr.ht (same fork). Large graph rewrite, not additive.

Depends on

  • spec-by6 — Phase 5: comments, webhooks, mutations, vector search parent-child open

Depended on by

  • spec-8y4 — Phase 5a-1: adopt core-go graph conventions (directives, database.Model, cursors, auth+user model) parent-child
  • spec-45j — Phase 5a-2: webhook tables, SDL, resolvers, delivery on proposal open/merge/reject parent-child

Prerequisite chain — everything this waits on, transitively

  • spec-by6 — Phase 5: comments, webhooks, mutations, vector search parent-child open
  • spec-3vz — Phase 4: review plane — approve/reject in a browser blocks closed
  • spec-ejq — spec.sr.ht — reviewable document storage for humans and agents parent-child open
  • spec-zqb — Phase 3: write plane — agents propose blocks closed

No comments.

Close reason

Phase 5a webhooks complete: DB + authn→AuthContext bridge + GraphQL surface + core-go server wiring + firing. Verified live: agent REST propose delivers an Ed25519-signed POST whose body is the subscription query executed against the ProposalEvent payload; delivery recorded.
  • Eugene Blikh created the issue · 2026-07-23T10:02:58Z
  • Eugene Blikh added under epic spec-by6 · 2026-07-23T10:02:59Z
  • Eugene Blikh claimed · 2026-07-23T10:02:59Z
  • Eugene Blikh updated description to Phase 5a: webhooks via FULL core-go convention adoption (user chose to match pages.sr.ht/lists.sr.ht byte-for-byte). Prerequisite: retrofit graph/ onto core-go conventions (database.Model, @access/@private directives, cursor pagination, auth.Middleware + a user model with OAuth2 scopes). Then add gql_proposal_wh_sub/_delivery + webhook SDL/resolvers/delivery on top. Reference: ~/data/home/tmp/pages.sr.ht (same fork). Large graph rewrite, not additive. · 2026-07-24T05:05:27Z
  • Eugene Blikh added subtask spec-8y4 · 2026-07-24T05:05:29Z
  • Eugene Blikh added subtask spec-45j · 2026-07-24T05:05:30Z
  • Eugene Blikh closed the issue · 2026-07-24T12:50:18Z
    Phase 5a webhooks complete: DB + authn→AuthContext bridge + GraphQL surface + core-go server wiring + firing. Verified live: agent REST propose delivers an Ed25519-signed POST whose body is the subscription query executed against the ProposalEvent payload; delivery recorded.
Stored rows — what this pane was built from, as read
issues 1 row
id spec-3m9
content_hash abe1c2fc2de8f0338fb78f23322b8c0c612e963b219e326658b426dfd08245c0
title Phase 5a: webhooks + notifications on proposal lifecycle
description Phase 5a: webhooks via FULL core-go convention adoption (user chose to match pages.sr.ht/lists.sr.ht byte-for-byte). Prerequisite: retrofit graph/ onto core-go conventions (database.Model, @access/@private directives, cursor pagination, auth.Middleware + a user model with OAuth2 scopes). Then add gql_proposal_wh_sub/_delivery + webhook SDL/resolvers/delivery on top. Reference: ~/data/home/tmp/pages.sr.ht (same fork). Large graph rewrite, not additive.
design
acceptance_criteria
notes
status closed
priority 3
issue_type feature
assignee Eugene Blikh
estimated_minutes NULL
created_at 2026-07-23T07:02:58Z
created_by Eugene Blikh
owner bigbes@gmail.com
updated_at 2026-07-24T09:50:18Z
closed_at 2026-07-24T09:50:18Z
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 Phase 5a webhooks complete: DB + authn→AuthContext bridge + GraphQL surface + core-go server wiring + firing. Verified live: agent REST propose delivers an Ed25519-signed POST whose body is the subscription query executed against the ProposalEvent payload; delivery recorded.
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-23T07:03:00Z
is_blocked 0
dependencies 3 rows
id 6d35381a-336a-52f3-8ed5-ea644f2c1329
issue_id spec-3m9
type parent-child
created_at 2026-07-23T10:02:59Z
created_by Eugene Blikh
metadata �{}
thread_id
depends_on_issue_id spec-by6
depends_on_wisp_id NULL
depends_on_external NULL
id e2b5479d-14be-503c-8536-7f7621f1f83b
issue_id spec-8y4
type parent-child
created_at 2026-07-24T05:05:29Z
created_by Eugene Blikh
metadata �{}
thread_id
depends_on_issue_id spec-3m9
depends_on_wisp_id NULL
depends_on_external NULL
id e6ae699e-ee61-5be7-a28c-f10a16cca441
issue_id spec-45j
type parent-child
created_at 2026-07-24T05:05:30Z
created_by Eugene Blikh
metadata �{}
thread_id
depends_on_issue_id spec-3m9
depends_on_wisp_id NULL
depends_on_external NULL
events 4 rows
id 019f8dc8-d95b-7daf-90cd-eaf2e7575e02
issue_id spec-3m9
event_type created
actor Eugene Blikh
old_value
new_value
comment NULL
created_at 2026-07-23T10:02:58Z
id 019f8dc8-ded8-7301-8f4b-b77fa045ed8b
issue_id spec-3m9
event_type claimed
actor Eugene Blikh
old_value {"id":"spec-3m9","title":"Phase 5a: webhooks + notifications on proposal lifecycle","description":"Emit webhooks on proposal open/merge/reject so external systems and email learn about review events. core-go/webhooks is GraphQL-native; the Phase 2 read schema at /query is the foundation. First slice of Phase 5 (spec-by6).","status":"open","priority":3,"issue_type":"feature","owner":"bigbes@gmail.com","created_at":"2026-07-23T07:02:58Z","created_by":"Eugene Blikh","updated_at":"2026-07-23T07:02:58Z"}
new_value {"assignee":"Eugene Blikh","status":"in_progress"}
comment NULL
created_at 2026-07-23T10:02:59Z
id 019f91de-d454-75cc-97d7-7252b2993b83
issue_id spec-3m9
event_type updated
actor Eugene Blikh
old_value {"id":"spec-3m9","title":"Phase 5a: webhooks + notifications on proposal lifecycle","description":"Emit webhooks on proposal open/merge/reject so external systems and email learn about review events. core-go/webhooks is GraphQL-native; the Phase 2 read schema at /query is the foundation. First slice of Phase 5 (spec-by6).","status":"in_progress","priority":3,"issue_type":"feature","assignee":"Eugene Blikh","owner":"bigbes@gmail.com","created_at":"2026-07-23T07:02:58Z","created_by":"Eugene Blikh","updated_at":"2026-07-23T07:03:00Z","started_at":"2026-07-23T07:03:00Z"}
new_value {"description":"Phase 5a: webhooks via FULL core-go convention adoption (user chose to match pages.sr.ht/lists.sr.ht byte-for-byte). Prerequisite: retrofit graph/ onto core-go conventions (database.Model, @access/@private directives, cursor pagination, auth.Middleware + a user model with OAuth2 scopes). Then add gql_proposal_wh_sub/_delivery + webhook SDL/resolvers/delivery on top. Reference: ~/data/home/tmp/pages.sr.ht (same fork). Large graph rewrite, not additive."}
comment NULL
created_at 2026-07-24T05:05:27Z
id 019f9388-67e2-7ae1-a922-4d6512ee0c21
issue_id spec-3m9
event_type closed
actor Eugene Blikh
old_value
new_value Phase 5a webhooks complete: DB + authn→AuthContext bridge + GraphQL surface + core-go server wiring + firing. Verified live: agent REST propose delivers an Ed25519-signed POST whose body is the subscription query executed against the ProposalEvent payload; delivery recorded.
comment NULL
created_at 2026-07-24T12:50:18Z