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

270 lines
7.3 KiB
JSON

[
{
"id": "T001",
"description": "DB integration: first billing-settings ensure for a client creates exactly one system-managed default contract + one assignment (idempotent on repeated call).",
"implemented": true,
"featureIds": [
"F002",
"F003",
"F004",
"F005",
"F006",
"F007",
"F012"
]
},
{
"id": "T002",
"description": "Concurrency integration: parallel ensure calls for same tenant+client produce no duplicate default contracts.",
"implemented": true,
"featureIds": [
"F003",
"F004",
"F055",
"F056",
"F063"
]
},
{
"id": "T003",
"description": "Unit+integration: time-entry save resolves default line by effective work date (covers backdated, current, future dates).",
"implemented": true,
"featureIds": [
"F019",
"F021",
"F022",
"F024",
"F025",
"F064"
]
},
{
"id": "T004",
"description": "Unit+integration: usage create/update resolves default line by effective usage date and remains consistent with UI eligibility endpoint.",
"implemented": true,
"featureIds": [
"F020",
"F021",
"F023",
"F024",
"F026",
"F064"
]
},
{
"id": "T005",
"description": "Billing-engine integration: unresolved time row with exactly one eligible line is persisted with contract_line_id and removed from unresolved output.",
"implemented": true,
"featureIds": [
"F028",
"F030",
"F031",
"F032"
]
},
{
"id": "T006",
"description": "Billing-engine integration: unresolved usage row with exactly one eligible line is persisted with contract_line_id and removed from unresolved output.",
"implemented": true,
"featureIds": [
"F029",
"F030",
"F031",
"F032"
]
},
{
"id": "T007",
"description": "Due-work integration: ambiguous or no-match records remain unresolved and visible; deterministic records do not surface as non-contract candidates.",
"implemented": true,
"featureIds": [
"F033",
"F034",
"F058",
"F070"
]
},
{
"id": "T008",
"description": "Invoice-generation integration: selected recurring rows generate correctly with default-contract-aware keys and no primary-path dependence on legacy non-contract IDs.",
"implemented": true,
"featureIds": [
"F035",
"F036",
"F037",
"F070"
]
},
{
"id": "T009",
"description": "UI test: automatic invoicing grouped rows show business labels for default-contract and unmatched records; metadata-missing rows are hard-blocked.",
"implemented": true,
"featureIds": [
"F038",
"F039",
"F047",
"F065"
]
},
{
"id": "T010",
"description": "UI test: contract list/detail show system-managed default badge/helper copy and hide/disable disallowed destructive/ownership actions.",
"implemented": true,
"featureIds": [
"F040",
"F041",
"F042",
"F043",
"F044",
"F049",
"F050"
]
},
{
"id": "T011",
"description": "UI test: time-entry and usage banners/messages use default-contract terminology and do not imply a persisted default when assignment is unresolved.",
"implemented": true,
"featureIds": [
"F045",
"F046",
"F027"
]
},
{
"id": "T012",
"description": "Lifecycle integration: client delete through package action removes billing settings/cycles and default-contract assignment artifacts without dangling references.",
"implemented": true,
"featureIds": [
"F016",
"F017",
"F018",
"F068"
]
},
{
"id": "T013",
"description": "Lifecycle integration: client delete through API/controller path executes equivalent cleanup behavior (no orphaned default-contract links).",
"implemented": true,
"featureIds": [
"F015",
"F016",
"F068"
]
},
{
"id": "T014",
"description": "Integration: null-setting override/deletion paths do not recreate default contract unexpectedly, while valid active billing-configuration paths still ensure it.",
"implemented": true,
"featureIds": [
"F010",
"F011",
"F013",
"F057",
"F067"
]
},
{
"id": "T015",
"description": "Migration test: schema migration for markers/pointers/uniqueness is idempotent and safe on already-migrated databases.",
"implemented": true,
"featureIds": [
"F055",
"F056",
"F062"
]
},
{
"id": "T016",
"description": "Regression integration: service-period and contract-cadence recurring invoicing scenarios remain correct after default-contract cutover.",
"implemented": true,
"featureIds": [
"F048",
"F060",
"F064",
"F070"
]
},
{
"id": "T017",
"description": "Observability test: ensure/reconcile/route paths emit expected structured logs/markers with no PII leakage.",
"implemented": true,
"featureIds": [
"F051",
"F052",
"F053",
"F054"
]
},
{
"id": "T018",
"description": "Integration-import regression: clients created via integration pathways still receive default contract on first qualifying billing-configuration interaction.",
"implemented": true,
"featureIds": [
"F014",
"F057",
"F066"
]
},
{
"id": "T019",
"description": "DB integration: saving a client billing schedule with an optional historical bootstrap date and no existing cycles creates client_billing_cycles from the normalized containing boundary through the present.",
"implemented": true,
"featureIds": [
"F077",
"F078",
"F079",
"F082"
]
},
{
"id": "T020",
"description": "DB integration: moving the historical bootstrap earlier while cycles remain uninvoiced regenerates historical client billing cycles deterministically without gaps or overlaps.",
"implemented": true,
"featureIds": [
"F078",
"F080",
"F082",
"F083"
]
},
{
"id": "T021",
"description": "DB integration: attempting to move the historical bootstrap earlier than the earliest invoiced cycle boundary is rejected and does not mutate invoiced history.",
"implemented": true,
"featureIds": [
"F081",
"F083"
]
},
{
"id": "T022",
"description": "UI integration: system-managed default contract detail/list render attribution-only copy and block contract-line, cadence, pricing-schedule, and assignment-date authoring surfaces.",
"implemented": true,
"featureIds": [
"F071",
"F073",
"F074"
]
},
{
"id": "T023",
"description": "End-to-end billing integration: back-dated unmatched time/usage for a client with historical bootstrap enabled routes through the system-managed default contract attribution path and invoices on the client billing schedule window.",
"implemented": true,
"featureIds": [
"F075",
"F076",
"F079",
"F084"
]
},
{
"id": "T024",
"description": "Regression integration: system-managed default contracts never materialize recurring service periods or appear as schedulable recurring obligations in service-period/admin flows.",
"implemented": true,
"featureIds": [
"F072",
"F085"
]
}
]