R
rollupTree
INFRA · APIS
Velocity0.0
Perform Recursive Computations
The recursive-computation engine under massProps grows the accessors its consumer needed
recursive-computationtree-structuresdagengine-packagesystems-engineering
◆Current state
rollupTree performs recursive computations over tree and DAG structures — the generic engine that its author's massProps package uses to roll mass properties up an assembly breakdown. It is small and moves slowly: five releases in a year, of which two are README and vignette work. The current surface added row-level get and set accessors by key and by id at 0.4.0.
◆Where it's heading
The package develops in response to its one visible consumer. The 0.4.0 accessors appeared in January 2026 and massProps switched to them thirteen days later; 0.4.1 then fixed missing column names in the setters, which is the kind of defect only real use surfaces. Before that, 0.3.0's default_validate_dag() extended validation past strict trees to directed acyclic graphs, widening what structures the engine will accept.
◆Prediction
On the established pattern the next release will be whatever massProps needs next, discovered by using it. A DAG validator suggests non-tree structures are in scope, but nothing in these notes says that path is being pushed further.
◆Recent moves
- 6mo ago
Missing column names in the new row setters
The row setters added eleven days earlier were dropping column names. Found fast, which is what happens when the only consumer adopts an API immediately.
View source ↗ - 6mo ago
Row-level get and set accessors by key and by id
Four accessors for reading and writing single rows by key or id. The sibling package massProps moved onto them thirteen days later, which is what the addition was for.
View source ↗ - 1y ago
- 1y ago
Badges and GitHub Actions added to the README
Repository infrastructure: CI workflows and status badges, nothing users interact with.
View source ↗ - 1y ago
default_validate_dag() extends validation past strict trees
A default validator for directed acyclic graphs, widening the structures the engine will accept beyond trees. One function, and the most substantive change in the window.
View source ↗