Release notes

Changelog

What shipped, what changed, and where CAKRA stands today.

Product status

Public beta

CAKRA is live in public beta; sign-up is open to everyone. This page tracks release status, not live uptime monitoring — the base map and Cici’s advanced analysis depend on your connection and related services.

Data & privacy

Log files are processed and kept temporarily in this tab’s session. A refresh keeps the dataset; use "End session" to clear it. When you ask Cici for analysis, only your question and metric summaries are sent — the raw file, device identity, and detailed coordinates are not included automatically. Avoid adding sensitive details to your question.

Measurement vs. prediction

Log results are field measurements. VDT produces an estimate based on sector parameters and a propagation model. Building shapes are visual context only — they aren’t yet factored in as ray-tracing obstacles. Predictions should be validated in the field.

Version history

v4.15.5-beta.1

Individual pack naming (Basic/Pro/Max) and honest per-pack benefits

September 24, 2026
  • The three prepaid packs are renamed from Starter/Growth/Team to Basic/Pro/Max — individual-pack naming without the team-ladder implication; internal plan enums and admin plan sync are unchanged.
  • Benefit rows are now honest per pack: Basic and Pro list drive-test analysis only (1 credit/process) with a quiet note that VDT & Capacity unlock on Max; Max states the unlock plus VDT 5 / Capacity 3 credits per process.
  • Admin plan badges and the dropdown now read FREE/BASIC/PRO/MAX, and the VDT/Capacity gate copy says Max pack / Enterprise instead of Team plan.
v4.15.4-beta.1

Fresh start: 2 starter credits, signup trigger rebuilt, full data reset

September 24, 2026
  • New accounts now receive 2 starter credits (90 days) instead of 3 — signup trigger rebuilt from scratch and the auth trigger re-created, repairing stale trigger state from partial migration runs.
  • The analytics event inside signup is now fail-safe: it can never block a registration or the credit grant again.
  • Migration 0020 wipes every data table — orders, credits, scenarios, organizations, invites, tokens, analytics, error logs, audit — while preserving admin accounts (admins are unlimited regardless), and 403 pricing copy now names the read-only Mayar key fix.
v4.15.3-beta.1

Mayar rejections made visible: live probe in System Check

September 22, 2026
  • Mayar HTTP errors now capture the gateway own error body (first 300 chars) into /admin/errors and surface the status in the pricing UI (provider_error_401/403/…).
  • System Check gains a live, read-only Mayar probe: a 404 from a nonexistent invoice id proves the API is reachable and the key authorized; 401 names a key/env mismatch, 403 names account/feature verification.
  • The pricing error for a gateway rejection now tells the admin exactly which switch to check instead of a generic contact-us line.
v4.15.2-beta.1

Pull-path reconciliation hardened and observable

September 22, 2026
  • Invoice parsing now accepts every Mayar status spelling (paid/success/settled/completed/lunas), boolean paid flags, transaction_id snake_case, and numeric-string amounts — so a shape mismatch no longer silently blocks reconciliation.
  • Any non-paid or amount-mismatch reconcile now logs the provider raw status and amounts to /admin/errors: a stuck order is diagnosable instead of invisible.
  • Same-origin enforcement added to the Mayar webhook (dashboard test events are POSTs without the header, so the probe stays green while forged cross-site calls are rejected).
v4.15.1-beta.1

Mayar webhook fixed: test events acked, orders resolved from database

September 22, 2026
  • The Mayar dashboard test event (event:testing) is now acknowledged 200 — the old parser rejected it as invalid, so the test button always looked broken.
  • Real payment notifications no longer require productId to be a UUID (real payloads carry short numeric ids): every plausible id is collected as a candidate and the order is resolved from our own database by mayar_invoice_id.
  • Verification now fetches the invoice from Mayar using our stored invoice id — never a webhook field — and unmatched notifications are recorded for audit with a 202 instead of failing.
v4.15.0-beta.1

Distance-based log points, account deletion, diagnosable checkout

September 21, 2026
  • Drawn routes now generate measurement marks by distance (5/10/20/50 m spacing) like a real distance-based GNSS logger — click the polyline, the log points appear automatically with drive-cadence timestamps.
  • Run is guarded: a drawn/imported/saved route with fewer than two points never charges credits (no more accidental auto-loop spend).
  • Admins can permanently delete an account (typed-email confirmation) — auth user, credits, scenarios, org seats and orders, with an audit record; self-deletion is refused.
  • Checkout 503s now carry a coded reason (payments not enabled, missing env, bad return URL, gateway error) shown in the pricing UI, and System Check probes the Mayar env switches, NEXT_PUBLIC_SITE_URL and the migration-0019 credit function.
  • VDT forms tidied: uniform input cells and grouped Posisi/Antena/Radio sections in every site card.
v4.14.1-beta.1

Route preview on load, deterministic run snapshot

September 21, 2026
  • Loading a preset or scenario now immediately shows its route as a free preview line on the map (saved, drawn and imported routes; cheap auto-loop ring for the radius mode) — no credits consumed.
  • Run prediction was rebuilt on a frozen input snapshot: RSRP route, coverage grid and simulation all render from the same captured run, eliminating the state race that could show coverage without a route.
  • The run bar now explains the preview explicitly; after a run the paid prediction replaces the preview.
v4.14.0-beta.1

Road-true loops, manual route drawing, strict credit costs

September 21, 2026
  • Jakarta Pusat (11.6 km) and Bandung (25.5 km) presets rebuilt from real OpenStreetMap road geometry with one-way compliance — the loops now follow Sudirman-Thamrin-Semanggi and Asia Afrika-Ahmad Yani-Pasteur instead of cutting across blocks.
  • New route source: draw your own drive route directly on the map (Start drawing, click to drop points, undo/clear, live length) — prediction runs on exactly the roads you trace.
  • Credit model now per-process against the purchased balance: VDT 5 credits per run, Capacity Diagnostics 3 credits per upload, drive test analysis 1 credit — enforced atomically server-side (migration 0019), fail-closed when the balance is insufficient, idempotent on retries.
  • VDT predictions are now explicit: press Run prediction to charge 5 credits and compute; editing settings no longer auto-consumes.
  • VDT and Capacity unlocked for the Team plan and Enterprise org seats (admins included); the Team top-up pack is now Rp250.000 (80 credits).
v4.13.0-beta.1

Org provisioning, KPI expansion, plan matrix

September 21, 2026
  • Admin can now provision organizations directly from the API: create an org, assign the initial org_admin, and the user automatically gets a team workspace with isolated credits.
  • Capacity classifier expanded: retainability check (CDR/RLF) runs before coverage/capacity diagnosis, and healthy cells now report CSSR and HOSR values in their evidence.
  • Pricing page adds a plan comparison matrix showing feature availability per plan (Free/Starter/Growth/Team) including VDT daily quota and Capacity access.
  • Org-level admin guard (requireOrgAdmin) separate from the platform-wide admin guard, per master prompt §8.4.
v4.12.0-beta.1

Loop kota diperluas + admin plan management + deduct credits

September 21, 2026
  • Bandung loop diperluas menjadi 19.6 km tertutup (start = finish) dengan 48 sektor BDG001–BDG016_S1–S3 yang mengikuti jalan utama kota.
  • Jakarta Pusat diperbarui menjadi loop 8.5 km tertutup dengan 36 sektor JKT001–JKT012_S1–S3 mencakup Sudirman–Thamrin–Kuningan.
  • Bandung urban ringan dihapus dari preset — hanya dua preset kota yang tersedia.
  • Admin panel kini menampilkan plan badge berwarna per user (FREE/STARTER/GROWTH/TEAM) dengan dropdown untuk mengubah plan langsung.
  • Tab Organizations baru di admin menampilkan semua organisasi terdaftar dengan member count, seat limit, dan credit usage.
  • Tombol Deduct ditambahkan di admin Credits untuk mengurangi credit user saat anomali, dengan catatan audit di ledger.
  • Auto plan sync: migration 0018 otomatis set plan user berdasarkan tier yang sudah dibeli (boost→starter, supporter→growth, backer→team).
  • Admin bypass: getUserPlan sekarang return team untuk admin user, sehingga sidebar menampilkan semua fitur termasuk VDT dan Capacity.
v4.11.0-beta.1

Tabbed VDT config, de-branded copy, capacity KPI expansion

