Skip to content

feat: Verify Signature#27

Merged
goloroden merged 9 commits intomainfrom
verify-signature
Mar 24, 2026
Merged

feat: Verify Signature#27
goloroden merged 9 commits intomainfrom
verify-signature

Conversation

@gossi
Copy link
Copy Markdown
Contributor

@gossi gossi commented Mar 23, 2026

Sample prompt:


The feature to implement is Event.verify_signature/2. The code has @TODO comments with places where the implementation shall happen and instructions for that particalur locations. Since this is an elixir adaptation that happens to already exist in other programming languages, I linked reference implementations in javascript and rust.

There are two test cases prepared with @TODO fix this test to enable TDD.

Ideally use the erlang native crypto libraries for implementation. If the jose library is useful, make use of that (otherwise we are happy to remove that dependency). You find # Failure attempts comments code, that doesn't work (yet?). You may find helpful code in there (that wasn't properly stitched together), you are free to discard it.


gossi and others added 3 commits March 16, 2026 18:24
Implement Ed25519 signature verification following the JS and Rust SDK
reference implementations. Fix Container setup to generate PKCS8 PEM
via JOSE, copy it into the container, and pass the signing key file
path. Add tampered signature test case and fix existing test issues.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@goloroden goloroden changed the title Verify Signature feat: Verify Signature Mar 23, 2026
goloroden and others added 5 commits March 24, 2026 00:42
The /etc/esdb directory does not exist in the container image.
Use /tmp/signing-key.pem instead, matching the Rust SDK approach.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add Ping and VerifyAPIToken sections
- Fill in Verify Hash and Verify Signature sections
- Add Listing Event Types section
- Add Testcontainer signing key and manual client docs
- Fix error patterns from 3-tuple to 2-tuple
- Fix typos and syntax errors in code examples
- Replace "vector" terminology with "list"
- Add missing notes (EventQL query, recursive reading)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Rename app from :EventSourcingDB to :eventsourcingdb (Elixir convention)
- Rename IsEventQLTrue to IsEventQLQueryTrue (matching Go SDK)
- Add observe_events tests for lower_bound and from_latest_event
- Add @doc for with_signing_key/1 and get_verification_key/1
- Fix typo in TestContainer moduledoc

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
The release pipeline now also updates the dependency version
in README.md alongside mix.exs.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@goloroden goloroden marked this pull request as ready for review March 24, 2026 06:29
@goloroden goloroden requested a review from a team as a code owner March 24, 2026 06:29
@goloroden goloroden self-assigned this Mar 24, 2026
@goloroden goloroden enabled auto-merge (squash) March 24, 2026 06:31
@goloroden goloroden merged commit 93aad53 into main Mar 24, 2026
2 checks passed
@goloroden goloroden deleted the verify-signature branch March 24, 2026 12:43
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.

2 participants