Node Policies
A machine-readable contract that every execution node publishes — declaring which fields it has, how they are evaluated, where data flows, what humans see, what is protected, and how long the node is allowed to wait. The platform reads this contract to handle all cross-cutting concerns automatically.
What Are Node Policies?
Every execution node in BizFirstGO does more than run logic. It declares a structured contract called a NodeExecutorManifest — a description of every field the node cares about, wrapped in five types of policy:
Expression Policy
When and how a field's value is computed — stage and evaluator kind.
DataFlow Policy
How data moves into and out of the node — upstream input, downstream output, memory persistence.
HIL Policy
What humans see and can do in their task inbox — display mode and input mode.
Security Policy
Field masking in logs and output, and elevated-access gates.
Suspension Policy
Timeouts, SLA monitoring, reminders, and escalation for nodes that wait for humans.
How It Works at Runtime
Node registers its manifest
At startup, each executor's GetNodeExecutorManifest() is called and the result is stored in NodeFieldManifestRegistry keyed by node type name.
Resolver merges code + database overrides
NodeFieldManifestResolver.GetManifest(nodeTypeName, extensionJson) merges the code manifest with any database-stored extension JSON, allowing runtime customisation without redeployment.
Platform applies cross-cutting concerns
Expression evaluation, data flow routing, HIL field rendering, security masking, and suspension timer registration all read from the resolved manifest — the node code never handles these directly.
Pages in This Guide
Overview
What Node Policies are, the two-layer architecture, and runtime flow.
Manifest Types
Empty vs Full manifests — when to use each, and registration flow.
Field Descriptors
NodeFieldDescriptor structure, FieldId conventions, and default values.
Developer Use Cases
10 code recipes for common scenarios.
Business Cases
Six business scenarios mapped to policy configurations.
Quick Reference
All enums, decision trees, and a Config.cs skeleton in one page.