AbstractAbstract ReadonlyEntityThe entity this stage runs over.
Abstract ReadonlyNameThe registered name; must match the @RegisterClass key.
ReadonlyStatusThe status column the committer advances and a Record Process's filter reads (e.g. ExtractionStatus).
null for Discover, which walks every source selected by the Record Process filter rather than advancing a status.
DeleteStatus is Pending or Deleted; 'Complete' is not in its CHECK constraint.
OptionalFinalizeOptional bulk step for work far cheaper in bulk (one embedding call for fifty texts). Run then only
gathers; Finalize gets the page's records and returns one outcome each. Used only when the stage is
last in the run's list.
ProtectedmarkMark whatever depends on this record for deletion. Nothing for a chunk, which is a leaf.
ProtectedPurgeRemove the row once everything outside it is gone; true means there is no row left to commit to. The base keeps a tombstone.
Do this stage's work on one record. Return an outcome; a thrown TransientStageError or FatalStageError is understood too, and any other throw is treated as fatal.
A delete that could not finish stays Pending (neither value is in the CHECK), so the next run tries again.
StaticResolveResolve a registered stage, or null. Uses TryCreateInstance because CreateInstance falls back to a
hollow base instance on an unknown key, which would make a typo in a Record Process silently do nothing.
Removes a record's vector and durable copy (every outside system a stage writes to), then marks it deleted.