September 21, 2026
  • VDT configuration is now a single tabbed panel (radio/mobility/terrain/pattern/sites) replacing four separate sidebar cards.
  • All payment provider names are removed from user-facing copy.
  • Capacity diagnostics CSV parser now supports the full OSS KPI schema with alias-matching.
  • Pricing page stays as active IDR checkout with de-branded copy.
v4.10.0-beta.1

Plan tiering with strict daily quotas

September 20, 2026
  • Plans (free/starter/growth/team) now gate the product at three layers: the sidebar hides Virtual Drive Test and Capacity Diagnostics entirely for non-Team plans, server layouts redirect direct URL access to Pricing, and APIs verify the plan server-side.
  • Strict VDT quota: 3 route generations per day on Team, atomic in Postgres, UTC-midnight reset, no rollover — the client requests a credit before any route compute and shows an honest quota banner when exhausted.
  • Cici answers carry a daily per-plan quota (5 free/starter, 30 growth, 100 team); when exhausted the assistant falls back to the local summary with a clear note instead of a raw error.
  • Scenario radius raised to 30 km per the field workflow.
v4.9.0-beta.1

Organizations & read-only v1 API

September 20, 2026
  • Organizations: create a team org at /settings/organization (owner role), with the org_id schema now active for scenario sharing — members with owner/engineer roles can share scenarios to the org, visible to all members via new RLS.
  • Read-only token API: org owners issue API tokens (sha256-hashed, prefix-only display, revocable) and integrate via GET /api/v1/scenarios, GET /api/v1/scenarios/:id and POST /api/v1/predict (batch best-server prediction server-side), rate-limited per token.
  • Scenario DELETE completes the backend persistence loop and both save/delete are captured in the user-facing audit log.
v4.8.0-beta.1

Enterprise foundation & honest site creation

September 19, 2026
  • Migration 0014 adds organizations, org_members (owner/engineer/viewer), a user-facing audit_events table and a tier column on profiles (existing users grandfathered as free).
  • Scenario save/delete is now recorded to the audit trail and readable at /settings/audit; a DELETE endpoint plus audit capture complete the backend persistence loop.
  • BIZ-1 groundwork: Pro tier constants (Rp299.000/month = 75 credits, $25 display), a single requireEntitlement-style helper with fail-closed semantics, /api/entitlements as the client source of truth, and the Capacity module gated to Pro at the UI with server-verified tier. The Starter USD anchor is unified to Rp245.000; IDR prices untouched.
  • No more dummy Example sectors: presets and the Add button now create field-typical 3-sector sites (BDG101_S1–S3 convention, rooftop heights, mixed carriers) in one click.
v4.7.0-beta.1

City-loop example drive (Bandung 10–20 km)

September 19, 2026
  • New Bandung city-loop example: a closed 10–20 km drive on real OSM street geometry (primary/secondary roads of central Bandung) where the start point is also the finish point, sampled at 1 s with junction slowdowns.
  • 33 example sectors named BDG201–BDG211_S1–S3 with field-typical dense-urban values (rooftop 26–33 m, 43 dBm, 17–18 dBi, e-tilt 7–9°, feeder 2.5 dB, mixed 1800/2100 MHz carriers).
  • Under the preset settings the drive produces 41 handovers and 7 ping-pong candidates with a majority of RSRP samples inside the −75…−105 dBm dense-urban band.
v4.6.0-beta.1

Capacity diagnostics (heuristic, evidence-backed)

September 16, 2026
  • New /capacity workspace page: per-cell ROP-level KPI CSV importer (browser-side, strict validation with rejected-row counts) and a threshold-based classifier separating coverage-limited, capacity-limited, scheduler-limited, healthy, insufficient-data and hygiene-excluded cells.
  • Hygiene gate runs before any diagnosis: cells with VSWR/PIM/alarm/sleeping/PLMN flags are listed for remediation, never force-labeled, and cells below the sample floor stay insufficient-data.
  • Every classification carries recorded evidence (triggering averages) and exports to CSV; documented as heuristics to calibrate per network, not causal inference.
v4.5.0-beta.1

MAPL calculator & link-budget mode

September 16, 2026
  • New Link budget & MAPL card answers the planner question the subcarrier-scale engine cannot: how far an N-RB allocation at a target MCS reaches.
  • Noise is computed over the allocated-RB bandwidth, shadow margin reuses the existing probit(σ) reliability helper, and range inverts the active path-loss model by bisection — with an explicit unconverged status.
  • An RB-allocation sweep table (10→106 RB) makes the capacity-vs-coverage tradeoff visible; reach is labeled link-budget-limited, not ray-traced.
v4.4.0-beta.1

Optional MCS-based throughput (TS 38.214)

September 16, 2026
  • Capacity model is now selectable: the legacy Shannon proxy stays default, while the new MCS mode derives the PDSCH rate from TS 38.214 tables with explicit layers, symbols and overhead inputs.
  • The SINR→MCS mapping is indicative and user-overridable; below the lowest mapped MCS the throughput is reported as unknown instead of zero.
  • Verified table anchors (MCS 0/10/15/20/25/28) are covered by regression tests including the RB×SE invariance fixture.
v4.3.0-beta.1

NR foundations: numerology, RB table, SCS-aware noise

September 16, 2026
  • Sites can now be declared NR with a numerology (μ0–μ2); maximum RB counts per bandwidth/SCS follow TS 38.101-1 Table 5.3.2-1 (verified externally; anchors 20 MHz@15 kHz = 106 RB and 100 MHz@30 kHz = 273 RB) and undefined combinations are rejected.
  • Noise per subcarrier and reference power now derive from each site's tech/numerology instead of a hardcoded 15 kHz; at constant total power the SCS choice is nearly SINR-neutral — the RB-allocation effect arrives with the MAPL task.
  • Scenario schema v4 migrates v1–v3 losslessly (radioTech 'lte'); LTE numbers are bit-identical after migration and covered by regression tests.
v4.2.0-beta.1

VDT scenarios persist to your account

September 16, 2026
  • Saved scenarios now persist to the signed-in account (Supabase vdt_scenarios, RLS per owner) in addition to the tab-session cache — the demo no longer dies with the tab.
  • Storage is fail-closed and degrade-gracefully: remote save/list failures fall back to the offline cache silently; scenario payloads are validated server-side with the same isScenario gate.
  • New migration 0013_vdt_scenarios.sql must be run manually; org_id is reserved for the multi-tenant wave.
v4.1.0-beta.1

Credible example drive: Jakarta corridor preset

September 15, 2026
  • A Jakarta Sudirman–Thamrin example scenario replaces the synthetic sine demo: the drive route follows real OpenStreetMap carriageway geometry (ODbL attribution in NOTICE), resampled at one-second intervals with junction dwells, while Bandung remains as the second preset.
  • Example site layout is dense-urban plausible: five sites × three sectors named JKT014x_S1–S3, mixed 1800/2100 MHz carriers and 25–35 m rooftop heights.
  • The coverage grid is masked to the drive corridor (configurable radius, default 400 m) instead of painting a full square slab.
  • The example drive ships with shadow fading enabled (σ=6 dB, fixed seed) and shows 8 handovers including ping-pong candidates — demonstrating mobility honestly, with all parameters still fictional and clearly labeled.
v4.0.0-beta.1

Public launch & field-grade VDT engine

September 14, 2026
  • Public signup replaces the invite gate: registration is open with email confirmation and 3 starter credits, while admin invitations remain for pre-assigned roles.
  • The VDT engine adds ITU-R P.526 knife-edge diffraction over imported DEM grids (Deygout, Epstein–Peterson, composite), spatially correlated log-normal shadow fading with seeded reproducibility, and coverage-probability reliability outputs.
  • Vendor MSI antenna patterns (.msi) can replace the analytic envelope per sector, and field calibration extends from one global offset to per-clutter-class offsets with the same 70/30 discipline.
  • Admin fulfillment is unified on one Credits page: a scheduled payment invoice pull (Vercel Cron) auto-grants paid orders, and manual grants share the order's idempotency reference so double-granting is impossible.
  • Pricing gains an Enterprise contact row and the prepaid lineup is renamed Starter / Growth / Team, now with server-side regional pricing: IDR for Indonesian visitors and a fixed-anchor USD display (billed in IDR) for everyone else.
v3.9.0-beta.1

Live IDR top-ups & unlimited admin

