network-metadata-carries-structured-state

IN premise

Node state such as `_retracted`, `retract_reason`, `superseded_by`, `challenges`, `access_tags`, and `summarized_by` lives in the generic `metadata` dict rather than typed Node fields, keeping the dataclass stable while features layer on behavior.

Summary

All the extra per-node state that features like retraction, supersession, challenges, access control, and summarization need is stashed in a generic metadata dictionary instead of being added as dedicated fields on the Node class. This means the core data structure never has to change its shape when new capabilities are introduced — features just read and write well-known keys in that dict, keeping the system extensible without constant schema churn.

Dependents

These beliefs depend on this one:

Details

Sourceentries/2026/04/29/reasons_lib-network.md