Implicit Messages in Block Receipts #1149
Replies: 6 comments 12 replies
-
Another benefit is that it becomes much easier to figure out which messages actually executed. Right now, you need to deduplicate all the messages from the parent tipset blocks. |
Beta Was this translation helpful? Give feedback.
-
I'd also like to take this as a chance to:
But I also don't want to add complexity for something that's mostly just a bit of a wart. I'd consider going with option one because it's simple, but 2/3 are probably too much for now. |
Beta Was this translation helpful? Give feedback.
-
Initial FIP text proposed @ #1150 |
Beta Was this translation helpful? Give feedback.
-
So that we don't forget, the last paragraph at https://spec.filecoin.io/systems/filecoin_vm/interpreter/#section-systems.filecoin_vm.interpreter.implicit-messages will need to be changed. I don't know how rigorous we were in the past in keeping the spec up-to-date. |
Beta Was this translation helpful? Give feedback.
-
Capturing notes from a 2025-06-25 discussion between @rvagg and me: we agreed that a PR against FIP-0107.md should be opened that covers:
|
Beta Was this translation helpful? Give feedback.
-
While we are at this topic, is it possible to add a receipt too for penalties (daily fault fee, termination penalty, etc) as they are incurred for better accounting visibility ? Those fees are currently charged as implicit transactions too which is a pain to extract. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Problem Statement
Currently, Filecoin's system operations (cron and reward) execute via implicit messages during tipset execution, but these operations and their events are essentially invisible in the chain. This creates significant challenges for:
Storage providers, developers, and indexers must resort to complex state diff analysis to understand what happened between epochs, making sector management unnecessarily difficult.
Proposed Solution
I'm drafting a FIP that would:
MessageReceipt
structure to include a reference to the executed messageParentMessageReceipts
arrayThis would enable proper event tracking for system operations without changing execution semantics or requiring complex block structure changes.
Benefits
Technical Impact
Edit: Initial FIP text proposed @ #1150
Beta Was this translation helpful? Give feedback.
All reactions