September 12, 2026
  • Pricing now offers three prepaid IDR credit packs and opens a hosted payment invoice for signed-in beta users.
  • Payment return polling reads only an order owned by the signed-in user and waits for the verified webhook before announcing available credits.
  • Admins bypass credit consumption inside the service-role-only database function and see an Unlimited badge in the workspace.
  • The landing adds a direct Pricing path while Private Beta access remains invite-gated.
  • Legacy Saweria and obsolete PricingTeaser files are absent from the release source, preventing the mixed-version TypeScript failures seen on Vercel.
v3.8.0-beta.1

Free, measurable Private Beta

September 12, 2026
  • Private Beta access is free and remains limited to approved email invitations; pricing is a research survey rather than a checkout.
  • Product analytics and sanitized error reporting now use first-party Supabase tables with strict metadata allowlists and no session replay.
  • Admin work is separated into Users, Invites, Insights, and Errors with one server-side admin guard.
  • Enterprise now offers a bounded pilot request and states current security controls without claiming certifications that CAKRA has not earned.
  • A future payment rail is prepared behind a disabled, fail-closed server flag and is not exposed in the public beta interface.
v3.5.0-beta.2

Protected import & enterprise trust

September 10, 2026
  • Dataset import now lives on a dedicated protected workspace route; the public landing has no file inputs or technical upload workflow.
  • The landing pricing bridge is persuasive rather than price-heavy, while the former positioning matrix is replaced by a plan-level feature comparison on Pricing.
  • Single analysis now starts at $15 globally and Rp30,000 for Indonesian billing.
  • Enterprise adds an explicit trust architecture covering identity, browser-side file handling, assisted analysis, map providers, production controls, and unclaimed certifications.
  • Public navigation now has three primary destinations: Pricing, Enterprise, and a Resources menu containing Docs, Changelog, Data & privacy, and Contact.
v3.5.0-beta.1

Signal Grid design system

September 9, 2026
  • CAKRA now uses one blue signal palette across light, dark, public, authentication, documentation, and protected workspace surfaces; legacy green brand accents are removed.
  • Landing, Pricing, and Enterprise are rebuilt as sparse technical narratives with continuous ledgers, dashed rails, measurable product evidence, and fewer decorative cards.
  • Pricing keeps explicit Global/USD and Indonesia/IDR access paths while checkout remains invite-only; Enterprise keeps engineering scope and field-validation boundaries visible.
  • The footer now shares a seamless neutral-to-blue surface and keeps the complete CAKRA wordmark directly above the bottom edge without overlapping release metadata.
v3.4.0-beta.7

Midnight dark palette

September 9, 2026
  • Public dark mode moves from mint-green to midnight navy with electric blue and cyan accents.
  • The grid, cards, CTAs, Pricing, Enterprise, and footer now share one cool-toned dark system while light mode stays unchanged.
  • The workspace preview retains its measured-signal colors as data semantics, not as the public dark theme accent.
v3.4.0-beta.6

Public page composition

September 9, 2026
  • The footer now separates copyright metadata from the CAKRA wordmark and groups navigation into Company and Resources.
  • The wordmark stage is shorter, fully visible, and blends continuously into neutral light and carbon dark surfaces.
  • Pricing adds a three-step access route; Enterprise adds an operating map and a focused scope call-to-action while access remains invite-only.
  • The landing pricing teaser now has a deliberate gap before dataset import.
v3.4.0-beta.5

Pricing & enterprise pages

September 9, 2026
  • Pricing is now a dedicated public page with an explicit Global/USD or Indonesia/IDR selector, detailed access comparison, and no checkout claim.
  • Enterprise is a separate scoped-engagement page that distinguishes review access, planning evidence, and field validation from unbuilt enterprise promises.
  • Footer mint was softened into a neutral white or carbon transition, and the dark surface now uses restrained mint accents rather than a saturated green band.
v3.4.0-beta.4

Carbon & mint dark theme

September 9, 2026
  • The dark landing moves from muted blue-slate to a higher-contrast carbon, mint, and cyan grid that carries the demo workspace visual language.
  • Footer spacing is tightened and its mint field now transitions continuously from the link area to the wordmark.
  • The wordmark remains anchored to the bottom edge while using a shorter stage and a softer top mask.
v3.4.0-beta.3

Regional beta pricing

September 9, 2026
  • The public landing now has a bilingual pricing section with fixed USD and Indonesia-specific IDR prices.
  • Single analysis starts at $20 globally and Rp49,000 in Indonesia; subscription credits make recurring review predictable without an unlimited claim.
  • Checkout remains an access request until payment, entitlement, verified webhook, tax, and refund flows are connected server-side.
v3.4.0-beta.2

Public product framing

September 9, 2026
  • Cici is mounted only inside the protected workspace, never on the landing, sign-in, or public information pages.
  • The landing now maps the measurement-to-decision workflow and honestly positions CAKRA beside raw-log review and specialized planning tools.
  • The footer wordmark is larger, anchored to the page edge, and retains an accessible copyright line.
v3.4.0-beta.1

VDT engineering workbench

September 8, 2026
  • Explicit LTE link budget, occupied-spectrum interference and receiver settings.
  • Time-based A3-inspired serving-state playback with gap and ping-pong diagnostics.
  • Measured-serving residuals, fit/holdout offset calibration and electrical tilt comparisons.
  • Versioned scenarios preserve RF settings and elapsed route time; unmodeled RSRQ and UL are no longer synthesized.
v3.3.0-beta.4

Outdoor RF planning calibration

September 8, 2026
  • Virtual drive test scenarios now accept electrical and mechanical downtilt, beamwidth, feeder, clutter, polarization, and bandwidth inputs.
  • Prediction exposes interference-aware SINR and indicative throughput alongside RSRP.
  • Predicted routes reuse drive-test-shaped RSRQ, SNR, and throughput samples for chart, playback, and handover review.
  • Landing footer spacing and mobile pixel-frame overflow were refined.
v3.3.0-beta.3

Public landing, protected workspace

September 8, 2026
  • The landing page is now the public first page.
  • Import and every analytics workspace remain available only to verified accounts.
  • Sign-in returns users to Overview, while registration stays accessible from the landing access gate.
  • Public visitors cannot select drive-test files or open Cici from the landing page.
v3.3.0-beta.2

Verified access & pixel-grid refinement

September 8, 2026
  • Fail-closed workspace access with verified identity and role checks.
  • Account recovery guidance after identity verification, without a public email lookup.
  • Light-first pixel-grid design, optional dark theme, the original footer, and a floating Cici assistant.
  • Ten bilingual documentation guides with syntax-highlighted examples.
  • A new database migration restricts profile updates and enforces invitation-only registration.
v3.3.0-beta.1

Bilingual workspace & Cici

September 7, 2026
  • English and Indonesian across analytics, maps, VDT, imports, and account access.
  • Cici with a pixel-cloud avatar, locale-aware responses, and clearer fallback summaries.
  • Nine documentation guides with search, sidebar navigation, and section links.
  • Localized numbers, table pagination, and language changes that preserve the map camera.
  • Refined pixel-grid layout and a live bilingual workspace preview.
v3.2.0

Private Beta & exploratory map

September 7, 2026
  • Private Beta landing page with a workspace preview, workflow section, FAQ, and a clear access path.
  • Per-tab temporary dataset: a refresh keeps it, a new session starts empty, and there’s an explicit End session action.
  • Free-form camera with tilt/heading sliders, fly-along playback, a synced timeline, independent layers, and sample clustering at low zoom.
  • 2D route view still works when graphics acceleration isn’t available.
  • Fixed an empty map container, Cici access validation behind a proxy, and scenario cleanup once a session ends.
v3.1.0

Workspace & data integrity

September 7, 2026
  • A tighter layout with mobile navigation, clearer contrast, and cards sized to their content.
  • TXT/CSV import plus KML events, precise header mapping, GPS/metric validation, and de-duplication.
  • Stats and the map follow active filters; empty data no longer shows up as a measurement.
  • Cici supports open-ended questions, cleaner answer formatting, and a session summary when deeper analysis isn’t available.
  • 3D map with coverage, buildings where available, layer controls, area focus, and playback.
  • CSV export, printable summaries, and self-hosted deploy configuration.
v3.0.0

Geospatial workspace

Earlier release
  • 3D coverage, a BTS/sector editor, route playback, and saved scenarios.
v2.7.0

CAKRA Next

Earlier release
  • Migrated the app to a Next.js-based workspace with modular RF analysis.
Import a dataset