Skip to content

Feat/issues 1148 1149 1150 1151 - #1275

Merged
fejilaup-cloud merged 5 commits into
AtomicIP:mainfrom
aladi11isah:feat/issues-1148-1149-1150-1151
Oct 21, 2026
Merged

fejilaup-cloud merged 5 commits into
AtomicIP:mainfrom
aladi11isah:feat/issues-1148-1149-1150-1151

Conversation

@aladi11isah

Copy link
Copy Markdown
Contributor

ip_registry: notary and access-grant hardening

Closes #1148
Closes #1149
Closes #1150
Closes #1151

Changes

Notes

  • Notaries must re-sign under the v1 message format; old signatures no longer verify.
  • IpAccessGrant has a new expires_at field, which changes its stored shape and client type.
  • grant_ip_access keeps its signature.
  • The crate does not build on main yet (pre-existing errors), so these changes are not compiled or tested in CI here.
  • Tests: contracts/ip_registry/src/notary_access_tests.rs. Changelog entries added.

…ite (AtomicIP#1148)

notarize_ip_timestamp now refuses an IP that already has a notary
signature, returning the new AlreadyNotarized error (code 60). The
first signature is kept and no overwrite can occur.

Closes AtomicIP#1148
The notary signed only ip_id || timestamp, so a signature issued for one
deployment sharing the notary key could be replayed on another.

notary_signing_message now prefixes a version byte (1), a fixed domain tag,
the network id and the contract address. Legacy untagged signatures no
longer verify. The format is documented in docs/notary-signature-format.md.

Closes AtomicIP#1149
…vels (AtomicIP#1150)

grant_ip_access reported an authorization failure (Unauthorized) when the
access level was outside 1..=3. It now returns the new InvalidAccessLevel
error (code 61). revoke_ip_access takes no access level, so it is unchanged.

Closes AtomicIP#1150
…tomicIP#1151)

IpAccessGrant gains an optional expires_at. grant_ip_access_with_expiry
accepts it (an expiry not in the future is rejected with InvalidExpiry),
and check_ip_access treats an expired grant as absent. grant_ip_access
keeps its signature and stores a non-expiring grant.

The owner can no longer grant access to themselves; the call returns the
new SelfGrantNotAllowed error (code 62).

Closes AtomicIP#1151
@drips-wave

drips-wave Bot commented Oct 16, 2026

Copy link
Copy Markdown

@aladi11isah 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! 🚀

Learn more about application limits

@fejilaup-cloud
fejilaup-cloud merged commit 0b8c8ef into AtomicIP:main Oct 21, 2026
0 of 2 checks passed
gabrielujelistic-collab pushed a commit to Stellar-drive/stellar-drive-atomic-ip that referenced this pull request Nov 9, 2026
…49-1150-1151

Feat/issues 1148 1149 1150 1151
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

2 participants