Skip to content

Add exhaustive initialization lint to MachineStepResultJson#4688

Open
js360000 wants to merge 1 commit into
OffchainLabs:masterfrom
js360000:bountybox/reputation-nitro-3121
Open

Add exhaustive initialization lint to MachineStepResultJson#4688
js360000 wants to merge 1 commit into
OffchainLabs:masterfrom
js360000:bountybox/reputation-nitro-3121

Conversation

@js360000
Copy link
Copy Markdown

Summary

Annotates `MachineStepResultJson` in `validator/server_api/json.go` with `// lint:require-exhaustive-initialization`. Single-line diff, no init-site changes needed.

Details

The struct has 4 fields (`Hash`, `Position`, `Status`, `GlobalState`) and exactly one initialization site in the repo — the adjacent `MachineStepResultToJson` helper, which already sets all four fields explicitly. Adding the annotation locks that in: any future addition of a field will trip the linter on the existing initializer rather than silently zero-valuing.

Follows the one-struct-per-PR guidance from earlier threads on #3121.

Diff

```
validator/server_api/json.go | 1 +
1 file changed, 1 insertion(+)
```

Addresses

Addresses #3121.

Annotates `MachineStepResultJson` in validator/server_api/json.go with
`// lint:require-exhaustive-initialization`. The struct has 4 fields
(Hash, Position, Status, GlobalState) and only one initialization site
in this repo (the adjacent MachineStepResultToJson helper), which
already sets all four fields. No initializer changes needed.

Adding the annotation ensures any future addition of a field to this
struct will trip the linter on the existing initializer instead of
silently zero-valuing, which is the goal stated in the issue.

Addresses OffchainLabs#3121 following the one-struct-per-PR guidance from the
maintainers in earlier threads.
@CLAassistant
Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants