Skip to content

docs: document initializerless accounts - #24512

Open
AztecBot wants to merge 1 commit into
nextfrom
cb/docs-initializerless-accounts
Open

docs: document initializerless accounts#24512
AztecBot wants to merge 1 commit into
nextfrom
cb/docs-initializerless-accounts

Conversation

@AztecBot

@AztecBot AztecBot commented Jul 3, 2026

Copy link
Copy Markdown
Collaborator

Initializerless accounts shipped with the v5 line but were never actually documented: the only coverage was a migration-notes entry, an external link on the aztec-nr immutables page, and rc.2 tutorial snippets that call createSchnorrInitializerlessAccount without explaining it. The main "Creating Accounts" guide still teaches only the paid deploy-tx flow.

What this adds

New concept page: foundational-topics/accounts/deployment.md ("Account Deployment")

  • The standard initialize-and-deploy flow vs the initializerless flow
  • How the mechanism works: signing key committed into the address via immutables_hash, utility constructor materializing the key in the PXE, entrypoint proving the local key matches the address commitment
  • Trade-offs: no deploy cost/delay; signing key fixed forever; per-PXE local setup still needed; getDeployMethod() throws
  • Pointers to the Aztec.js API, aztec-wallet create-account -t schnorr_initializerless, and the aztec-nr immutables pattern

How-to: new "Create an initializerless account" section in aztec-js/how_to_create_account.md, placed before the deploy section, with the createSchnorrInitializerlessAccount snippet and the key caveats. The deploy section intro now clarifies it applies to createSchnorrAccount accounts.

Cross-links from fees.md (payment methods), wallets.md (account setup), contract_creation.md (immutables_hash field), and aztec-nr/framework-description/immutables.md.

All changes are mirrored into developer_versioned_docs/version-v5.0.0-rc.2/ so the live testnet docs pick them up immediately (that snapshot is what testnet users read today).

Why the snippet is a fenced code block, not #include_code

The docs TS examples type-check against this branch's yarn-project, and createSchnorrInitializerlessAccount only exists on the v5 line (introduced in #23962), not on next. An #include_code example in docs/examples/ts/ would therefore fail examples/bootstrap.sh validation on this branch. The snippet matches the verified v5.0.0-rc.2 API; it should be converted to an #include_code example once the v5 line lands in next.

Verification

  • yarn spellcheck: clean (497 files, 0 issues; initializerless is already in docs-words.txt)
  • yarn build: full site build succeeds; the new page renders in both the dev and testnet (v5.0.0-rc.2) doc instances and all new internal links resolve (remaining broken-anchor warnings are pre-existing in the CLI reference)
  • Migration notes and the auto-generated CLI reference were deliberately left untouched (published migration entries are immutable; the CLI reference is generated)

Created by claudebox · group: slackbot

@AztecBot AztecBot added ci-draft Run CI on draft PRs. ci-no-fail-fast Sets NO_FAIL_FAST in the CI so the run is not aborted on the first failure claudebox Owned by claudebox. it can push to this PR. labels Jul 3, 2026
@alejoamiras
alejoamiras marked this pull request as ready for review July 3, 2026 19:11
@alejoamiras
alejoamiras requested review from ciaranightingale and critesjosh and removed request for ciaranightingale July 3, 2026 19:11
@AztecBot
AztecBot force-pushed the cb/docs-initializerless-accounts branch from 58bc1e9 to 35267ac Compare July 7, 2026 21:52
@AztecBot
AztecBot enabled auto-merge July 7, 2026 21:52
Initializerless accounts shipped with the v5 line but were never actually documented: the only coverage was a migration-notes entry, an external link on the aztec-nr immutables page, and rc.2 tutorial snippets that call `createSchnorrInitializerlessAccount` without explaining it. The main "Creating Accounts" guide still teaches only the paid deploy-tx flow.

## What this adds

**New concept page: `foundational-topics/accounts/deployment.md`** ("Account Deployment")
- The standard initialize-and-deploy flow vs the initializerless flow
- How the mechanism works: signing key committed into the address via `immutables_hash`, utility `constructor` materializing the key in the PXE, entrypoint proving the local key matches the address commitment
- Trade-offs: no deploy cost/delay; signing key fixed forever; per-PXE local setup still needed; `getDeployMethod()` throws
- Pointers to the Aztec.js API, `aztec-wallet create-account -t schnorr_initializerless`, and the aztec-nr immutables pattern

**How-to: new "Create an initializerless account" section in `aztec-js/how_to_create_account.md`**, placed before the deploy section, with the `createSchnorrInitializerlessAccount` snippet and the key caveats. The deploy section intro now clarifies it applies to `createSchnorrAccount` accounts.

**Cross-links** from `fees.md` (payment methods), `wallets.md` (account setup), `contract_creation.md` (`immutables_hash` field), and `aztec-nr/framework-description/immutables.md`.

