Skip to content

QortexOS Entering Public Beta Q3. 25 Spots Available. 50% off MSRP, for life. Apply ->

Features & Releases

How we've organized QortexOS

QortexOS is separated into six primary domains: financial, operations, contracts, benchmarking, workforce, and vendors. Each of the domains focuses on a specific feature set while integrating across domains to enhance intelligence and understanding.

Latest Releases

Full changelog →
  1. 0.8.0-alpha

    QortexOS v0.8.0-alpha
    Changed
    • GDPR Compliance is now an administrator and owner screen; other roles no longer see it.
    Fixed
    • Retry buttons on the Benchmark Center and Profitability Benchmark screens now say what they reload.
    • Every retry button on the Contracts screens now says what it reloads, so two failures on one screen no longer offer two identical Retry buttons.
    • Every retry button on the Finance screens now says what it reloads, so two failures on one screen no longer offer two identical Retry buttons.
    • Retry buttons across the Operations screens now say what they reload, and the Industry Stress, Service Lifecycle and Demand Forecast KPI strips name their own figures when they fail to load.
    • Every retry button on the Settings screens now says what it reloads, so two failures on one screen no longer offer two identical Retry buttons.
    • Retry buttons on the Vendor Center, Vendor Scorecard and License Utilization screens now say what they reload, and the Vendor Scorecard's KPI strip names its own figures when they fail to load.
    • Every retry button on the Workforce screens now says what it reloads, so two failures on one screen no longer offer two identical Retry buttons.
    • Managers can now assign revenue opportunities; the action was refused for every user.
    • Retry buttons on the Runway Planner and Payment Terms Optimizer screens now say what they reload.
    • The password reset screen now says why a reset was rejected, such as an expired link or a password that does not meet the requirements, instead of a general error.
    • A screen reader now reads which list is loading on the Center screens in the language of the screen, instead of an English placeholder.
    • The sign-up payment step now says when it cannot load instead of waiting indefinitely.
    • The invitation acceptance form now asks for a first and last name.

    Release Notes →

  2. 0.7.0-alpha

    QortexOS v0.7.0-alpha
    Added
    • The labor analytics gain loaded-cost, capacity and coverage figures (loaded labor cost and margin, employer benefit and statutory cost totals, measured capacity and its utilization, attendance and absence hours, the unresolved and unclassified hours), with the vocabularies and the US federal employer tax rates behind them; the rates apply to US-based tenants only.
    • GDPR Compliance now shows your tenant's real retention schedules: a summary of schedules, legal holds, expired and pending-anonymization records, a view of schedules past their retention end, and placing or releasing a legal hold for administrators.
    Changed
    • Contract intake now extracts the renewal date alongside the effective and expiration dates, and the contract prompt registry (document classification, field extraction, clause segmentation and the other contract tasks) is delivered to every environment by the regular database deployment instead of only to freshly built databases.
    • GDPR Compliance now shows your tenant's configured data-policy settings (retention period, encryption at rest, data auditing and export approval) instead of illustrative values.
    Fixed
    • Database deployments no longer report every table as a failed security-policy deployment when the policies are already in place; a table that is genuinely left without its access policies is now reported as a critical issue instead of hiding inside that noise. The retention outreach task queue, which had been left without those policies, is now reachable by the application under a service-account context.
    • Budget Setup's mapping and line steps now say when the account list could not be loaded and let you retry it, announce a failed read to assistive technology, and never claim a page cap over rows they are not showing.
    • Budget Setup now says when the coverage figures or the KPI rows could not be loaded and lets you retry that read, instead of showing a loading line, a dash or the refresh instruction.
    • The Validation Workbench queue lists an Open, Flagged or Skipped pill's checks up to the page cap, including those past the run's first page, and its retry now covers a count or a page that failed to refresh.
    • Evaluating an A/B experiment now applies only to a running experiment or one analyzing its results; a paused, completed, aborted or failed experiment is refused with the reason instead of being silently reopened.
    • A renewal date read from a contract document now reaches the contract and the Renewal Console once the document extractor learns the field (its companion seed change, L0915-33b).
    • Descending lists no longer open with the rows that have no value in the sorted column: a top-spend, top-score or most-recent sort now puts those rows last.
    • Strategic benchmark computations no longer fail on their last dimension when the privacy budget is split evenly across many dimensions.
    • Importing a plan of record now replaces the budget's lines all or nothing: a failure part-way through leaves the previous lines untouched instead of a half-replaced budget.
    • The database migration builder no longer mistakes a comment that mentions its processed marker for the marker itself, so an unprocessed schema change whose header explains the marker is picked up instead of being skipped on every run.
    • The Renewals KPI cards now say that they are what failed to load, with a line on what that means and their own retry, instead of borrowing the renewal registry's error title.
    • Minting a discount sign-up invite works again: the request no longer fails with a database policy error.
    • Budget Setup's Budget master card on the review step now announces to assistive technology when its POR-lines count or COA coverage could not be loaded, including when the failure happens after the page is already showing.
    • Budget Setup now announces to assistive technology when a retried read fails again, and when a step opens with a read that has already failed.
    • Permission checks that name a screen, or any permission code with a hyphen or a digit in it, are now recorded in the system account audit trail; the audit table refused those rows before and the checks went unrecorded. A permission check whose audit row the database refuses now fails instead of proceeding unrecorded.
    • GDPR Compliance now tells you which sections your role cannot view instead of showing a loading error you cannot retry.
    • Clause bank, clause mapping, template, template version and tenant association actions in the Contracts API now answer with the response shapes their contract declares.
    • Retry buttons on the Data Platform home, the Connectors screens and the partial KPI notice now say what they reload, and the Pipeline Console's KPI strip names its own figures when they fail to load.

    Release Notes →

  3. 0.6.0-alpha

    QortexOS v0.6.0-alpha
    Added
    • Unlocking a locked compensation baseline, salary band or commission plan is now a two-step: anyone with the unlock permission requests it with a reason, and the person who locked it approves or rejects the request; every lock, request and decision is kept on an audit trail.
    • Unlocking a locked compensation baseline, commission plan or salary band becomes a two-step with its own permission: a request with a reason, then the lock owner's approval, every step recorded in an audit trail.
    • The contract lifecycle vocabulary now names every step: send-for-signature, archive, restore and expire actions, with a matching event recorded for each lifecycle transition.
    • Peer benchmarks now carry the peer group's 25th percentile with its confidence interval, so the percentile band can show the group's real lower edge.
    • Benchmark privacy enforcement now reads its k-anonymity and l-diversity floors, suppression strategy and filter relaxation order per metric category from a configuration table, and every benchmark metric carries its privacy tier.
    Changed
    • The Industry Stress Console now shows the strategy ROI of retention interventions under the intervention success rate.
    • The Budget Center strip now reports on the current plan of record (the locked budget in force), with next year's draft shown as a secondary line.
    • The ingestion run and step payloads name their status fields the way the rest of the contract does.
    • Compensation baselines, salary bands and commission plans no longer accept lock fields on their update endpoints: locking and unlocking go through the lock actions and the unlock request flow, locking a commission plan is its own lock-state action like the other two, and a locked salary band can no longer be edited through its update endpoint.
    • The Quality Console's KPI strip now shows the average quality score and the date of the statistics snapshot it reads.
    • The Data Platform landing's sync success and quality score figures now weight each connector and layer by its sync and report counts, matching the Quality Console.
    • The Drafting Studio now opens a contract's extracted document: pick a contract or follow the new Open in Drafting Studio links from Contract Intake and the Ingestion Flow, and the preview shows the pages you edited; the AI review panel and the guardrail checks are labelled demonstrations.
    • The home screen's five signal tiles now show real figures: cash position, profitability, revenue, capacity and client health, each stamped with the period its data covers and with the detail behind the figure one tap away.
    Fixed
    • Tenant administrators and owners can now open the Feature Store and the Performance Console; screen permission declarations are trued up to what their routes enforce, and a seed-side gate keeps every tenant screen's declared data permissions reachable on the tenant ladder.
    • The compensation lock trail reads back in a stable order when two transitions share the same timestamp.
    • Compensation baselines defined from a budget now start as drafts that the CFO locks explicitly, and the recovery corridor is its own setting instead of switching on with the patch-adoption threshold.
    • Contract status changes now follow the lifecycle map: only the allowed transitions are accepted, each carries its own permission and is logged, renewing a contract opens its successor version, a contract goes out for signature only with a signer on it, finished contracts are archived and restored through the same map, expiry is the platform's sweep and never a manual status, contract reads show days in the current state, signature progress and a renewal-due flag, and lists can filter on the approved-not-sent and sent-awaiting-signatures states.
    • Re-running the platform configuration seed no longer re-activates a superseded configuration version.
    • Budget Setup's Add mapping button now says which field is still missing, shows that it is adding, and confirms the mapping it added.
    • Budget Setup's Create and Add lines steps now say what is still missing when a submit cannot go ahead, and the lines grid confirms how many lines it added.
    • Peer benchmark reads now carry the annual vintage of the peer data each row was computed from, so the Profitability Benchmark can label the comparison year instead of a daily-rolling date.
    • The Quarantine Workbench now records a reviewer's Apply or Dismiss decision on a remediation suggestion instead of only showing its state.
    • The Profitability Benchmark now names the year of peer data each comparison is ranked against instead of a daily-rolling date and period.
    • A compensation unlock request or rejection made while the lock state changed underneath is now refused instead of being recorded twice.
    • A compensation lock decision made on a stale lock state is now refused instead of being written twice.
    • Filtering the list of scoring weight configurations or privacy analytics configurations now returns the filtered page instead of the unfiltered page.
    • Requesting a scoring weight configuration by an unknown id now answers not found instead of a server error.
    • Renewing a contract failed on the database's version chain; a renewal now records the contract's version history and opens the successor in one step. The contract list reads its lifecycle details (days in state, signature progress) in one query instead of two reads per contract.
    • Renewing a contract now records its version history and opens the successor in one step, and the contract list reads its lifecycle details in one query.
    • Subscription metrics now state a true monthly amount for annual and quarterly plans.
    • Ingestion runs started from the Ingestion Flow now record all six pipeline steps, a step skipped for lack of input shows as skipped rather than failed, and a contract still waiting on text extraction shows as waiting instead of as having no runs.
    • Records in tables added by recent releases can be created again on upgraded environments; their audit stamps are now attached on every deploy.
    • The Engagement Center's Warnings breached and Growth opportunities cards now count the latest analysis day instead of every row ever recorded.
    • The platform's own users can sign in on every environment: their Cognito identity now follows the seed per environment.
    • The Demand Forecast Console's recommended-actions rail now shows the current forecast horizon's actions only, ranked by urgency.
    • Budget Setup's COA mapping step now says when the mappings could not be loaded and offers a retry, instead of reading as if no mappings exist yet.
    • The Validation Workbench queue pills now show the run's true counts per status, even when the run holds more checks than one page.
    • The Rolling Forecast KPI cards now say that they are what failed to load, with a line on what that means and a retry, instead of borrowing the ledger table's error title.
    • Benchmark Enrollment can re-assign the peer group on the day the current membership started; the active membership is corrected in place instead of failing.
    • Contract Intake's Open links now open the Ingestion Flow on the contract you chose, with its newest run in view.
    • The Budget Setup review step's KPIs-by-month panel renders on the kit table with the same columns and formatting.

    Release Notes →

  4. 0.5.0-alpha

    QortexOS v0.5.0-alpha
    Added
    • Partitioned platform tables now get their upcoming partitions created and their retention applied on a weekly schedule.
    • The monthly rolling-forecast refresh now records a variance event for every account whose plan-versus-actual gap exceeds the tenant's variance thresholds (2% revenue, 5% cost by default), and the refresh's variance figures now compare the plans against the month's real actuals.
    • Monthly budget variance events now have their database home: one event per account-month and comparison family, the 2% revenue and 5% cost thresholds seeded as editable policy rules for every tenant, and a pending evidence code until the classifier runs.
    • CRITICAL alerts, and alerts whose materiality reaches the impact band that holds $200K (impacts of $100K and up), are always delivered: no relevance score, analyst override or filtering rule can suppress them, except that a duplicate-detection or redundancy-consolidation rule may still consolidate such an alert with the alerts it repeats.
    • Contract templates now record whether they are a private copy, offered inside the tenant's library or a platform original, and security alerts can name the regulation they violate.
    • Tenant settings can now be provisioned over the API: a create endpoint mints the settings anchor for a tenant that has none, and a get-by-id endpoint reads it.
    • Finance screens can ask for the current plan of record directly: one read returns the locked budget for a reference date, or the newest earlier one, and says which rule applied.
    • Locking a budget now reports the rolling-forecast lines it mirrored from the plan of record, a refresh endpoint re-runs the rolling forecast for a month, and forecast-line sources validate against the four legal values.
    • Data connector lists can now be sorted by business criticality.
    • The Validation Workbench can now list a budget's validation runs directly, so the run picker and history show every run instead of only the runs visible on the first page of checks.
    • Contract, vendor-agreement, peer-benchmark, connector-health and serving-deployment lists gain the server-side windows and predicates their dashboards count over, so the capped-page captions can come off those figures.
    • Three server-side aggregates replace client-side page reductions: vendor relationship spend and lifecycle counts, per-metric peer benchmark percentiles with an as-of date, and a connector-health day summary.
    • The vendor relationship, peer benchmark and connector-health strip aggregates are now computed by the database in one pass instead of from a single page of rows in the browser.
    • The Connector Console's detail panel now lets you review and change which data facets a connector syncs, after the connector has been created.
    • Contracts in the Renewal Console can now be marked as renewed directly from the registry.
    • A locked budget now carries the date it becomes the plan of record, so a budget approved for a future period can be held until that date; the date can be changed while the budget is held and is fixed once it takes effect.
    • The QA tenants now carry a locked 2026 plan of record, a rolling forecast, eight months of actuals with their variance events, and a 2027 draft, so the Budget Center renders real figures on non-production environments.
    • Administrators can create the tenant settings anchor through the API and read it by id; a tenant holds at most one anchor.
    Changed
    • Screens keep the data they already have when a background refresh fails: the failure notice now appears only when nothing could be loaded at all.
    • Detail panes return to the top when you pick a new item, and keyboard users can tab into every pane.
    • API errors now carry their machine code to the browser, so screens can react to a specific failure (for example a completed ingestion run) instead of matching message text.
    • Manual rolling forecast entries are stamped with today's as-of date and marked MANUAL, so the latest-forecast view shows the override; an entry dated after its month is refused with a clear message.
    • Affected-package test runs are sized to their share of the CI host, and only a change to the CI definition itself runs the full suite.
    • API service test runs complete faster.
    • Merge-queue batches no longer run the Databricks validator matrix per entry; the lake is checked on the merged result instead.
    • Lake pull requests run only the test suites their change can affect.
    • Lambda test suites run in their own CI workflow, only when a Lambda changes.
    • Changes to the platform now land through a merge queue with batched checks.
    • Build caching is no longer invalidated by test-configuration changes.
    • Automated test runs are more tolerant of a busy build server.
    • Contract templates and their versions now belong to a tenant; template codes are unique within a tenant, and each tenant sees only its own templates.
    • The portal adopts version 0.39.0 of the shared design system, an additive update with no visible change on existing screens.
    • The BI Catalog screen is now Platform Maturity, at /data-platform/features-ml/platform-maturity.
    Fixed
    • Thirteen platform actions that were defined but never reachable over the API now have endpoints, and the budget validation workbench can show its evidence and re-validate a saved plan.
    • Budget figures refresh reliably when two refreshes, or a refresh and a budget edit, run at the same moment: they now take turns instead of one of them failing.
    • Changing the effective date of an approved budget that is still held no longer fails as an edit to a locked budget.
    • An opted-out tenant's benchmark participation analytics now read opted out instead of pending data.
    • Variable compensation now credits a team's improvement over the rolling forecast even when the baseline target equals that forecast, instead of scoring it as zero.
    • The variable compensation payout breakdown now shows the formula that actually produced each step: the achievement line names the floor, the interpolation or the cap that applied, and the improvement line names the gate that zeroed it or the floored quotient it used.
    • A payout preview now applies the baseline's own adoption threshold when the request does not name one, and its improvement line says which threshold was in force and where it came from.
    • The database's variable-compensation formula reference now pays above-target achievement on the same 1.0 slope with the 1.50 cap as the payout engine, and measures improvement on the absolute target-forecast gap.
    • Re-enabling benchmark participation after an opt-out now succeeds from both the setup flow and the participation update: the opt-out is cleared and recorded in the participation change log.
    • Peer benchmark data now opens tier by tier as a tenant contributes: nothing before three months, standard comparisons from three, detailed insights from twelve and trends from twenty-four, and cohorts smaller than the tenant's k-anonymity threshold are never shown.
    • Variable compensation achievement above target now follows the plan's stated curve: each point over target earns the same share of the target-to-cap band as the plan's examples, capped at 1.50.
    • Hiring funnel analytics now honor the requisition and date filters, read the whole population, and return the stage chain with the conversion between milestones.
    • The candidate reference-code lookup now answers with the candidate's pipeline status only (stage, next action, required actions), never the full candidate record.
    • A compensation baseline's original target is now captured at its first shock adjustment, so the pre-shock value is preserved as intended.
    • Budget optimization recommendations can now be accepted, declined, deferred or marked modified; before, only a pending status could be stored.
    • A workload correlation's suppression state is now checked against its vocabulary when it is written, so only the active and suppressed states can be stored.
    • A differential privacy budget whose scheduled reset date has passed can be updated again, so epsilon accounting keeps flowing for closed periods.
    • Scheduling a privacy budget reset in the past when creating a differential-privacy budget now answers a validation error, while existing budgets past their reset date stay editable.
    • A strategic scenario without a stated confidence level no longer receives a priority score computed from an assumed 50% confidence; its score stays empty until a confidence level is set.
    • A vendor scorecard with a missing dimension now scores that dimension as neutral (50) instead of zero, matching the platform's scorecard pipeline.
    • CDC stream lag monitoring now reports each stream's real lag and circuit breaker state instead of always reading as normal.
    • A relevance score written directly through the create or update endpoint can no longer leave a CRITICAL or $200K-band alert below delivery; the same consolidation exemptions as scoring apply.
    • Filtering-rule simulations now count suppressed HIGH-severity alerts and fail the safety check on them; WARNING suppressions are reported in the medium count and no longer fail the check.
    • Peer benchmark statistics can no longer be edited through the API: the values a tenant sees are the ones the benchmark computation produced.
    • Peer benchmark statistics and keys computed by the platform's peer lane can no longer be altered through the application's update path.
    • Compliance reports, cashflow insights, churn portfolio priorities and template comparisons now read the columns their records carry instead of fields that never existed.
    • Lakehouse layer SLO reads now report a real 30-day breach count and compliant streak, and pipeline orchestration a real freshness check, both derived from the lake's daily statistics.
    • The monthly vendor scorecard summary now scores a missing dimension as neutral (50) instead of zero, matching the vendor scorecard itself.
    • Workload pattern analyses can now carry a Mixed dominant pattern type, the value the pattern detector assigns when no single pattern dominates.
    • A data lineage record's impact criticality is now validated against the platform's business criticality levels instead of accepting any text.
    • Creating or updating a data lineage entry with an unknown impact criticality now answers a validation error instead of a database failure.
    • Validation Workbench: the run picker and the header's run time now come from the budget's own run list, so every validation run is offered newest first instead of only the runs that fit on one page of checks.
    • A compensation baseline's adoption threshold is now checked as a 0-1 rate when the baseline is created or updated, so a payout can no longer be gated by a threshold above 100%.
    • Most paginated lists no longer repeat or skip records that were created at the same moment; every page of those lists is now ordered deterministically. The remaining hand-written list reads follow in a later fix.
    • The remaining paginated lists (files, shares, processing jobs, users, roles, permissions, audit and security records, navigation items, contract approvals, impersonation reports) no longer repeat or skip records created at the same moment; every page is now ordered deterministically.
    • Ingestion Flow: re-running a contract whose completed run the screen had not seen yet now asks for confirmation instead of failing with a raw error, and the waiting-on-OCR notice is recognised by the server's error code.
    • Profit Center recommendations now carry their optimization objective in the vocabulary the data actually uses, so objective filters and the objective label work on every row.
    • Engagement Center growth-opportunity and early-warning lists can now be windowed to a landing date, so the health strip counts the latest analysis day instead of every row ever produced.
    • Budget lines for any month of a budget's period now land in their own monthly partition, including months before the platform's deploy month and up to two years ahead; rows that had already landed in the catch-all partition are moved into place at the next deploy.
    • The High/Medium/Low level fields in the model governance, workload pattern and revenue opportunity contracts now document the mildest-first rank order the reference vocabulary uses.
    • The budget Validation Workbench's Run validation button now works: it re-validates the saved plan on the server instead of trying to download every line first.
    • The generation-loop machine lock decides its fairness pause before it frees a slot and identifies processes by a start value that never moves, so the lock suite no longer flakes in the merge queue or under local load.
    • Benchmark participation now shows the retention window your settings actually hold, including 36 months, and saving no longer shortens it.
    • Security events such as denied permissions and rejected requests are now recorded in the tenant audit log.
    • Choosing a peer group by hand in Benchmark Enrollment now saves instead of failing.
    • Benchmark enrollment now saves every setting from the consent step in one step, including the retention period, cross-tenant learning, consent and cross-border approval, and records the consent date automatically when consent is given.
    • The Budget Setup account picker now lists and keeps the selected chart-of-accounts account.
    • Budget Center, Budget Setup review and Rolling Forecast now show KPI figures after a refresh; the refresh no longer fails silently.
    • Budget KPI figures no longer double-count a rolling forecast that has been refreshed more than once; each month counts only the latest forecast.
    • A new budget's period and historical window now land in the fiscal year that was requested, for tenants in every time zone; budgets created with last year's dates are corrected.
    • Budget shock proposals and scenario plans now take their date windows from the budget's own fiscal period instead of the server's local calendar year.
    • Budget POR import now refuses an empty file instead of clearing the budget, and negative amounts on contra-revenue and expense accounts validate correctly.
    • The validation workbench's split-allocation finding now records the percentage the way the screen expects, so a GL code whose splits do not sum to 100% shows its actual total.
    • Running a stress test or generating insights for a cashflow forecast that does not exist now returns a not-found response instead of a server error.
    • Retention Center portfolio analytics now honor the requested time window or rolling preset, and report the portfolio size from the latest snapshot.
    • At-Risk Signals lists resolve each client's open engagement case in one batched lookup, and a failed lookup no longer fails the list.
    • At-Risk Signals SHAP explanation reads return 404 instead of 500 when the explanation or its prediction does not exist.
    • Migration and seed changes now also run the operations lake suite.
    • The CI remote cache now stores and serves build artifacts across runner hosts.
    • Engagement Center health analytics now count healthy and at-risk clients and distribute scores on the 0.00-1.00 health scale.
    • Contract obligations and remediation campaigns now require only the contract compliance permissions their endpoints already ask for, instead of an extra lifecycle grant on top.
    • Changing a contract's status now returns the updated contract together with its previous status code, as the API documents.
    • Connector Console filters (type, provider, health and the rest) now narrow the connector list.
    • Opening or deleting a data-quality report that no longer exists now returns a proper not-found response, and deleting a report also removes its issues, remediation suggestions and compliance results instead of leaving them behind.
    • Department Setup now says why a department could not be created, updated or deleted, such as a duplicate name, a missing parent, a circular hierarchy, remaining child departments or a department that no longer exists, instead of a generic server error.
    • Allocating privacy budget now counts the epsilon already held by open reservations, so an allocation can no longer consume budget a pending reservation is waiting to settle.
    • Extraction Workbench fields now point at the clause and page they were read from.
    • The Federated Console's analytics now honour the selected date range instead of always summarising every experiment.
    • Demand Forecast Console accuracy analytics now honor the requested model, skill and date window, and report a signed per-skill forecast error.
    • Demand Forecast Console comparison records created or updated through the API now store a signed percentage error, so over- and under-forecasting are distinguishable.
    • Resolving an HRIS sync conflict from the console now saves instead of failing.
    • Running a privacy validation on a dataset more than once now records each run separately instead of failing.
    • Evaluating an experiment before its minimum sample size, or deploying a retraining that is not ready, now returns a clear validation response instead of a server error.
    • Profit Center baselines now load for users whose access comes from the finance module pack.
    • QuickBooks Desktop connectors no longer show a next sync time the platform never runs; the console reads Not scheduled.
    • true
    • Adopting or implementing a data-quality remediation suggestion now records when it was adopted and by whom, as the API documents.
    • The Revenue Center executive summary now reports the blended growth rate and net revenue retention at their true percentage, and flags net revenue retention below 100 percent.
    • Opening or cancelling a revenue forecast batch that does not exist, or cancelling one that has already finished, now returns a clear response instead of a server error.
    • Runway Planner stress tests now measure risk against your latest cash position instead of a zero balance, so scenarios show the full range of risk levels.
    • The serving health check now reports the model's real telemetry snapshot instead of recording a synthetic one, and shows Unknown when no recent metrics exist.
    • New organizations created through the standard sign-up now carry their operating currency, locale and time zone from the start, so money and dates render in the right currency and zone instead of the USD and UTC defaults.
    • The Cash landing's forecast-insight list spans its own row below the index, and each row shows the analysis date and benchmark percentile instead of producer text.
    • The Industry Stress console offers the column sorts its headers announce, and the Retention landing's departure timeline spans its own row below the index like the other operations landings.
    • Subscription metrics now refresh; the subscription dashboard figures are populated after a refresh.
    • Alert, model operations, translation, prompt and notification services no longer fail their internal permission checks on read, configure and delete actions.
    • Confirming your organization's currency, locale and time zone now reaches every signed-in user of the tenant on their next request instead of only the person who confirmed.
    • Listing tenant limit, security, notification and UI settings now honours the requested filters and sort order and returns the page and page size alongside the results, as the API documents.
    • Subscription Management now shows whether a subscription really renews at period end: the flag follows Stripe's cancel-at-period-end state and the subscription status, turns off on cancellation and turns back on when a subscription is reactivated.
    • The Service Catalog feeds, the Compensation landing and the Contracts Lifecycle feed now use the same kit pieces as the Benchmark landing: link cards in the auto-fill grid and the activity feeds on their own row below the cards.
    • Console tables lose their doubled frame, seven console rails start level with their table, the Extraction Workbench and the License Utilization detail pane scroll once, and section headings take the kit heading size.
    • Contract Intake lists uploaded files in the standard table, with the file's size and upload time as their own columns.
    • The Strategy, Budget, Revenue and Cash landings compose the same kit pieces as the Benchmark landing: link cards in the auto-fill grid grouped as the sidebar groups them, and the activity feed on its own row below the cards.
    • On narrow screens the sheet that opens a console's side rail scrolls once on eleven consoles instead of nesting a second scroller inside itself.
    • The Service Catalog feeds row carries one feed, and Service Lifecycle composes the kit console shell with its queues rail beside the table.
    • The Workload, Retention and Engagement landings compose the same kit pieces as the Benchmark landing: link cards in the auto-fill grid grouped as the sidebar groups them, and the activity feed on its own row below the cards.
    • The sidebar names the tenant a size above the section titles, the Demand Forecast, Service Lifecycle and Industry Stress tables lose their doubled frame, the Service Catalog index renders as cards, and a stored file whose processing failed no longer offers Record intake.
    • The Vendor and Contracts Lifecycle landings compose the same kit pieces as the Benchmark landing: link cards in the auto-fill grid, and on Vendor the activity feed on its own row below the cards.

    Release Notes →

  5. 0.4.0-alpha

    QortexOS v0.4.0-alpha Updated
    Added
    • Connectors can sync every 4 hours, and QuickBooks Desktop connections now default to that interval.
    Changed
    • A failed scheduled sync no longer stops a connector's schedule; the run is logged and the next run happens at the connector's regular interval.

    Release Notes →