Skip to content

document links block#464

Merged
srunquist-certora merged 3 commits intorelease/version_8.11.0from
naftali/new_links_block
Mar 23, 2026
Merged

document links block#464
srunquist-certora merged 3 commits intorelease/version_8.11.0from
naftali/new_links_block

Conversation

@naftali-g
Copy link
Copy Markdown
Contributor

@naftali-g naftali-g commented Mar 10, 2026

Naming convention:

  • PRs for features that are in design should have the "proposal" label
  • PRs for features that haven't landed yet should have the "future" label
  • PRs for upcoming releases should have the "release" label
  • PRs with new documentation for existing features should have the "existing feature" label

Before requesting review:

  • Make sure there is a ticket in the DOC board in Jira
  • Make sure CI is passing
    • Spell check failure may require adding backticks around code or updating spelling_wordlist.txt
    • See README.md for information about style and markdown syntax
    • If the CI Details link gives a 404, you need to log in to readthedocs.com
  • Add link to generated documentation here
    • you can find this by following the read the docs link from the CI check
  • Ask for help in #documentation

Jira ticket: TODO
Link to generated documentation: https://certora-certora-prover-documentation--464.com.readthedocs.build/en/464/docs/cvl/linking.html

@naftali-g naftali-g force-pushed the naftali/new_links_block branch from f47ea03 to b8746a3 Compare March 10, 2026 14:14
@naftali-g naftali-g marked this pull request as ready for review March 18, 2026 06:49
Copy link
Copy Markdown
Contributor

@johspaeth johspaeth left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should make it more explicit in options.md that linking via spec is the preferred way.

Other than that, only minor nits. Thanks a lot.

===========

The `links` block allows you to declare contract linking directly in your CVL
specification, replacing the {ref}`--link` and {ref}`--struct_link` CLI flags.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would talk about the conf file attributes rather, I doubt people use the CLI flags for linking.


The simplest form of linking maps a storage variable that holds an address to a
contract instance in the scene. This is equivalent to using the {ref}`--link`
CLI flag.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

... / conf file attribute

Comment on lines +109 to +110
This allows the Prover to explore both the case where both elements point to
the same contract and the case where they point to different contracts.
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we want to state here that this is similar to a dispatch list? Should we recommend one over the other?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that might just be more confusing...

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You might be right, let's keep it simple.

Comment on lines +1969 to +1974
```{note}
You can also declare linking inline in your spec using a {ref}`links block <linking>`,
which provides type checking, precise struct paths, and support for arrays,
mappings, and wildcards. The `links` block and `--link` flag cannot be used
together for the same contract.
```
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please state that linking in spec is the recommended approach - and move it to the top of the entry so that user directly see it.

@naftali-g naftali-g requested a review from johspaeth March 18, 2026 17:21
@yoav-el-certora
Copy link
Copy Markdown
Contributor

@naftali-g Just a reminder not to merge this PR until we release the main version.
@srunquist-certora usually take care of the Documentation merging.

@yoav-el-certora yoav-el-certora added the release documentation for an upcoming release label Mar 18, 2026
@srunquist-certora srunquist-certora changed the base branch from master to release/version_8.11.0 March 18, 2026 19:37
Co-authored-by: Shane <shane@certora.com>
@srunquist-certora srunquist-certora merged commit b4f0fca into release/version_8.11.0 Mar 23, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

release documentation for an upcoming release

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants