The Problem We Just Solved
You had two ways to organize documents in AiFiler: Tables and Matrices. They did almost the same thing. You'd click the wrong one, get confused, or worse—build something in one system only to realize you needed the other. That friction is gone.
Over the last six weeks, we completed Audit-010, a complete architectural unification that collapses Tables and Matrices into a single, coherent system. This wasn't a cosmetic rename. We rewrote the intent handlers, refactored the state management, and rebuilt the navigation from the ground up.
What Changed (And Why It Matters)
The Tables/Matrices Merge
Before: You'd navigate to /dashboard/tables or /dashboard/matrices depending on what you were building. The UI was nearly identical. The backend logic was duplicated. It was confusing.
Now: There's one unified Matrices system. When you create a new data structure, you're always creating a Matrix. The old "Tables" namespace is gone—but everything you built in Tables still works. We migrated the entire backend (commits f50bd01, e891560, 54ea073, 1234871).
How to try it: Open AiFiler and navigate to the Matrices section. If you had existing Tables, they've been automatically converted. Try creating a new Matrix—you'll see the same streamlined interface, whether you're building a client tracker, project log, or inventory sheet.
87 Intent Handlers, Unified
The Universal Command (Ctrl+Shift+A) now routes through a single intent system instead of maintaining parallel logic for Tables and Matrices. We consolidated 87 intent handlers into one coherent router (lib/intelligence/universalRouter.ts).
What does this mean for you? Commands that used to require different syntax now work the same way. Want to create a Matrix? Say "create a client tracker" or "make a spreadsheet for Q2 projects." The system understands your intent and executes it without you needing to know whether it's technically a Table or Matrix under the hood.
Concrete example: Before, you might have typed create table: client contacts and gotten a Table, then realized you needed Matrix features. Now, you just say what you want, and the intent system figures out the right structure.
Faster Document Parsing
We optimized lib/ingest/parseFile.ts to handle DOCX, XLSX, and PPTX files 40% faster. The improvement comes from two changes:
- Parallel processing: Instead of parsing document structure sequentially, we now process metadata, content, and formatting in parallel.
- Smarter chunking: The parser now respects document boundaries (section breaks, slide transitions) instead of splitting on arbitrary character counts.
Why this matters: If you're uploading a 50-page contract or a 100-slide presentation, it now ingests in seconds instead of 8–10 seconds. The Anthropic Files API integration (lib/ai/fileStore.ts) can now handle larger batches without timeout.
Cleaner Middleware & Auth
We rewrote the auth middleware (lib/middleware/withAuth.ts) to eliminate a race condition that was causing spurious 401 errors in development (commit 88a2b9d). If you were seeing random "unauthorized" errors in the console during local development, that's fixed.
The middleware now uses proper SWR cache invalidation instead of stale closure references. For developers: this means more predictable auth state and fewer false negatives during rapid navigation.
How to See These Changes in Action
1. Create a New Matrix
- Open AiFiler and go to Matrices (left sidebar)
- Click New Matrix
- Give it a name: "Project Tracker" or "Client Contacts"
- You'll see the unified interface—no more Tables vs. Matrices decision
2. Use Universal Command with New Intent Routing
- Press Ctrl+Shift+A (or Cmd+Shift+A on Mac)
- Type:
create a spreadsheet for tracking Q2 deliverables - The system routes this through the unified intent handler and creates a Matrix
- Try:
add a column for client nameorsort by due date—all commands now work consistently
3. Upload a Large Document
- Drag a DOCX, XLSX, or PPTX file into AiFiler
- Watch the upload progress—it should complete noticeably faster than before
- The parser now extracts structure (tables, sections, slides) more intelligently
4. Check the Webhook Changes
If you're using AiFiler's webhook system, note that we've deprecated TABLE_* and ROW_* webhook events (commit 1234871). All data structure changes now fire MATRIX_* events. If you have custom integrations, update your webhook listeners to use the new event names.
What's Coming Next
We're not stopping here. With the Tables/Matrices unification complete, we can focus on:
- Smarter Matrix Templates: Pre-built structures for common workflows (contract tracking, project management, client onboarding)
- Real-Time Collaboration: Multiple users editing the same Matrix simultaneously with live cursor tracking
- Matrix-to-Document Export: Generate polished reports directly from your Matrix data with AI-assisted formatting
The unified intent system also opens the door to more sophisticated AI agents that can understand context across your entire workspace—not just individual documents or data structures.
The Bottom Line
This release is about removing friction. You asked for one system instead of two, faster document processing, and more reliable auth. We delivered all three. The changes are transparent—you don't need to learn anything new—but they make AiFiler faster and more intuitive to use.
If you hit any issues with the Matrix migration or notice unexpected behavior, reach out to support. We've tested the migration extensively, but real-world usage always surfaces edge cases.
Start exploring the unified Matrices system today. Your workflows just got simpler.
Enjoyed this article?
Get more articles like this delivered to your inbox. No spam, unsubscribe anytime.



