Skip to content

docs: name implementation in the NewClone determinant set - #244

Open
thedavidmeister wants to merge 3 commits into
mainfrom
2026-09-21-issue-135-events-note-implementation
Open

thedavidmeister wants to merge 3 commits into
mainfrom
2026-09-21-issue-135-events-note-implementation

Conversation

@thedavidmeister

Copy link
Copy Markdown
Contributor

Closes #135

The NewClone note said sender "is not part of the address derivation, but
salt and data together are the whole of it". The antecedent of "it" is the
address derivation, and salt + data are not the whole of it. The address is
keccak256(0xff ++ factory ++ effectiveOpenSalt(salt, keccak256(data)) ++ keccak256(cloneCreationCode(implementation))), so implementation — a
caller-supplied argument of cloneDeterministicOpenSalt, not a fixed property of
the factory — is a third input. salt and data are the whole of the EFFECTIVE
SALT only, which the same paragraph's neighbour at :92 already says.

The file states the correct set two hundred lines earlier (:98-99, "a pure
function of (factory, implementation, salt, data)"), so the interface
contradicted itself in the passage an indexer reads when deciding which event
fields reconstruct the address. The conclusion drawn from it held only because
NewClone happens to carry implementation as well — which the corrected
sentence now says.

factory stays implicit, matching the house phrasing on
ICloneableFactoryV3.NewClone: the emitter is the factory.

Comment-only. No source, ABI or bytecode change.

QA

🤖 Generated with Claude Code

claude and others added 3 commits September 21, 2026 11:19
The address is `keccak256(0xff ++ factory ++ effectiveOpenSalt(salt,
keccak256(data)) ++ keccak256(cloneCreationCode(implementation)))`, so `salt`
and `data` are the whole of the effective salt, not of the derivation. The
event carries `implementation` as well, which is what makes the conclusion
hold.

Closes #135

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@thedavidmeister thedavidmeister self-assigned this Sep 21, 2026
@coderabbitai

coderabbitai Bot commented Sep 21, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 41 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Advanced

Run ID: 34a640bf-41be-48ed-91b6-c11ac05ec809

📥 Commits

Reviewing files that changed from the base of the PR and between 710dff5 and ab7ad07.

📒 Files selected for processing (1)
  • src/interface/ICloneableFactoryV4.sol

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

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

This branch has not been deployed

No deployments
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.

[F31] [LOW] Open-salt Events note calls salt and data "the whole of" the address derivation, omitting implementation

2 participants