Changelog
What's new in Hypertab — every shipped change, with the reason behind it. Maintained by the engineering team; updated on every deploy.
- docs
Marketing site SEO/AEO/GEO overhaul
- · Built 8 new pillar pages: pricing, active-table, smart-columns, mcp, security, about, glossary, changelog
- · Added 4 honest comparison pages: vs Clay, Airtable, n8n, Zapier
- · Schema.org overhaul: @id entity-graph, Speakable spec for AI search, removed deprecated FAQPage and fake aggregateRating
- · Hardened security headers (CSP, COOP, CORP), AI-crawler robots.txt, redirected app routes 301
- · Added llms.txt-style structured content for AI search engine citation
- fix
Production audit hardening
- · Fixed 14 P0/P1 issues from production readiness audit
- · Tightened tenant isolation, validated all external inputs, hardened webhook ingestion
- · Removed legacy continue-on-error from CI deploy.yml for new lint issues only
- perf
Batch-aware webhook ingestion
- · Webhook handler now does O(1) DB queries per batch instead of O(N) per row
- · ~50× throughput improvement on bursty webhook payloads
- feat
Ops-centric consumption widget
- · Dashboard now shows ops used / ops remaining instead of dollar estimates
- · Aligns with how customers think about spend at the smart-column level
- feat
Row-DAG execution engine (Clay-style)
- · Smart columns now declare deps via {{template}} refs — DAG built automatically on column mutations
- · Per-row waterfall execution: A → B → C → D in topological order
- · Cross-row parallelism: plan-gated 5 → 200 concurrent row DAGs
- · Cycle detection at build time with named-cycle errors
- · Cascade-on-edit: editing a cell auto-recomputes downstream cells
- feat
Enterprise virtual scrolling (AG Grid pattern)
- · Row-ID index endpoint with viewport-driven block cache (100 rows/block)
- · LRU eviction, 500K cap — handles 100K+ rows in ~6 MB memory
- · Initial load < 400 ms regardless of table size
- feat
Extract column kind
- · New 8th column kind: pulls a JSON field from upstream smart column with zero API cost
- · Source column ID auto-wired as DAG dep — runs immediately after source completes
- · Common pattern: explode a single Clearbit/ZoomInfo response into per-field columns
- security
P0 security hardening pass
- · Per-user Turso DB now enforced — no system-DB fallback
- · Turso auth tokens AES-256-GCM encrypted in _ht_users.turso_db_token
- · MCP tools scoped to user via UserContext — no cross-tenant access
- · Distributed rate limiting via Cloudflare Durable Objects (RateLimiter)
- · Comprehensive audit log: actor, action, target, IP, timestamp on every write
- · JWT verification via Web Crypto API (zero npm deps)
- · Function sandbox hardened — no fetch, no globalThis escape