01must proveConfirmed | Only in-force contracts produce licences; known inactive statuses produce none, and unfamiliar statuses are flagged without granting access. | calculation | service | test |
02must proveConfirmed | A contract with unreadable term dates produces no licence and a flag, while an automatic-renewal contract may have an open-ended term. | calculation | service | test |
03must proveConfirmed | Each line-item term boundary independently uses its own date when supplied and otherwise inherits the corresponding contract date. | calculation | service | test |
04must proveConfirmed | The code-held product map expands recognized products into grants, flags unmapped products and grants no applications for integration, payment, service or licence-only products. | calculation | service | test |
05must proveConfirmed | Overlapping and adjacent terms for an application combine into one licence window, while genuinely separated terms remain distinct. | calculation | service | test |
06must proveConfirmed | Finite licence windows receive seven calendar days of grace, and open-ended windows have no grace end. | calculation | service | test |
07must proveConfirmed | The product should notify workspace administrators beginning sixty days before a contract ends; this accepted notice behavior is absent. | policy | service | unknown |
08must proveConfirmed | A complete company read replaces contracts, lines and licence windows transactionally and records success; provider failure preserves the prior commercial snapshot and records a redacted error. | policy | service | test |
09must proveConfirmed | A missing HubSpot token records an unconfigured outcome without changing existing licences or raising a provider-failure alarm. | policy | service | test |
10must proveConfirmed | Changed licence windows request one post-commit authorization flush, whether access increases or decreases, while identical windows request none. | policy | service | test |
11Confirmed | Nightly reconciliation, verified HubSpot notifications, manual staff sync and workspace company-link changes feed the shared company-sync operation. | policy | service | documented |
12must proveConfirmed | Webhook acceptance requires a signature for the exact request body and address within the replay window, and missing secret configuration refuses delivery without revealing verification detail. | validation | api | test |
13Confirmed | Verified deliveries deduplicate company sync requests and resolve contract owners from the stored snapshot, leaving unknown contracts and unsupported events for nightly reconciliation. | policy | service | test |
14must proveConfirmed | Staff licensing readers can inspect company commercial copies and synchronization health, while company synchronization requires management authority and customer callers are refused. | permission | api | test |
15Confirmed | Workspace deletion retains company-level commercial copies and licence windows shared by production and sandbox workspaces. | policy | service | observed |
16must proveConfirmed | The sync worker acknowledges malformed input and recorded provider outcomes, reserving queue redelivery for thrown processing failures. | policy | service | observed |
17must proveConfirmed | Webhook processing acknowledges failed queue publication, reports refused companies and relies on later reconciliation for recovery. | policy | service | observed |
18must proveConfirmed | The sync queue allows five receives before dead-lettering, with four-day source retention and fourteen-day dead-letter retention. no proof recorded yet | lifecycle | service | observed |
19must proveConfirmed | Contract sync replaces commercial copies and licence windows without initializing a newly licensed application’s missing operational state. no proof recorded yet | lifecycle | service | observed |