Skip to content

App reporting plan

Status: proposal — planning with the owner, 2026-10-05; not built yet. Related: document-release-workflow, company-operating-system-strategy, embeddedera-app.

One Reports place in the app shows, for every part and every area of the company, what is complete and what is missing — and every row opens the exact thing that needs fixing.

Owner direction (2026-10-05)

  • "I will need reports like that for every single part we currently have … easy to see what we are missing — parts, assemblies, low stock etc."
  • Reports drive you to the part/assembly issue when you tap a row.
  • Use Tabler (and the ApexCharts already in the app); Metabase is not required for these.
  • "Add all this to the plan."

Where it lives

  • Menu: new Reports item right under Overview (own section). Reports are things, so they belong in the menu.
  • Reports page: grid of tiles (count → list); each list has filters, sort, an optional ApexCharts chart and Export to Google Sheets (also CSV). Phone: tiles stack, lists worst-first. Desktop: grid + full tables.
  • Where you already work:
  • Part page: health badge (e.g. 7/9) next to the title → what's missing, each with a fix-it button.
  • Parts list: Health column + quick filters (missing photo, no price, below minimum, no work instruction…).
  • Assemblies & BOMs list: Can build and Shortages columns.
  • Documents page: Report tab (missing / draft / out of date / edited after release / not linked).
  • Overview: top 3–5 urgent items under Needs you + "See all reports".
  • Bell: weekly summary (each line opens its record).
  • Drill-down: every row deep-links to the record on the right tab (no price → Cost tab with Edit price; no work instruction → Documents tab with New document; below minimum → Stock tab with supplier; can't build → BOM tab with short lines highlighted; missing photo → Add photo open). Back returns to the report at the same spot; fixed rows drop off.

Reuse what exists (don't duplicate)

Already in the app and folded into Reports as tiles: Overview Needs you and Below minimum tile, Parts → Minimums tab, Can build on assemblies, No price yet on Cost cards, Margins (Money, admin), Marketing reach/leads, the Workflows (automation health) page.

Part health — rules (editable, per kind of part)

Check Applies to
Photo all parts
Description, category, units all parts
Supplier + price (cost known) purchased parts
Manufacturer + MPN purchased components
Minimum stock set stocked parts
Stock ≥ minimum stocked parts
BOM present, every line priced assemblies
Released work instruction active assemblies
Test program tested assemblies
Sale price + margin salable products
Datasheet / user guide released salable products
Rules can be switched on/off and added without code changes. First version (owner can trim): photo, supplier/price, minimum, stock vs minimum, BOM priced, released work instruction.

Document requirements (feeds the Documents report)

Which parts Must have
Active assemblies released Work instruction
Salable products released datasheet / user guide
Parts with a test program released test procedure
Customers with an open order proposal or quote
Document statuses come from document-release-workflow (Draft / Released Rev X). Flags: missing, draft older than 14 days, out of date (part revision changed in the ERP after release, or BOM changed since release), edited after release (Google lock removed), not linked (Shared Drive files attached to nothing).

Report catalog (⭐ = first batch)

Make - ⭐ Part health (completeness, worst first, by category) - ⭐ Assembly shortages (blocked builds and the parts blocking them) - ⭐ Component risk — end-of-life / not-recommended / single-source parts and the assemblies they hit (reuse the existing lifecycle checks / part-lookup) - Build progress (open, late, done vs planned) - Stock value and aging; dead stock (no movement 90+ days) - Paul Shop consignment (on hand, selling, restock) - Traceability / recall (which serials used reel/lot X) Quality (after the Test & program tab) - Test yield (first-pass, failures by step) · Quarantine aging · Returns and reasons Buy - ⭐ Reorder list (below minimum + supplier, price, lead time, one-tap create PO) - Late purchase orders · Price changes since last purchase (+ margins affected) · Spend by supplier per month Sell - ⭐ Unpaid / overdue invoices (ties to invoice reminders) - Sales by product, customer, month · Margins (existing, moved here) · Etsy shop (orders, best sellers, listing problems) Marketing - Content published vs planned + Story link-check status · Reach and leads (existing Marketing page) Running the company - Storage — Google Drive pool (alert 80%), server disks (85%), app file store; biggest Drive folders to clean - Controlled files — assemblies missing a released P&P program / oven profile / work instruction; builds made with a since-superseded revision; machines with overdue maintenance or calibration (see document-release-workflow) - Overdue tasks by person · Stalled projects (no activity 2 weeks) · SOPs due for review, documents stuck in draft · Automation health (failed jobs, backups, Story checks — from Workflows)

How it works underneath

  • ERP stays the source of truth; the app computes health/report rows on the server, refreshed hourly and when a record changes (fast with thousands of parts).
  • Nightly snapshot keeps history ("missing photos 120 → 40 this month") for trend charts.
  • Built with Tabler + the vendored ApexCharts 4.7.0 (MIT); same phone-first rules, UI gate and speed budget as every page.
  • Metabase: not needed for these. Keep it for ad-hoc questions; review in a month and retire it if nobody uses it.

Effort (Codex builds, Claude gates and releases)

  • First batch (⭐ 5 + Reports page + health badge + drill-down + Sheets export + weekly bell summary): 3–5 days.
  • Each further report: ~½–1 day.
  • Documents report: ~1–2 days after the document release workflow.

Open decisions

  1. Confirm the first-version health checks (list above).
  2. Confirm required documents per kind of part.
  3. Reports position in the menu (under Overview — proposed).
  4. Order after the first batch.