{% extends "base.html" %} {% block title %}Beta progress | {{ app_name }}{% endblock %} {% block content %}

Beta progress

Phase 0: real usage before more features.

{{ 'Gate met' if metrics.gate_met else 'Gathering evidence' }}

Only workspaces you confirm as outside users count. Operator and unreviewed workspaces are excluded. Measurements started {{ metrics.started_at | datetime }}. Runs and reviews reflect retained data, not lifetime totals.

Activated outside users
{{ metrics.outside_users }} / 5
Outside runs with events
{{ metrics.measured_runs }} / 50
Flags marked useful
{{ metrics.counts.useful }} / 1
Weekly active workspaces
{{ metrics.weekly_active_teams }}
Outside runs, last 7 days
{{ metrics.weekly_runs }}
Median signup to first event
{{ '%.1f min' | format(metrics.activation_minutes) if metrics.activation_minutes is not none else 'Not measured' }}

An active workspace has a run with a newly received event in the last 7 days. Retries and empty runs do not count. Activation time uses {{ metrics.activation_sample }} confirmed outside workspace{{ 's' if metrics.activation_sample != 1 }} created after measurement began. Older workspaces' first-ever events are unknown.

Outside activation funnel

Signed up
{{ metrics.funnel.signups }}
Created a key
{{ metrics.funnel['keys'] }}
Sent an event
{{ metrics.funnel.activated }}
Received a flag
{{ metrics.funnel.flagged }}

Each step counts distinct confirmed outside workspaces. Signup, key and flag timestamps come from existing server records; event receipt tracking begins with this release.

Detection feedback

{{ metrics.reviewed }} of {{ metrics.total_flags }} retained flags reviewed. {{ metrics.counts.missed }} missed-loop report{{ 's' if metrics.counts.missed != 1 }}.

{{ metrics.useful_percent ~ '% useful' if metrics.useful_percent is not none else 'No reviewed flags yet.' }}

Useful rate = useful / all reviewed flags, including too early and false alarms. It is user feedback, not an independent accuracy measurement. One current verdict per flag; workspace members can revise it.

{% for r in metrics.reviews %}{% else %}{% endfor %}
RuleVerdictReviews
{{ r.rule | rule_label if r.rule else 'Missed loop' }}{{ r.verdict.replace('_', ' ') }}{{ r.count }}
Feedback appears when users review flags on their run pages.

Classify workspaces

Confirm outside users after speaking with them. Mark your own test accounts internal. Unreviewed accounts never improve the gate. {{ metrics.total_workspaces }} workspaces in total.

{% for ws in metrics.workspaces %}{% endfor %}
WorkspaceActivationFirst flagClassification
{{ ws.name }}
{{ ws.id }}
{% if ws.first_event %}Event {{ ws.first_event | ago }}{% elif ws.first_key %}Key created; awaiting event{% else %}Awaiting API key{% endif %}
{{ ws.runs or 0 }} measured runs
{{ ws.first_flag | ago if ws.first_flag else 'None' }}{% if ws.operator %}Internal (operator){% else %}
{% endif %}
{% if metrics.offset %}

Newer workspaces

{% endif %}{% if metrics.more %}

Older workspaces

{% endif %}
{% endblock %}