add_cell_id_alias
Adds an extra call identifier (alias) to "rename" a block's identifier WITHOUT DESTROYING ANYTHING. The canonical identifier in the database does not change — so no reference (dependencies, tasks, documents, comments, versions) needs to move, and ANY identifier the block has ever had keeps working forever in all tools. The new identifier is reserved FOR LIFE for this block in the project: it can never designate another block or serve as the identifier of a new block. ⚠️ What this does NOT do: DERIVED identifiers (for example a struct-- dependency) keep citing the canonical identifier — this is expected and is never a defect. Replaying the call with the same pair converges (no duplicate). Renaming an identifier with delete_cell + add_cell destroys the links (tasks, documents, sub-blocks): only the alias keeps them.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| newId | Yes | The new call identifier (kebab-case, like any block id). It becomes an ALIAS resolved by all tools, and it is reserved FOR LIFE for this block in the project — it can never be reused for another block, even after deletion. | |
| cellId | Yes | The block to "rename" — its CURRENT (canonical) identifier or any of its aliases already added: both are resolved. | |
| expectedProjectId | No | UUID of the project targeted by THIS call. ACTUALLY targets this project instead of the session project. Refused without changing anything if access is not granted. |