Conversation
|
Semgrep found 8
No Semgrep found 3
Detected non-static command inside Command. Audit the input to 'exec.Command'. If unverified user data can reach this call site, this is a code injection vulnerability. A malicious actor can inject a malicious script to execute arbitrary code. Ignore this finding from dangerous-exec-command. |
| } | ||
|
|
||
| // BlockRef is a Block Ref indepdendent of L1 or L2 | ||
| // Because L1BlockRefs are strict subsets of L2BlockRefs, BlockRef is a direct alias of L1BlockRef |
There was a problem hiding this comment.
I would suggest describing BlockRef as the "the common properties of L1 and L2 blocks", to avoid any ambiguity where we might expect it to "work" as an L2 block in all cases.
We could also consider embedding BlockRef into L2BlockRef, which could reduce duplication across a lot of the methods. But, this may result in some yak shaving (we would need to update hundreds of cases where we construct a literal L2BlockRef).
Adds an alias for
L1BlockRefcalledBlockRefand uses it throughout the Supervisor.This is because the supervisor was dealing with a mix of L1 and L2 block references. Even though logically most references are L2, we only need as much data as the L1 reference had, so they were being used interchangeably. This way everything is using the same type.