Some checks are pending
Bidi Control Character Guard / bidi-control-guard (push) Waiting to run
Circular Dependency Check / Check for new circular dependencies (push) Waiting to run
Citus Migration Smoke / Combined migrations on single-node Citus (push) Waiting to run
E2E Fresh Install Tests / fresh-install-e2e (push) Waiting to run
ext-v2 guardrails / Run ext-v2 guard and ESLint (push) Waiting to run
Integration Tests / Check for relevant changes (push) Waiting to run
Integration Tests / ${{ (github.event_name == 'schedule' || github.event.inputs.suite == 'full') && 'Full integration suite' || 'Tier-1 integration subset' }} (push) Blocked by required conditions
Mobile checks / Mobile lint + typecheck (push) Waiting to run
Mobile checks / Mobile unit tests (push) Waiting to run
Mobile checks / Mobile dependency audit (report) (push) Waiting to run
Mobile checks / Mobile reproducibility checks (push) Waiting to run
Secrets guard (env backups) / Ensure no tracked env backup files (push) Waiting to run
Temporal Readiness / fast-readiness (push) Waiting to run
Temporal Readiness / docker-parity (push) Waiting to run
TypeScript Type Check / Nx affected typecheck (push) Waiting to run
Unit Tests / Skipped-test budget (push) Waiting to run
Unit Tests / Nx affected unit tests (push) Waiting to run
Unit Tests / Server unit coverage (informational) (push) Waiting to run
Validate Tenant Management Schema / Check for relevant changes (push) Waiting to run
Validate Tenant Management Schema / Validate Tenant Management Schema (push) Blocked by required conditions
EE Workflows Build Guard / ee-workflows-build-guard (push) Waiting to run
Excluded: .git, node_modules, secrets/, compose.env, assemblyscript tgz Source: /opt/alga-psa on psa.joliet.tech
192 lines
5.7 KiB
JSON
192 lines
5.7 KiB
JSON
[
|
|
{
|
|
"id": "F001",
|
|
"description": "Formalize workflow shared typing so `event.wait` is explicitly recognized as a supported step shape instead of only a generic node fallback.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 1",
|
|
"Functional Requirements 2"
|
|
]
|
|
},
|
|
{
|
|
"id": "F002",
|
|
"description": "Extend the `event.wait` config schema to support an optional structured `filters` array.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 3"
|
|
]
|
|
},
|
|
{
|
|
"id": "F003",
|
|
"description": "Support the agreed v1 filter operators for `event.wait`: equals, not-equals, in/not-in, existence, relational, and string-prefix/suffix/contains operators.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 4"
|
|
]
|
|
},
|
|
{
|
|
"id": "F004",
|
|
"description": "Constrain v1 event filters to scalar payload-field matching with array literals allowed on the right side for `in` and `not_in`.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 5",
|
|
"Functional Requirements 6"
|
|
]
|
|
},
|
|
{
|
|
"id": "F005",
|
|
"description": "Apply all `event.wait` filter clauses using AND semantics.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 7"
|
|
]
|
|
},
|
|
{
|
|
"id": "F006",
|
|
"description": "Update event-ingestion matching so it evaluates `eventName`, `correlationKey`, tenant scope, and payload filters before resuming a wait.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 8"
|
|
]
|
|
},
|
|
{
|
|
"id": "F007",
|
|
"description": "Keep `event.wait` timeout and try/catch behavior compatible with existing runtime semantics.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 9"
|
|
]
|
|
},
|
|
{
|
|
"id": "F008",
|
|
"description": "Preserve backward compatibility so existing `event.wait` definitions without filters continue to publish and run unchanged.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 1",
|
|
"Rollout / Migration"
|
|
]
|
|
},
|
|
{
|
|
"id": "F009",
|
|
"description": "Add a new `time.wait` node step to the default workflow node registry.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 10"
|
|
]
|
|
},
|
|
{
|
|
"id": "F010",
|
|
"description": "Support relative-duration waits in `time.wait`.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 11"
|
|
]
|
|
},
|
|
{
|
|
"id": "F011",
|
|
"description": "Support absolute or computed until-date waits in `time.wait`.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 12"
|
|
]
|
|
},
|
|
{
|
|
"id": "F012",
|
|
"description": "Resume due `time.wait` entries through the existing worker/runtime wait pickup flow.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 13"
|
|
]
|
|
},
|
|
{
|
|
"id": "F013",
|
|
"description": "Expose `Wait for Event` as a first-class palette step in the workflow designer.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 14",
|
|
"UX / UI Notes"
|
|
]
|
|
},
|
|
{
|
|
"id": "F014",
|
|
"description": "Expose `Wait for Time` as a first-class palette step in the workflow designer.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 14",
|
|
"UX / UI Notes"
|
|
]
|
|
},
|
|
{
|
|
"id": "F015",
|
|
"description": "Provide a curated config editor for `event.wait` covering event selection, correlation key, filters, timeout, and assign-on-resume.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 15",
|
|
"UX / UI Notes"
|
|
]
|
|
},
|
|
{
|
|
"id": "F016",
|
|
"description": "Provide a curated config editor for `time.wait` covering mode selection and duration or until-expression entry.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 15",
|
|
"UX / UI Notes"
|
|
]
|
|
},
|
|
{
|
|
"id": "F017",
|
|
"description": "Show useful wait metadata in pipeline cards and run detail surfaces, including event name, filter count, timeout, and scheduled resume time as appropriate.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 16",
|
|
"Observability"
|
|
]
|
|
},
|
|
{
|
|
"id": "F018",
|
|
"description": "Add publish-time validation for malformed wait configuration and keep assignment-path validation for both wait step types.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 17"
|
|
]
|
|
},
|
|
{
|
|
"id": "F019",
|
|
"description": "Keep event-catalog-driven authoring compatible with `event.wait`, including event selection and schema-informed payload-path authoring.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 18"
|
|
]
|
|
},
|
|
{
|
|
"id": "F020",
|
|
"description": "Use existing wait persistence columns where practical, storing filter and time-wait metadata in wait payloads and introducing a `time` wait type rather than broad schema churn.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Data / API / Integrations",
|
|
"Rollout / Migration"
|
|
]
|
|
},
|
|
{
|
|
"id": "F021",
|
|
"description": "Define and support event-field presentation metadata for wait filters so eligible event fields can render typed picker controls such as status, client, contact, or user pickers.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Goals",
|
|
"Functional Requirements 19",
|
|
"Data / API / Integrations"
|
|
]
|
|
},
|
|
{
|
|
"id": "F022",
|
|
"description": "Make the wait-filter editor fall back cleanly from picker metadata to enum or primitive controls when no typed picker is available for an event field.",
|
|
"implemented": true,
|
|
"prdRefs": [
|
|
"Functional Requirements 20",
|
|
"Data / API / Integrations",
|
|
"Acceptance Criteria (Definition of Done)"
|
|
]
|
|
}
|
|
]
|