Skip to content

L1 adoptions should be performed on L1 #1128

@shawntobin

Description

@shawntobin

Currently, if an L1 ship requests an escape then it's performed on L1. However, Bridge is set to only perform the adopt transaction on L2.

While this is valid behaviour for sponsorship actions, it's undesirable since it then creates stale information for "sponsor", "escape requested", and "escape requested to" on L1.

L2 will show the proper information, but it would be better to not mix L2 transactions when there's no benefit. Bridge should perform the adopt on L1 when the ship is L1, and L2 if it's on L2.

The L2 docs even state:

But, for instance, if both ~sampel-palnet and ~dopzod are on layer 1, it is technically possible for ~sampel-palnet to escape to ~dopzod on layer 1, and then ~dopzod can accept the escape on layer 2. This will result in ~dopzod appearing as the sponsor in the Layer 2 Azimuth state (and thus be ~sampel-palnet's "true" sponsor), and the sponsor in the Layer 1 Azimuth state will remain unchanged. While it is difficult to imagine a good reason to do this, developers working with layer 2 need to keep in mind these edge cases and ought to read on.

Yet we're creating these "edge cases" with every L1 escape performed via Bridge.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions