Pin a project to a version of a shared code module
r3_module_pinChoose which version of a shared code module ONE project runs: version n pins it (the project keeps that version when the module changes), version null follows the latest again. moduleId names someone else's PUBLIC module (it is then the project's module of that name). The pin lives in the project's import map, not in the code: no script changes. Open editors of the project reload. A release (go-live) freezes the versions the project runs at that moment anyway. Not taken back by r3_editor_undo: pin again.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"projectId": "<projectId>",
"name": "<name>",
"version": "<version>"
},
"name": "r3_module_pin"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | Yes | The module name the project's scripts import, e.g. "ship-core". | |
| version | Yes | The version to pin, or null to follow the latest. | |
| moduleId | No | Someone else's public module (its id from r3_module_read); omit for your own. | |
| projectId | Yes | The project. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| map | Yes | ||
| answer | Yes | This answer in words: what was done, what R3 measured, decided or refused, and what to do next. The same text as the result's text block. Read it: the fields beside it are the data, this is the guidance. | |
| modules | Yes | ||
| projectId | Yes |