Feature/issue 850 telemetry package extracted#1033
Open
ayomideadeniran wants to merge 12 commits intodotandev:mainfrom
Open
Feature/issue 850 telemetry package extracted#1033ayomideadeniran wants to merge 12 commits intodotandev:mainfrom
ayomideadeniran wants to merge 12 commits intodotandev:mainfrom
Conversation
added 6 commits
March 25, 2026 19:42
- Add CircuitBreakerThreshold and CircuitBreakerTimeout fields to Config struct - Update TOML parser to read circuit_breaker_threshold and circuit_breaker_timeout - Add environment variable support: ERST_CIRCUIT_BREAKER_THRESHOLD and ERST_CIRCUIT_BREAKER_TIMEOUT - Add WithCircuitBreaker option to RPC client builder - Replace hardcoded circuit breaker values (5 failures, 60s) with configurable values - Provide sensible defaults matching current production behavior - Update erst.example.toml with circuit breaker documentation - Add comprehensive tests for circuit breaker configuration Fixes dotandev#849
- Create new package internal/telemetry/methods for method telemetry interfaces - Move MethodTelemetry and MethodTimer interfaces from internal/rpc to new package - Export NoopMethodTimer and DefaultMethodTelemetry for external use - Update all imports in internal/rpc to use the new package location - Maintain backward compatibility with existing telemetry consumers - Ensure seamless transition for all method telemetry implementations Fixes dotandev#850
- MethodTelemetry interface now lives in internal/telemetry/methods/package - Decoupled from RPC logic for better reusability - Used by RPC client via methods.MethodTelemetry interface - Provides StartMethodTimer and MethodTimer hooks for SDK method execution timings Closes dotandev#850
Issue dotandev#987: dotandev#987 - Add GetSnapshotAtInstruction() method with binary search - Implement snapshotIndex for fast instruction-based lookup - Optimize ReconstructStateAt() to use O(log N) search instead of O(N) - Achieve instantaneous navigation to specific steps Closes dotandev#987
Issue dotandev#992: dotandev#992 - Add CPU/memory usage metrics to ExecutionState struct - Add resource metrics to StateSnapshot for time-travel debugging - Track cpu_instructions, memory_bytes, limits, and usage percentages - Export all resource metrics in JSON snapshot format - Enables developers to see gas/budget consumption per step Closes dotandev#992
Issue dotandev#849: dotandev#849 - Expose circuit_breaker_threshold and circuit_breaker_timeout in erst.toml - Add ERST_CIRCUIT_BREAKER_THRESHOLD and ERST_CIRCUIT_BREAKER_TIMEOUT env vars - Inject circuit breaker config into RPC client initialization - Update example TOML with documented configuration Closes dotandev#849
|
@ayomideadeniran Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits. You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀 |
Issue dotandev#850: dotandev#850 - MethodTelemetry interface lives in internal/telemetry/methods/package - Decoupled from RPC logic for better reusability - Used by RPC client via methods.MethodTelemetry interface - Provides StartMethodTimer and MethodTimer hooks Closes dotandev#850
…issue-850-telemetry-package-extracted
…sue-850-telemetry-package-extracted
…e-850-telemetry-package-extracted
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.
Closes #850
PULL REQUEST TEMPLATE
================================================================================
TITLE:
feat(audit): Add AWS KMS Direct Support for Signing - Issue
close #849
DESCRIPTION:
Overview
Implements native AWS KMS direct support for audit trail signing, replacing pure PKCS#11 mapping with direct KMS API integration.
Changes
Core Implementation
KmsEd25519Signer: New plugin class implementing
AuditSignerinterfaceFactory Integration: Extended
createAuditSigner()to support 'kms' providerDependencies: Added
@aws-sdk/client-kmsv3.609.0close [TIME-TRAVEL] [FEAT] Implement 'get_snapshot_at_instruction' in Rust #987
Testing
Documentation
Security Properties
Configuration
Required environment variables:
ERST_KMS_KEY_ID: KMS key ARN or IDERST_KMS_PUBLIC_KEY_PEM: Ed25519 public key in PEM formatERST_KMS_REGION: AWS region (optional, defaults to us-east-1)IAM Permissions
Minimal policy required:
{ "Effect": "Allow", "Action": ["kms:Sign"], "Resource": "arn:aws:kms:*:ACCOUNT-ID:key/KEY-ID", "Condition": { "StringEquals": { "kms:SigningAlgorithm": "Ed25519" } } }close #992
Verification
Related Issues
Closes
Type of Change
Checklist
================================================================================