docs(active-evm): add README and task-origin signing guide - #776
Conversation
ce69c3a to
5367a22
Compare
3cddd0b to
ff4f9b4
Compare
5367a22 to
035093b
Compare
ff4f9b4 to
92134fa
Compare
🟡 Heimdall Review Status
|
92134fa to
632ea21
Compare
632ea21 to
d687b3c
Compare
Approved review 4813619797 from jackchuma is now dismissed due to new commit. Re-request for approval.
Documents the shared active/evm layout (script/common + per-task config), the shared-project deps invocation, and active/evm task-origin signature handling in the root README, alongside the existing legacy-task docs. Also updates the CI section to describe the validate-common-scripts workflow. No separate active/evm README/TASK_ORIGIN files: the root README is the single source of truth for structure and signing, matching how tasks (which carry only a per-task README + FACILITATOR) are documented. Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com>
d687b3c to
b6be58b
Compare
|
|
||
| All three targets depend on `deps-signer-tool`, which checks out and installs the [task-signing-tool](https://github.com/base/task-signing-tool) automatically. | ||
|
|
||
| For `active/evm` tasks, the task Makefile overrides `TASK_ORIGIN_DIR` and `SIGNATURE_DIR` so signatures are written under `active/evm/tasks/<task-id>/config/<network>/signatures/`. The signer tool excludes that nested `signatures/` directory from the task-origin tarball, so generating signatures does not change the signed payload. A task may opt out of task-origin validation entirely by setting `skipTaskOriginValidation: true` at the root of each validation file (e.g. non-production networks such as zeronet). |
There was a problem hiding this comment.
The pinned signer tool expects task-origin bundles at tasks/<task-id>/signatures/<network>/ and recursively includes everything under config/<network>, so this nested path is neither excluded nor verifiable; please document and use the external signature path.
| │ └── <category>/ # bridge, funding, gas, ownership, safe, superchain, verifier-update | ||
| └── tasks/ | ||
| └── <YYYY-MM-DD-task-name>/ | ||
| ├── Makefile # selects the task/network, wires a script/common script |
There was a problem hiding this comment.
The layout puts the Makefile under each task, but commands run from active/evm and stacked PR #755 adds active/evm/Makefile; please align the documented location and invocation with the intended implementation.
| ## Directory structure | ||
|
|
||
| Each task will have a directory structure similar to the following: | ||
| Active EVM tasks live under `active/evm/`, which is a single shared Foundry |
There was a problem hiding this comment.
The PR description says this documentation is added in active/evm/README.md and active/evm/TASK_ORIGIN.md, but the diff only changes the root README.md; please update the description to match.
What changed?
Adds generic documentation for the shared
active/evmmodel:active/evm/README.md: shared-project layout, how tasks run against the shared Foundry setup, pointer toscript/common.active/evm/TASK_ORIGIN.md: task-origin signing flow (sign-as-task-creator/-base-facilitator/-sc-facilitator), including theskipTaskOriginValidationopt-out.Both written generically (placeholder
<YYYY-MM-DD-task-name>/<network>, no task-specific references). Stacked on #775 (CI).Why?
Documents the new structure so contributors can add tasks and sign without reverse-engineering the Makefiles.
How to test?
Docs only — no build impact. Review renders on the PR; verify layout matches the actual
active/evmtree and the make targets referenced exist in the root Makefile (sign-as-*,gen-validation-*).