Skip to content

feat: ICertifiableV1 interface for OffchainAssetReceiptVault.isCertificationExpired()#295

Merged
thedavidmeister merged 1 commit intomainfrom
feat/issue-294-certifiable-interface
May 1, 2026
Merged

feat: ICertifiableV1 interface for OffchainAssetReceiptVault.isCertificationExpired()#295
thedavidmeister merged 1 commit intomainfrom
feat/issue-294-certifiable-interface

Conversation

@thedavidmeister
Copy link
Copy Markdown
Collaborator

@thedavidmeister thedavidmeister commented May 1, 2026

Summary

Adds src/interface/ICertifiableV1.sol — a minimal read-only interface exposing the isCertificationExpired() getter on contracts gated by a certifier-set expiry timestamp. OffchainAssetReceiptVault already had the getter; it now inherits the interface so downstream consumers can read certification state through a typed import without depending on the concrete vault contract.

Mirrors the IAuthorizableV1 pattern from #293.

Closes #294.

Test plan

  • forge build clean
  • CI green

Summary by CodeRabbit

  • Refactor
    • Updated vault contract architecture to properly implement certification interface standards, enhancing code organization and improving contract compliance with established interface definitions.

…icationExpired()

Adds a read-only interface exposing the `isCertificationExpired()`
getter on contracts gated by a certifier-set expiry timestamp.
`OffchainAssetReceiptVault` already had the getter; now inherits the
interface so downstream consumers can read certification state through
a typed import without pulling in the concrete contract.

Mirrors the IAuthorizableV1 pattern from #293.

Closes #294.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 1, 2026

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

Run ID: 160c3b1f-fac1-412c-b4ca-317e279224ad

📥 Commits

Reviewing files that changed from the base of the PR and between f52c8b4 and ed8f200.

📒 Files selected for processing (2)
  • src/concrete/vault/OffchainAssetReceiptVault.sol
  • src/interface/ICertifiableV1.sol

Walkthrough

A new interface ICertifiableV1 is created to expose the isCertificationExpired() method. The OffchainAssetReceiptVault contract is updated to implement this interface by adding it to the inheritance list and marking the existing method with the override keyword.

Changes

Cohort / File(s) Summary
New Certifiable Interface
src/interface/ICertifiableV1.sol
Introduces new interface defining isCertificationExpired() external view method for checking certification expiry status.
OffchainAssetReceiptVault Implementation
src/concrete/vault/OffchainAssetReceiptVault.sol
Adds ICertifiableV1 to contract inheritance and marks existing isCertificationExpired() function as override.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~8 minutes

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely summarizes the main change: adding ICertifiableV1 interface for OffchainAssetReceiptVault.isCertificationExpired().
Linked Issues check ✅ Passed The PR fully implements requirements from issue #294: adds ICertifiableV1 interface with isCertificationExpired() getter and updates OffchainAssetReceiptVault to inherit it.
Out of Scope Changes check ✅ Passed All changes are in scope: new ICertifiableV1 interface and OffchainAssetReceiptVault modifications directly address issue #294 with no unrelated alterations.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/issue-294-certifiable-interface

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
Review rate limit: 0/1 reviews remaining, refill in 60 minutes.

Comment @coderabbitai help to get the list of available commands and usage tips.

@thedavidmeister thedavidmeister merged commit a522bc2 into main May 1, 2026
4 checks passed
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.

Expose OffchainAssetReceiptVault.isCertificationExpired() through an interface

1 participant