Skip to content

Improve simulator limit errors and fix telemetr#475

Open
ejacquier wants to merge 2 commits into
mainfrom
limit-error-improvements
Open

Improve simulator limit errors and fix telemetr#475
ejacquier wants to merge 2 commits into
mainfrom
limit-error-improvements

Conversation

@ejacquier

Copy link
Copy Markdown
Contributor

Summary

Improves simulator limit error handling to be more actionable and ensures CLI telemetry captures all simulation failures.

Changes

  • New LimitExceededError type (limit_errors.go): Introduces a typed error for simulation limit violations, allowing callers to distinguish limit-exceeded failures via
    errors.As() without string matching.
  • Enhanced limit error messages: All limit-exceeded errors now include:
    • Clear indication of actual vs. limit values
    • Production context (whether the limit mirrors a production constraint)
    • Actionable remediation hints (cre workflow limits export or --limits=none)
  • Fixed telemetry bypass: Replaced os.Exit(1) in simulation hooks with proper error returns so the CLI telemetry system captures all failures and propagates
    ExecutionResult_Error as non-zero exit codes.
  • Improved test coverage: Added comprehensive tests for limit error generation and simulation error handling paths.

Why this matters

  • Better UX: Users get clear, actionable guidance when hitting limits instead of cryptic errors
  • Observability: All simulation failures now properly reported through CLI telemetry

Make all limit-exceeded errors actionable (production context +
remediation hints), replace os.Exit(1) in simulation hooks with
error returns so CLI telemetry captures all failures, and propagate
ExecutionResult_Error as a non-zero exit.
@ejacquier ejacquier requested a review from a team as a code owner June 8, 2026 20:54
@github-actions

github-actions Bot commented Jun 8, 2026

Copy link
Copy Markdown

⚠️ Abigen Fork Check - Update Available

The forked abigen package is outdated and may be missing important updates.

Version Value
Current Fork ``
Latest Upstream v1.17.3

Action Required

  1. Review abigen changes in upstream (only the accounts/abi/bind directory matters)
  2. Compare with our fork in cmd/generate-bindings/bindings/abigen/
  3. If relevant changes exist, sync them and update FORK_METADATA.md
  4. If no abigen changes, just update the version in FORK_METADATA.md to v1.17.3

⚠️ Potential Security-Related Commits Detected

  • p2p/nat: bump pion/stun to v3 to pull in fixed pion/dtls (#34980) (link)

Files to Review

  • cmd/generate-bindings/bindings/abigen/bind.go
  • cmd/generate-bindings/bindings/abigen/bindv2.go
  • cmd/generate-bindings/bindings/abigen/template.go

⚠️ Note to PR author: This is not something you need to fix. The Platform Expansion team is responsible for maintaining the abigen fork.

cc @smartcontractkit/bix-framework

@github-actions

github-actions Bot commented Jun 8, 2026

Copy link
Copy Markdown

👋 ejacquier, thanks for creating this pull request!

To help reviewers, please consider creating future PRs as drafts first. This allows you to self-review and make any final changes before notifying the team.

Once you're ready, you can mark it as "Ready for review" to request feedback. Thanks!

@ejacquier ejacquier requested a review from tarcisiozf June 8, 2026 20:54
@github-actions

github-actions Bot commented Jun 8, 2026

Copy link
Copy Markdown

⚠️ Abigen Fork Check - Update Available

The forked abigen package is outdated and may be missing important updates.

Version Value
Current Fork ``
Latest Upstream v1.17.3

Action Required

  1. Review abigen changes in upstream (only the accounts/abi/bind directory matters)
  2. Compare with our fork in cmd/generate-bindings/bindings/abigen/
  3. If relevant changes exist, sync them and update FORK_METADATA.md
  4. If no abigen changes, just update the version in FORK_METADATA.md to v1.17.3

⚠️ Potential Security-Related Commits Detected

  • p2p/nat: bump pion/stun to v3 to pull in fixed pion/dtls (#34980) (link)

Files to Review

  • cmd/generate-bindings/bindings/abigen/bind.go
  • cmd/generate-bindings/bindings/abigen/bindv2.go
  • cmd/generate-bindings/bindings/abigen/template.go

⚠️ Note to PR author: This is not something you need to fix. The Platform Expansion team is responsible for maintaining the abigen fork.

cc @smartcontractkit/bix-framework

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.

1 participant