POC Mode
Trial-window posture, sovereignty defaults, and expiry behavior.
What is POC mode?
Proof-of-concept (POC) mode is a tenant status (PocConfig) that places a tenant in a trial window with a different security posture:
- New systems default to
execution_mode=agent(sovereignty-first for trials) - Write endpoints are blocked (HTTP 423) after expiry
- Read endpoints, plus
/poc-mode/*and/auth/*, stay open so the customer can still see their data
Lifecycle
-
enable — sales triggers this through the POC command-line tool or the platform-admin interface. A
PocConfigis created withactive=true, anexpires_at, and the window configuration. -
sweep — a periodic check compares
expires_atwith the current time; on expiry the middleware switches into block mode. -
disable — an admin or salesperson converts the trial into a paying customer (or records explicit churn). The
PocConfigbecomes inactive and all blocks are lifted.
PocExpiryMiddleware — what is blocked
For an expired POC, every non-read endpoint returns HTTP 423 (Locked) with a hint toward the "upgrade" flow. The customer can still log in, view dashboards, and download their export — only modifications are blocked.
ℹ Good to know
There is a 60-second in-process cache on the
PocConfiglookup. It is invalidated by the enable / disable / sweep service calls — a manual database change outside those calls requires a backend restart.
Sales-side tooling
The sales command-line tool (scripts/rv-poc) wraps tenant provisioning and POC enablement into a single command. Use cases: creating a POC ticket, loading demo fixtures, extending the expiry window, and checking status.
Further reading: