Hermes 284313f908
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
Initial import of AlgaPSA codebase from PSA server
Excluded: .git, node_modules, secrets/, compose.env, assemblyscript tgz

Source: /opt/alga-psa on psa.joliet.tech
2026-06-22 16:12:17 -05:00

1227 lines
35 KiB
JSON

[
{
"id": "F001",
"description": "CE owns a new service-request host package or feature slice that defines the core domain types and public interfaces for portal service requests",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Summary",
"Requirements > Functional Requirements"
]
},
{
"id": "F002",
"description": "CE defines a `ServiceRequestExecutionProvider` interface for pluggable submission execution behavior",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations",
"Requirements > Functional Requirements"
]
},
{
"id": "F003",
"description": "CE defines a `ServiceRequestFormBehaviorProvider` interface for pluggable form behavior",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations",
"Requirements > Functional Requirements"
]
},
{
"id": "F004",
"description": "CE defines a `ServiceRequestVisibilityProvider` interface for pluggable visibility evaluation",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations",
"Requirements > Functional Requirements"
]
},
{
"id": "F005",
"description": "CE defines a `ServiceRequestTemplateProvider` interface for starter template registration",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations",
"Requirements > Functional Requirements"
]
},
{
"id": "F006",
"description": "CE optionally defines a `ServiceRequestAdminExtensionProvider` interface for provider-specific authoring panels",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations",
"UX / UI Notes"
]
},
{
"id": "F007",
"description": "CE ships a built-in `ticket-only` execution provider",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Summary",
"Requirements > Functional Requirements"
]
},
{
"id": "F008",
"description": "CE ships a built-in `basic` form-behavior provider",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Summary",
"Requirements > Functional Requirements"
]
},
{
"id": "F009",
"description": "CE ships a built-in `all-authenticated-client-users` visibility provider",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Security / Permissions",
"Requirements > Functional Requirements"
]
},
{
"id": "F010",
"description": "CE ships at least one starter template pack that creates normal editable service request drafts",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Summary",
"Users and Primary Flows"
]
},
{
"id": "F011",
"description": "Service-request entrypoints resolve providers by key through registries instead of hard-coded enterprise branching",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Non-functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F012",
"description": "EE can register additional providers through a single enterprise entrypoint without changing CE table shapes",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Summary",
"Data / API / Integrations"
]
},
{
"id": "F013",
"description": "The feature remains coherent and buildable in CE when EE provider registrations are absent",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Non-functional Requirements"
]
},
{
"id": "F014",
"description": "Migration creates a tenant-owned `service_request_definitions` table for mutable draft definitions",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations"
]
},
{
"id": "F015",
"description": "Definitions store portal-facing metadata including name, description, icon, and sort order",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"UX / UI Notes"
]
},
{
"id": "F016",
"description": "Definitions store an optional category reference used for portal grouping",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"UX / UI Notes"
]
},
{
"id": "F017",
"description": "Definitions store an optional `linked_service_id` reference to `service_catalog`",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F018",
"description": "Definitions store provider keys for execution, form behavior, and visibility",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations"
]
},
{
"id": "F019",
"description": "Definitions store provider config blobs for execution, form behavior, and visibility",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations"
]
},
{
"id": "F020",
"description": "Definitions track draft, published, and archived lifecycle state",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements"
]
},
{
"id": "F021",
"description": "Definitions track created-by, updated-by, and publish-related audit timestamps needed for normal product behavior",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements"
]
},
{
"id": "F022",
"description": "Migration creates an immutable `service_request_definition_versions` table",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations"
]
},
{
"id": "F023",
"description": "Published versions snapshot portal metadata from the source definition",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F024",
"description": "Published versions snapshot form schema and field presentation from the source definition",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F025",
"description": "Published versions snapshot provider keys and provider config from the source definition",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations"
]
},
{
"id": "F026",
"description": "Version numbers increment monotonically per definition as new publishes occur",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F027",
"description": "Publishing records the user and timestamp responsible for a given version",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements"
]
},
{
"id": "F028",
"description": "Definitions can create a new mutable draft based on the currently published version without mutating historical versions",
"implemented": true,
"reviewed": true,
"reviewNotes": [
"Reviewed 2026-03-29: resolved by transitioning published definitions into draft mode on first edit while the portal continues serving the latest published version snapshot."
],
"prdRefs": [
"Requirements > Functional Requirements",
"Users and Primary Flows"
]
},
{
"id": "F029",
"description": "Migration creates a tenant-owned `service_request_submissions` table for durable intake records",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations"
]
},
{
"id": "F030",
"description": "Submissions store the definition id and version id used when the request was submitted",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F031",
"description": "Submissions store tenant, client, contact, and requester user ownership fields",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Security / Permissions",
"Data / API / Integrations"
]
},
{
"id": "F032",
"description": "Submissions store the normalized submitted payload captured from the published definition snapshot",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F033",
"description": "Submissions store execution status and a concise execution error summary when downstream startup fails",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Observability"
]
},
{
"id": "F034",
"description": "Submissions store `created_ticket_id` when a ticket-backed provider succeeds",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F035",
"description": "Submissions store `workflow_execution_id` or equivalent workflow reference when a workflow-backed provider succeeds",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F036",
"description": "Submissions store created and updated timestamps for request-history presentation",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations",
"Users and Primary Flows"
]
},
{
"id": "F037",
"description": "Migration creates a `service_request_submission_attachments` table or equivalent attachment linkage structure",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations"
]
},
{
"id": "F038",
"description": "Attachment rows link a submission to persisted file or document storage references",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations",
"Requirements > Functional Requirements"
]
},
{
"id": "F039",
"description": "Archiving a definition preserves its versions and historical submissions",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Rollout / Migration"
]
},
{
"id": "F040",
"description": "Historical submissions remain readable even when linked service-catalog or category records later change names",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F041",
"description": "MSP admins can navigate to a new Service Requests management area",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Users and Primary Flows",
"UX / UI Notes"
]
},
{
"id": "F042",
"description": "The Service Requests list shows draft, published, and archived definitions",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Users and Primary Flows",
"UX / UI Notes"
]
},
{
"id": "F043",
"description": "The Service Requests list supports creating a blank definition",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Users and Primary Flows"
]
},
{
"id": "F044",
"description": "The Service Requests list supports creating a definition from a template",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Users and Primary Flows"
]
},
{
"id": "F045",
"description": "Admins can duplicate an existing definition into a new draft",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Users and Primary Flows",
"Requirements > Functional Requirements"
]
},
{
"id": "F046",
"description": "Admins can archive and unarchive definitions from the management surface",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"UX / UI Notes"
]
},
{
"id": "F047",
"description": "The editor has a basics section for name, description, icon, category, and sort order",
"implemented": true,
"reviewed": true,
"reviewNotes": [
"Reviewed 2026-03-29: resolved by editable basics controls plus a dedicated server action for name, description, icon, category, and sort order."
],
"prdRefs": [
"UX / UI Notes",
"Requirements > Functional Requirements"
]
},
{
"id": "F048",
"description": "The editor has a linkage section for optional service-catalog association",
"implemented": true,
"reviewed": true,
"prdRefs": [
"UX / UI Notes",
"Requirements > Functional Requirements"
]
},
{
"id": "F049",
"description": "The editor has a form-authoring section for the request form",
"implemented": true,
"reviewed": true,
"reviewNotes": [
"Reviewed 2026-03-29: resolved by inline form-authoring controls wired through MSP actions for add/update/remove/reorder."
],
"prdRefs": [
"UX / UI Notes",
"Requirements > Functional Requirements"
]
},
{
"id": "F050",
"description": "The editor has an execution section driven by the selected execution provider",
"implemented": true,
"reviewed": true,
"reviewNotes": [
"Reviewed 2026-03-29: resolved by provider-driven execution authoring, including ticket routing, workflow settings, form-behavior config, and visibility config."
],
"prdRefs": [
"UX / UI Notes",
"Requirements > Functional Requirements"
]
},
{
"id": "F051",
"description": "The editor has a publish section that distinguishes current draft state from the last published version",
"implemented": true,
"reviewed": true,
"prdRefs": [
"UX / UI Notes",
"Requirements > Functional Requirements"
]
},
{
"id": "F052",
"description": "Admins can save an incomplete draft without making it visible in the portal",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Users and Primary Flows",
"Requirements > Functional Requirements"
]
},
{
"id": "F053",
"description": "Admins can preview the portal-facing service card before publishing",
"implemented": true,
"reviewed": true,
"reviewNotes": [
"Reviewed 2026-03-29: resolved by the shared service card preview, which now renders icon metadata visually instead of leaking the raw icon slug."
],
"prdRefs": [
"UX / UI Notes"
]
},
{
"id": "F054",
"description": "Admins can preview the rendered request form before publishing",
"implemented": true,
"reviewed": true,
"reviewNotes": [
"Reviewed 2026-03-29: resolved by the disabled rendered-form preview in the editor that mirrors the field schema."
],
"prdRefs": [
"UX / UI Notes",
"Requirements > Functional Requirements"
]
},
{
"id": "F055",
"description": "Publishing validates the full definition and blocks publication when required configuration is missing or invalid",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Acceptance Criteria (Definition of Done)"
]
},
{
"id": "F056",
"description": "Publishing creates a new immutable version rather than editing the prior published state in place",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F057",
"description": "Template instantiation creates a normal editable draft that is detached from the template source after creation",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Summary",
"Users and Primary Flows"
]
},
{
"id": "F058",
"description": "CE starter templates are presented as optional shortcuts rather than a required setup path",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Summary",
"UX / UI Notes"
]
},
{
"id": "F059",
"description": "Admins can view submissions scoped to a specific definition from the management experience",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Users and Primary Flows",
"Requirements > Functional Requirements"
]
},
{
"id": "F060",
"description": "Admins can open a submission detail view showing requester identity, submitted values, and downstream execution references",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Users and Primary Flows",
"Requirements > Functional Requirements"
]
},
{
"id": "F061",
"description": "The CE basic form builder supports a short-text field type",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"UX / UI Notes"
]
},
{
"id": "F062",
"description": "The CE basic form builder supports a long-text field type",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"UX / UI Notes"
]
},
{
"id": "F063",
"description": "The CE basic form builder supports a dropdown/select field type",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"UX / UI Notes"
]
},
{
"id": "F064",
"description": "The CE basic form builder supports a checkbox field type",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"UX / UI Notes"
]
},
{
"id": "F065",
"description": "The CE basic form builder supports a date field type",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"UX / UI Notes"
]
},
{
"id": "F066",
"description": "The CE basic form builder supports a file-upload field type",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"UX / UI Notes"
]
},
{
"id": "F067",
"description": "Field configuration supports label and help text for each field",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"UX / UI Notes"
]
},
{
"id": "F068",
"description": "Field configuration supports marking fields as required",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements"
]
},
{
"id": "F069",
"description": "Field configuration supports static default values for supported field types",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements"
]
},
{
"id": "F070",
"description": "Select fields support admin-authored option lists",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements"
]
},
{
"id": "F071",
"description": "Admins can add new fields to the form builder",
"implemented": true,
"reviewed": true,
"reviewNotes": [
"Reviewed 2026-03-29: resolved by add-field editor controls and server actions that call the basic form builder helpers."
],
"prdRefs": [
"Requirements > Functional Requirements",
"Users and Primary Flows"
]
},
{
"id": "F072",
"description": "Admins can remove fields from the form builder",
"implemented": true,
"reviewed": true,
"reviewNotes": [
"Reviewed 2026-03-29: resolved by remove-field controls in the editor backed by removeServiceRequestFormFieldAction."
],
"prdRefs": [
"Requirements > Functional Requirements",
"Users and Primary Flows"
]
},
{
"id": "F073",
"description": "Admins can reorder fields in the form builder",
"implemented": true,
"reviewed": true,
"reviewNotes": [
"Reviewed 2026-03-29: resolved by move-up/move-down editor controls backed by reorderServiceRequestFormFieldsAction."
],
"prdRefs": [
"Requirements > Functional Requirements",
"Users and Primary Flows"
]
},
{
"id": "F074",
"description": "Generated field keys remain stable across reorder and presentation-only edits",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations",
"Requirements > Functional Requirements"
]
},
{
"id": "F075",
"description": "Publish validation rejects duplicate or invalid field keys in the basic builder",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Security / Permissions"
]
},
{
"id": "F076",
"description": "The basic builder stores a neutral schema representation on the draft definition",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations",
"Requirements > Functional Requirements"
]
},
{
"id": "F077",
"description": "The published version stores the immutable form snapshot derived from the draft definition",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations",
"Requirements > Functional Requirements"
]
},
{
"id": "F078",
"description": "The portal client shows a first-class `Request Services` navigation item",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Users and Primary Flows",
"UX / UI Notes"
]
},
{
"id": "F079",
"description": "The Request Services landing page shows only published definitions",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Users and Primary Flows",
"Security / Permissions"
]
},
{
"id": "F080",
"description": "The Request Services landing page groups definitions by category when categories are configured",
"implemented": true,
"reviewed": true,
"prdRefs": [
"UX / UI Notes",
"Requirements > Functional Requirements"
]
},
{
"id": "F081",
"description": "The Request Services landing page evaluates visibility rules before listing a definition to a portal user",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Security / Permissions",
"Requirements > Functional Requirements"
]
},
{
"id": "F082",
"description": "Service cards display icon, title, and short description from the published definition",
"implemented": true,
"reviewed": true,
"reviewNotes": [
"Reviewed 2026-03-29: resolved by shared icon rendering in the portal catalog and request detail header, so published icon metadata is shown visually instead of as raw slug text."
],
"prdRefs": [
"UX / UI Notes",
"Requirements > Functional Requirements"
]
},
{
"id": "F083",
"description": "Opening a service card navigates to a request detail page for the published definition",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Users and Primary Flows",
"UX / UI Notes"
]
},
{
"id": "F084",
"description": "The request detail page renders the form from the immutable published version snapshot rather than from the mutable draft",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F085",
"description": "Static default values are applied when the portal request form first renders",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Users and Primary Flows"
]
},
{
"id": "F086",
"description": "Portal users can provide file uploads for definitions that include file-upload fields",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Security / Permissions"
]
},
{
"id": "F087",
"description": "Submit-time validation enforces required-field rules against the published version snapshot",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Security / Permissions"
]
},
{
"id": "F088",
"description": "Submit-time validation rejects direct portal submissions to definitions that are not currently visible to the requesting user",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Security / Permissions",
"Requirements > Functional Requirements"
]
},
{
"id": "F089",
"description": "Submitting a request persists a durable submission row before provider execution begins",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F090",
"description": "Successful submission shows a confirmation state containing a stable request identifier",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Users and Primary Flows",
"UX / UI Notes"
]
},
{
"id": "F091",
"description": "Portal users can view a My Requests list scoped to their client ownership",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Users and Primary Flows",
"Requirements > Functional Requirements"
]
},
{
"id": "F092",
"description": "The My Requests list shows request name, submission time, and current submission status",
"implemented": true,
"reviewed": true,
"prdRefs": [
"UX / UI Notes",
"Requirements > Functional Requirements"
]
},
{
"id": "F093",
"description": "Portal users can open a request-detail page for one of their own submissions",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Users and Primary Flows",
"Requirements > Functional Requirements"
]
},
{
"id": "F094",
"description": "Submission details render the submitted answers using the field presentation from the version snapshot",
"implemented": true,
"reviewed": true,
"reviewNotes": [
"Reviewed 2026-03-29: resolved by snapshot-aware submission detail rendering for select labels, checkbox values, and file-upload answers backed by attachment field mapping."
],
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F095",
"description": "Submission details show uploaded attachment references when the submission included file uploads",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Security / Permissions"
]
},
{
"id": "F096",
"description": "Portal users cannot list or open submissions that belong to a different client/contact context",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Security / Permissions",
"Requirements > Functional Requirements"
]
},
{
"id": "F097",
"description": "The `ticket-only` execution provider is selectable in the editor without requiring any EE code",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Summary",
"Requirements > Functional Requirements"
]
},
{
"id": "F098",
"description": "The `ticket-only` provider lets admins configure default ticket routing values needed by the existing portal ticket creation path",
"implemented": true,
"reviewed": true,
"reviewNotes": [
"Reviewed 2026-03-29: resolved by the ticket-routing configuration panel in the editor for board/status/priority/category/subcategory/assignment/title mapping."
],
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F099",
"description": "The `ticket-only` provider maps request payload values into ticket title and ticket description/notes content",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F100",
"description": "The `ticket-only` provider uses the existing client-portal contact/client resolution model instead of inventing a parallel access model",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations",
"Security / Permissions"
]
},
{
"id": "F101",
"description": "The `ticket-only` provider writes the created ticket id back onto the submission when ticket creation succeeds",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F102",
"description": "The `ticket-only` provider marks the submission with execution failure while keeping the submission persisted when ticket creation fails",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Observability"
]
},
{
"id": "F103",
"description": "Confirmation and request-history views expose a linked ticket reference when a ticket-backed submission succeeds",
"implemented": true,
"reviewed": true,
"reviewNotes": [
"Reviewed 2026-03-29: resolved by linking ticket-backed confirmation and request-history detail states to the existing client-portal ticket detail route."
],
"prdRefs": [
"Users and Primary Flows",
"Requirements > Functional Requirements"
]
},
{
"id": "F104",
"description": "Definitions can be published successfully without any linked service-catalog item",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements"
]
},
{
"id": "F105",
"description": "The linked-service picker reuses existing service-catalog search patterns rather than introducing a second catalog-search model",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Data / API / Integrations",
"Requirements > Functional Requirements"
]
},
{
"id": "F106",
"description": "The editor shows the selected linked-service record clearly enough for admins to confirm what commercial service is associated",
"implemented": true,
"reviewed": true,
"prdRefs": [
"UX / UI Notes",
"Requirements > Functional Requirements"
]
},
{
"id": "F107",
"description": "Publish validation rejects linked-service references that no longer resolve to a valid service-catalog row",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Security / Permissions",
"Requirements > Functional Requirements"
]
},
{
"id": "F108",
"description": "Templates may prefill a linked service and ticket-mapping defaults while remaining fully editable before publish",
"implemented": true,
"reviewed": true,
"reviewNotes": [
"Reviewed 2026-03-29: resolved by aligning starter-template execution defaults with ticket-only runtime support, including template-based titles and optional suppression of form-response description output."
],
"prdRefs": [
"Users and Primary Flows",
"Requirements > Functional Requirements"
]
},
{
"id": "F109",
"description": "EE registers a `workflow-only` execution provider through the enterprise provider entrypoint",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F110",
"description": "EE registers a `ticket-plus-workflow` execution provider through the enterprise provider entrypoint",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F111",
"description": "Workflow-backed provider configuration lets admins choose the workflow to run for a definition",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Users and Primary Flows"
]
},
{
"id": "F112",
"description": "Workflow-backed provider configuration lets admins map request submission data into workflow inputs",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F113",
"description": "The `ticket-plus-workflow` provider can pass the created ticket id into workflow inputs alongside the submitted request data",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F114",
"description": "Successful workflow-backed execution writes the resulting workflow reference back onto the submission record",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F115",
"description": "Workflow startup failures leave the submission persisted and marked with execution failure",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Observability"
]
},
{
"id": "F116",
"description": "Portal request-history views can surface workflow references when the selected provider creates them",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Users and Primary Flows",
"Requirements > Functional Requirements"
]
},
{
"id": "F117",
"description": "EE registers an advanced form-behavior provider through the enterprise provider entrypoint",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Data / API / Integrations"
]
},
{
"id": "F118",
"description": "The advanced form-behavior provider supports conditional show/hide rules for fields",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"UX / UI Notes"
]
},
{
"id": "F119",
"description": "The advanced form-behavior provider supports requester, client, or context-aware default values",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Requirements > Functional Requirements",
"Users and Primary Flows"
]
},
{
"id": "F120",
"description": "Publish validation rejects invalid conditional-logic configuration in advanced form mode",
"implemented": true,
"reviewed": true,
"prdRefs": [
"Security / Permissions",
"Requirements > Functional Requirements"
]
}
]