Skip to content

feat: add signed push webhooks and hook file metadata - #13

Merged
Xe merged 3 commits into
mainfrom
Xe/investigate-commit-webhooks
Sep 23, 2026
Merged

Xe merged 3 commits into
mainfrom
Xe/investigate-commit-webhooks

Conversation

@Xe

@Xe Xe commented Sep 23, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

  • Add signed push webhooks with per-ref events containing every new commit and its file changes.
  • Store per-repository webhook settings as ProtoJSON in .objgit/webhooks/<org>/<repo>/settings.json, with generated Go types and a raw JSON example.
  • Add HTTP and SSH settings queries guarded by the shared Authorizer's Admin operation.

Details

Shell hooks receive net file changes, and packed-ref writes validate advertised old tips before reporting events. The default authorizer denies secret queries; an ACL-backed authorizer must explicitly grant Admin, and webhook delivery remains best effort without a durable queue.

Test plan

  • Code compiles with go build ./...
  • Code formatted with npm run format and buf format --diff --exit-code
  • go test ./..., buf lint, and buf build
  • Manual testing against a deployed Tigris bucket

Define versioned Buf push events with every new commit and its file changes. Deliver signed ProtoJSON after accepted ref updates and expose net file metadata to shell hooks.

Assisted-by: GPT-6 via Codex
Signed-off-by: Xe Iaso <xe@tigrisdata.com>
Xe added 2 commits September 23, 2026 16:05
Load each repository's ProtoJSON settings from bucket state and expose raw settings queries through the Admin Authorizer operation on HTTP and SSH.

Assisted-by: GPT-6 via Codex
Signed-off-by: Xe Iaso <xe@tigrisdata.com>
Receive-pack now reports the ref updates it applied directly, so the
before/after snapshot diff is dead code. Staticcheck failed CI on the
unused snapshotRefs (U1000); diffRefs survived only through its test.

Assisted-by: Claude Opus 5.5 via Claude Code
Signed-off-by: Xe Iaso <xe@tigrisdata.com>
@Xe
Xe merged commit 34e61cf into main Sep 23, 2026
6 checks passed
Xe pushed a commit that referenced this pull request Sep 23, 2026
# [1.7.0](v1.6.0...v1.7.0) (2026-09-23)

### Features

* add signed push webhooks and hook file metadata ([#13](#13)) ([34e61cf](34e61cf))

Signed-off-by: Tigris Data <social@tigrisdata.com>
@github-actions

Copy link
Copy Markdown

🎉 This PR is included in version 1.7.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

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

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants