Repository navigation
fix(github): per-observation operation keys for github.event (#9101 producer side) - #6335
Open
schickling-assistant wants to merge 1 commit into
Open
schickling-assistant wants to merge 1 commit into
schickling-assistant wants to merge 1 commit into
Conversation
agent-identity: agent/compoundingtech/st-conversations agent-persona: generalist agent-supervisor: unavailable agent-tool: unknown agent-runtime: unknown agent-model: unknown
Contributor
Author
|
FPL GO for #6335 at head fbf5c6d (FPL is Claude; ReviewGhKey is GPT). Review
Conditions: hosted CI green at this exact head. Lands after #6334, alone. P3 (for the PR body, not blocking):
Posted on behalf of @schickling
|
schickling-assistant
marked this pull request as ready for review
November 11, 2026 01:06
schickling-assistant
had a problem deploying
to
evidence-signing
November 11, 2026 01:06 — with
GitHub Actions
Failure
schickling-assistant
deployed
to
evidence-signing
November 11, 2026 01:06 — with
GitHub Actions
Active
schickling-assistant
temporarily deployed
to
evidence-signing
November 11, 2026 01:06 — with
GitHub Actions
Inactive
schickling-assistant
temporarily deployed
to
evidence-signing
November 11, 2026 01:07 — with
GitHub Actions
Inactive
schickling-assistant
had a problem deploying
to
evidence-signing
November 11, 2026 01:12 — with
GitHub Actions
Failure
schickling-assistant
had a problem deploying
to
evidence-signing
November 11, 2026 01:12 — with
GitHub Actions
Failure
schickling-assistant
temporarily deployed
to
evidence-signing
November 11, 2026 01:12 — with
GitHub Actions
Inactive
schickling-assistant
deployed
to
evidence-signing
November 11, 2026 01:22 — with
GitHub Actions
Active
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
GitHub observers used a global event operation key (
github-event:SUBJECT) with an observation-specific payload (observer,at,detail, andhead_sha). Two observers—or two pollers of the same observer—could therefore create the same operation with different request digests, producing operation conflicts.Goal
Preserve observation provenance while keeping one logical event per global subject and unchanged downstream delivery identities.
Decisions
github-event-observation:v1:DIGESTfrom the event subject and the complete recursively canonicalized fields map, using thegithub-event-observation.v1hash domain. Exact retries share a key; distinct observations do not.claims_subject_kind_accepted_indexon(subject, kind, length(accepted_at_unix_ms), accepted_at_unix_ms): equality on subject/kind restricts candidates to one event, with canonical ordering resolving the winner; no new index is added. No EXPLAIN plan is claimed here.Verification
scripts/check-public-repo: passed.scripts/check-sqlite-large-values: passed (4,310 inventoried sites; not a size proof).fbf5c6d79024fdbd7bae01e285f7344e3ac8437e; no hosted result is claimed yet.gpt-6.1-sol. Independent review: GPTReviewGhKey, GO at this head, no findings. Fractal Product Lead's review: Claude family, GO at this head.Complexity
Eight files; 220 insertions and nine deletions. No dependencies, schema migration, generic hash changes, or history rewrite. Existing plugin documentation, SQLite reader inventory, and a release note are updated.
Concerns
A canonical-earlier observation that arrives late can lower the selected idle queue-exit timestamp. Later duplicate observations cannot advance it or wake the holder again. Rolling back old producers restores their global-key collision risk.
Friction & bottlenecks
Local Rust execution was intentionally deferred; hosted CI verifies the exact head.
Follow-ups
Landing order: #6334 → #6335 → #6330. This PR lands after the narrow consumer PR (#6334). It does not repair historical operation conflicts, nor prevent conflicts between two unmodified old producers.
References
Producer-side work for schickling/dotfiles#9101. Design:
docs/st3/plugins.md; storage review:docs/st3/large-values.md; release note:release-notes/github-event-observation-keys.json.Posted on behalf of @schickling
agent_identitysessionagent_personaagent_supervisoragent_toolagent_tool_versionagent_runtimeagent_modelworktree