All changes are mirrored into `developer_versioned_docs/version-v5.0.0-rc.2/` so the live testnet docs pick them up immediately (that snapshot is what testnet users read today).

## Why the snippet is a fenced code block, not `#include_code`

The docs TS examples type-check against this branch's `yarn-project`, and `createSchnorrInitializerlessAccount` only exists on the v5 line (introduced in #23962), not on `next`. An `#include_code` example in `docs/examples/ts/` would therefore fail `examples/bootstrap.sh` validation on this branch. The snippet matches the verified v5.0.0-rc.2 API; it should be converted to an `#include_code` example once the v5 line lands in `next`.

## Verification

- `yarn spellcheck`: clean (497 files, 0 issues; `initializerless` is already in `docs-words.txt`)
- `yarn build`: full site build succeeds; the new page renders in both the dev and testnet (v5.0.0-rc.2) doc instances and all new internal links resolve (remaining broken-anchor warnings are pre-existing in the CLI reference)
- Migration notes and the auto-generated CLI reference were deliberately left untouched (published migration entries are immutable; the CLI reference is generated)

---
*Created by [claudebox](https://claudebox.work/v2/sessions/bd9956e6be6894f6) · group: `slackbot`*
@AztecBot
AztecBot force-pushed the cb/docs-initializerless-accounts branch from 35267ac to 47a8119 Compare July 7, 2026 21:54
AztecBot added a commit that referenced this pull request Jul 8, 2026
Backport of #24512 ("docs: document initializerless accounts") into `v5-next`, requested by Alejo in Slack.

## What this adds (same as the original PR)

- **New concept page** `foundational-topics/accounts/deployment.md` ("Account Deployment"): the standard initialize-and-deploy flow vs the initializerless flow, how the signing key is committed into the address via `immutables_hash`, and the trade-offs (no deploy cost/delay; signing key fixed forever; per-PXE local setup; `getDeployMethod()` throws).
- **New "Create an initializerless account" section** in `aztec-js/how_to_create_account.md` with the `createSchnorrInitializerlessAccount` snippet and caveats.
- **Cross-links** from `fees.md`, `wallets.md`, `contract_creation.md`, and `aztec-nr/framework-description/immutables.md`.

## How the backport differs from the original

- The original PR mirrored all changes into `developer_versioned_docs/version-v5.0.0-rc.2/`. That snapshot does not exist on `v5-next` (the only snapshot here is `version-v4.3.0`, which documents the v4 line and must not describe a v5-only feature), so this backport touches **only the current docs** under `docs/docs-developers/`. Git's directory-rename detection tried to remap the mirrored copies into the v4.3.0 snapshot during the cherry-pick; those were dropped deliberately.
- Everything else is the original commit cherry-picked verbatim; the only diff-vs-original differences are context lines where `v5-next` prose already diverged from `next`.

## Notes

- Unlike `next`, `createSchnorrInitializerlessAccount` **does** exist in this branch's `yarn-project` (verified), so the fenced snippet could be converted to an `#include_code` example here as a follow-up. Kept as a fenced block for a faithful backport.
- Verified all new internal links resolve to files present on `v5-next`, and `initializerless` is already in `docs-words.txt` on this branch.

Refs #24512.

---
*Created by [claudebox](https://claudebox.work/v2/sessions/045227c21dcc966b) · group: `slackbot`*
AztecBot added a commit that referenced this pull request Jul 8, 2026
Backport of #24512 ("docs: document initializerless accounts") into `v5-next`, requested by Alejo in Slack.

## What this adds (same as the original PR)

- **New concept page** `foundational-topics/accounts/deployment.md` ("Account Deployment"): the standard initialize-and-deploy flow vs the initializerless flow, how the signing key is committed into the address via `immutables_hash`, and the trade-offs (no deploy cost/delay; signing key fixed forever; per-PXE local setup; `getDeployMethod()` throws).
- **New "Create an initializerless account" section** in `aztec-js/how_to_create_account.md` with the `createSchnorrInitializerlessAccount` snippet and caveats.
- **Cross-links** from `fees.md`, `wallets.md`, `contract_creation.md`, and `aztec-nr/framework-description/immutables.md`.

## How the backport differs from the original

- The original PR mirrored all changes into `developer_versioned_docs/version-v5.0.0-rc.2/`. That snapshot does not exist on `v5-next` (the only snapshot here is `version-v4.3.0`, which documents the v4 line and must not describe a v5-only feature), so this backport touches **only the current docs** under `docs/docs-developers/`. Git's directory-rename detection tried to remap the mirrored copies into the v4.3.0 snapshot during the cherry-pick; those were dropped deliberately.
- Everything else is the original commit cherry-picked verbatim; the only diff-vs-original differences are context lines where `v5-next` prose already diverged from `next`.

## Notes

- Unlike `next`, `createSchnorrInitializerlessAccount` **does** exist in this branch's `yarn-project` (verified), so the fenced snippet could be converted to an `#include_code` example here as a follow-up. Kept as a fenced block for a faithful backport.
- Verified all new internal links resolve to files present on `v5-next`, and `initializerless` is already in `docs-words.txt` on this branch.

Refs #24512.

---
*Created by [claudebox](https://claudebox.work/v2/sessions/045227c21dcc966b) · group: `slackbot`*
PhilWindle pushed a commit that referenced this pull request Jul 21, 2026
Backport of #24512 ("docs: document initializerless accounts") into `v5-next`, requested by Alejo in Slack.

## What this adds (same as the original PR)

- **New concept page** `foundational-topics/accounts/deployment.md` ("Account Deployment"): the standard initialize-and-deploy flow vs the initializerless flow, how the signing key is committed into the address via `immutables_hash`, and the trade-offs (no deploy cost/delay; signing key fixed forever; per-PXE local setup; `getDeployMethod()` throws).
- **New "Create an initializerless account" section** in `aztec-js/how_to_create_account.md` with the `createSchnorrInitializerlessAccount` snippet and caveats.
- **Cross-links** from `fees.md`, `wallets.md`, `contract_creation.md`, and `aztec-nr/framework-description/immutables.md`.

## How the backport differs from the original

- The original PR mirrored all changes into `developer_versioned_docs/version-v5.0.0-rc.2/`. That snapshot does not exist on `v5-next` (the only snapshot here is `version-v4.3.0`, which documents the v4 line and must not describe a v5-only feature), so this backport touches **only the current docs** under `docs/docs-developers/`. Git's directory-rename detection tried to remap the mirrored copies into the v4.3.0 snapshot during the cherry-pick; those were dropped deliberately.
- Everything else is the original commit cherry-picked verbatim; the only diff-vs-original differences are context lines where `v5-next` prose already diverged from `next`.

## Notes

- Unlike `next`, `createSchnorrInitializerlessAccount` **does** exist in this branch's `yarn-project` (verified), so the fenced snippet could be converted to an `#include_code` example here as a follow-up. Kept as a fenced block for a faithful backport.
- Verified all new internal links resolve to files present on `v5-next`, and `initializerless` is already in `docs-words.txt` on this branch.

Refs #24512.

---
*Created by [claudebox](https://claudebox.work/v2/sessions/045227c21dcc966b) · group: `slackbot`*

(cherry picked from commit 7534604)
PhilWindle pushed a commit that referenced this pull request Jul 21, 2026
Backport of #24512 ("docs: document initializerless accounts") into `v5-next`, requested by Alejo in Slack.

## What this adds (same as the original PR)

- **New concept page** `foundational-topics/accounts/deployment.md` ("Account Deployment"): the standard initialize-and-deploy flow vs the initializerless flow, how the signing key is committed into the address via `immutables_hash`, and the trade-offs (no deploy cost/delay; signing key fixed forever; per-PXE local setup; `getDeployMethod()` throws).
- **New "Create an initializerless account" section** in `aztec-js/how_to_create_account.md` with the `createSchnorrInitializerlessAccount` snippet and caveats.
- **Cross-links** from `fees.md`, `wallets.md`, `contract_creation.md`, and `aztec-nr/framework-description/immutables.md`.

## How the backport differs from the original

- The original PR mirrored all changes into `developer_versioned_docs/version-v5.0.0-rc.2/`. That snapshot does not exist on `v5-next` (the only snapshot here is `version-v4.3.0`, which documents the v4 line and must not describe a v5-only feature), so this backport touches **only the current docs** under `docs/docs-developers/`. Git's directory-rename detection tried to remap the mirrored copies into the v4.3.0 snapshot during the cherry-pick; those were dropped deliberately.
- Everything else is the original commit cherry-picked verbatim; the only diff-vs-original differences are context lines where `v5-next` prose already diverged from `next`.

## Notes

- Unlike `next`, `createSchnorrInitializerlessAccount` **does** exist in this branch's `yarn-project` (verified), so the fenced snippet could be converted to an `#include_code` example here as a follow-up. Kept as a fenced block for a faithful backport.
- Verified all new internal links resolve to files present on `v5-next`, and `initializerless` is already in `docs-words.txt` on this branch.

Refs #24512.

---
*Created by [claudebox](https://claudebox.work/v2/sessions/045227c21dcc966b) · group: `slackbot`*

(cherry picked from commit 7534604)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci-draft Run CI on draft PRs. ci-no-fail-fast Sets NO_FAIL_FAST in the CI so the run is not aborted on the first failure claudebox Owned by claudebox. it can push to this PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants