Files
mrp/CHANGELOG.md
2026-03-18 20:36:30 -05:00

174 lines
17 KiB
Markdown

# Changelog
This file is the running release and change log for CODEXIUM. Keep it updated whenever shipped functionality, architecture expectations, deployment behavior, or operator-facing workflows materially change.
## Unreleased
### Added
- Reverse project visibility on quote and sales-order detail pages, purchase-order header project linkage, sales-order-driven project auto-derivation for new work orders and purchase orders, quote-to-sales-order project carry-through during conversion, and migration backfill for existing work orders and purchase orders linked through project sales orders
- Finance module with customer-payment posting against sales orders, finance costing assumptions, sales-order cash/spend ledger rollups, manufacturing cost snapshots, and CapEx tracking for equipment, tooling, and consumables
- Inventory-backed shipment picking from shipment detail pages, including sales-order line remaining-quantity visibility, warehouse/location source selection, issued-stock posting, and shipment pick history
- Project cockpit section on project detail pages for commercial, supply, execution, delivery, purchasing, readiness-risk, and project cost snapshot rollups, plus direct launch paths into prefilled work-order and purchase-order follow-through and a chronological project activity timeline
- Planning workbench replacing the old one-note planning screen with mode switching, dense exception rail, heatmap load view, agenda view, and focus drawer
- Planning workbench dispatch upgrade with station load summaries, readiness scoring, release-ready and blocker filters, richer planner rows, and inline release/build/buy actions
- Manufacturing finite-capacity slice with station daily capacity, parallel capacity, working-day calendars, calendar-aware operation scheduling, and operation-level rescheduling from the work-order detail page
- Manufacturing station edit support for working days, active state, queue, and capacity settings directly from the manufacturing screen
- Operation execution controls on work orders, including start/pause/resume/complete actions, labor posting, and actual-minute rollups by operation and work order
- Operation operator assignment and timer-based labor capture, with timer stop posting elapsed minutes back as labor entries
- Workbench rebalance controls for operation rows, including planner-side datetime rescheduling, quick shift moves, and heatmap-day targeting without leaving the dispatch surface
- Workbench station-to-station rebalance so planners can move an operation onto another active work center and rebuild the downstream chain from the same dispatch surface
- Workbench drag scheduling in station grouping mode, with draggable operation cards, station drop targets, heatmap-day-aware drop timing, and projected post-drop load cues before the move is committed
- Workbench station cards now show planned-vs-actual load so planners can compare schedule intent against recorded execution time
- Work-order `On Hold` quick status changes now require a recorded hold reason and persist the active blocker on the work-order record and audit trail
- Project milestone cards now support inline quick status actions for start, block, complete, reset, and reopen flows directly from the project detail view
- Project milestones with status, due dates, notes, and edit-time sequencing inside the project workflow
- UI density standardization pass across app shell, dashboard, finance, project detail, manufacturing detail, and admin surfaces, including tighter panel spacing, more compact shell/navigation spacing, and removal of redundant explanatory subcopy in favor of concise uppercase section labels
- Continued density standardization across CRM, inventory, sales, purchasing, and shipping list/detail surfaces so module headers, filter bars, and status panels follow the same tighter uppercase operational pattern
- Continued density standardization across CRM, sales, purchasing, shipping, manufacturing, and project form/detail headers so editor and record surfaces now follow the same compact uppercase pattern with less redundant helper copy
- Project-side milestone and work-order rollups surfaced on project list and detail pages
- Inventory SKU master builder with family-level sequence codes, branch-aware taxonomy management, and generated SKU previews on the item form
- Thumbnail image attachment staging on inventory item create/edit pages, with upload-on-save and replacement/removal support
- Dedicated inventory-item thumbnail display on the item detail page
- Revision comparison views for sales quotes, sales orders, and purchase orders with field- and line-level before/after diffs
- Purchase-order revision snapshots covering document edits, status changes, and receipt posting
- Session review cues on admin auth sessions, including flagged stale activity, multi-session counts, and multi-IP warnings
- Session filters and text search for admin-side access review across user, email, IP, user agent, and review reasons
- Support-log filtering by severity, source, search text, and retention window in admin diagnostics
- Support-log export and support-snapshot export now carry filter context, summary counts, available sources, and retention metadata
- Shared destructive-action confirmation dialog with impact and recovery guidance for high-risk operational actions
- Typed confirmation for sensitive admin actions such as account deactivation, current-session revocation, and terminal manufacturing/inventory postings
- Destructive-action confirmation and recovery coverage for sales approvals, quote conversion, purchase receiving, purchase status changes, and shipment status changes
- Destructive-action confirmation coverage for project customer/document unlinking and embedded form-row removals in sales, purchasing, inventory, and warehouse editors
- Persisted auth-session tracking with admin visibility into active, expired, and revoked sign-ins
- Admin-side session revocation controls plus server-side logout that invalidates the current JWT-backed session
- Shared shortage and readiness rollups across dashboard, planning, project detail, purchasing detail, and manufacturing detail
- Prefilled work-order draft launch for build recommendations and prefilled purchase-order draft launch for buy recommendations from sales-order demand planning
- Sales-order demand planning with multi-level BOM explosion across manufactured and assembly children
- Netting of sales-order demand against available stock, active reservations, open work orders, and open purchase orders
- Build and buy recommendations surfaced directly on sales-order detail pages
- Pegged work-order and purchase-order supply tracking back to sales demand so reopened planning views do not overstate remaining recommendations
- Preferred-vendor sourcing on inventory items, used to preseed buy-side planning workflows
- Demand-planning recommendations now reduce against existing linked WO/PO supply and support safer partial conversion behavior
- Support-log capture for startup warnings, HTTP failures, and server errors, surfaced through admin diagnostics
- Exportable support bundles that now include backup guidance and recent support logs for support handoff
- Deeper startup diagnostics with writable-path checks, database-file validation, startup timing, and pass/warn/fail rollups
- Backup verification checklist and restore-drill runbook surfaced in admin diagnostics
- Backup/restore guidance surfaced in admin diagnostics with exportable support snapshot JSON for support handoff
- CRM customer/vendor changes and shipping mutations now feed the shared audit trail
- Startup validation now runs during server boot and surfaces readiness checks in admin diagnostics
- Admin user-management screen with account creation, activation control, role assignment, and role-permission editing
- Route-level lazy loading and vendor chunking across the client so major operational modules no longer ship in the initial bundle
- Persisted audit events for core settings, inventory, purchasing, sales, project, and manufacturing write actions
- Admin diagnostics page with runtime footprint, storage-path visibility, key record counts, and recent audit activity
- Inventory transfers with paired physical stock movement posting between warehouses and locations
- Manual inventory reservations plus automatic work-order-driven component reservations
- Reserved and available stock visibility on inventory item detail and stock-by-location views
- Manufacturing stations with queue-day definitions and item-level station/time operation templates
- Automatic work-order operation plans copied from buildable item routing into the planning workbench
- Live planning workbench timelines backed by active projects and open manufacturing work orders
- Planning summary metrics and exception cards for overdue or at-risk project/manufacturing schedule items
- Sales approval actions with approved-by/approved-at stamps on quotes and sales orders
- Automatic sales-document revision history with authored reasons and per-revision snapshots
- Projects domain foundation with customer, owner, due date, priority, notes, and attachment support
- Project linkage to sales quotes, sales orders, and shipments for cross-module delivery tracking
- Project list/detail/create/edit workflows and app-shell navigation entry
- Dashboard project widgets for active, at-risk, and overdue program visibility
- Manufacturing foundation with work orders, optional project linkage, work-order attachments, and app-shell navigation entry
- BOM-based manufacturing requirement visibility plus material issue and completion posting through inventory transactions
- Dashboard manufacturing widgets for released, active, and overdue work visibility
- Purchase-order supporting documents for vendor invoices, acknowledgements, certifications, and procurement backup files
- Vendor-detail purchasing visibility with recent purchase-order activity and PO launch shortcuts
### Changed
- Project records now persist milestone plans directly on create/edit instead of treating schedule checkpoints as freeform notes only
- Company theme colors and font now persist correctly across refresh through startup brand-profile hydration in the frontend theme provider
- Demand-planning purchase-order draft generation now links sales-order lines only when the purchase item matches the originating sales item
- Admin user edits now normalize blank passwords to null and surface save failures instead of appearing unresponsive
- Fresh bootstrap now creates only minimal system records; operational domains no longer start with seeded demo customers, vendors, inventory, BOMs, or warehouses
- Sales and purchasing detail pages now expose revision comparison directly alongside chronological revision history
- `ROADMAP.md` now tracks remaining work only, and shipped phase history now lives in `SHIPPED.md`
- Support logs now prune retained entries by age instead of only trimming by count, and admin diagnostics now reviews filtered support-log summaries instead of an unbounded flat dump
- Admin diagnostics now summarizes sessions that need review, and startup now prunes old expired or revoked auth-session records
- Admin, sales, purchasing, shipping, inventory, manufacturing, project, warehouse, and attachment workflows now use explicit destructive-action confirmation and recovery messaging instead of immediate irreversible clicks
- Admin operations now combine user management with live session visibility so operators can inspect and revoke sign-ins without changing user records
- JWT authentication now validates against persisted session records and inactive users lose access immediately instead of waiting for token expiry
- The dashboard now treats Projects as a live first-class module alongside CRM, inventory, sales, and shipping
- The dashboard now treats Manufacturing as a live first-class module alongside CRM, inventory, sales, shipping, and projects
- The dashboard now treats Planning as a live first-class module with direct workbench access from the landing page
- Inventory control now distinguishes on-hand, reserved, and available stock instead of treating all positive stock as fully free
- Manufacturing and inventory now share a routing-driven workflow where assemblies/manufactured parts define station/time templates and work orders inherit them automatically
- Sales quote and sales-order detail pages now surface approval state and revision history directly in the operational workflow
- Project editing now uses searchable pickers for customer, owner, quote, sales-order, and shipment linkage instead of static operational dropdowns
- Project detail now surfaces linked work orders and can launch pre-seeded manufacturing records
- Purchase-order detail now links back to the vendor CRM record and supports direct supporting-document management on the PO itself
- Vendor CRM detail now exposes purchasing activity and can launch pre-seeded purchase orders
- The client entry bundle now stays lighter by loading major modules on demand instead of importing all route pages eagerly in `main.tsx`
- Company settings now acts as the staging area for admin surfaces while user administration lives on its own dedicated page instead of inside the company-profile form
- Admin diagnostics now includes startup-readiness status alongside runtime footprint and recent audit activity
- Admin diagnostics now includes structured startup summaries and a dedicated support-log view for faster debugging
- Roadmap and project docs now treat demand planning and supply generation as its own phase ahead of the deferred admin QOL work
- Roadmap and project docs now treat backup verification checklist and restore drill guidance as the next active priority after the backup/support-tooling slice
- Manufacturing work-order material requirements now include live available/shortage visibility instead of only required-versus-issued math
- Roadmap and project docs now move back to admin session visibility and destructive-action safety after the demand-planning rollout
## 2026-03-15
### Added
- Dashboard foundation followed by live-data dashboard cards and operational summary widgets
- Purchase-order domain foundation with searchable vendor and SKU workflows
- Purchase receiving foundation tied to purchase orders, including warehouse/location receipt posting, receipt history, and per-line received and remaining quantity tracking
- Branded quote, sales-order, and purchase-order PDFs through the shared backend Puppeteer document pipeline
- Navigation icon support for top-level modules
### Changed
- Purchasing detail workflows now support operational receiving directly from the purchase-order record
- Sales and purchasing detail pages now expose one-click PDF rendering actions
- Dashboard direction and project instructions were tightened through new documentation guidance
- Roadmap and project docs now treat shipping/logistics documents as the next active priority after receiving and commercial PDFs
### Fixed
- Purchase-order follow-up fixes after the initial purchasing rollout
- PDF rendering and document-pipeline fixes after the first document commits
- General refinement pass across active workflows after the initial March 15 feature wave
## 2026-03-14
### Added
- Initial MRP foundation scaffold
- Docker build and runtime foundation, plus Unraid deployment guidance
- Prisma setup, migration fixes, npm/workspace fixes, and supporting JS/runtime cleanup
- Auth/RBAC foundation, dark mode support, and early UI cleanup
- CRM foundation through customer/vendor records, hierarchy, contacts, lifecycle metadata, images, and final CRM polish
- Inventory foundation through item master, BOMs, warehouses, stock locations, searchable SKU flows, and inventory detail refinements
- Dense workspace and compact UI passes across the active product surface
- Sales foundation with searchable document entry, conversion actions, default cost/price support, and totals/commercial logic
- Shipping foundation with sales-order linkage and packing-slip PDFs
- Company-profile and document PDF foundation with subsequent documentation updates
### Changed
- Inventory default-price support flowing into sales documents
- Purchase-order line restrictions to purchasable inventory items only
- Search and focus behavior received follow-up fixes during CRM/inventory/sales rollout
- Documentation was expanded repeatedly as the foundation scope grew
### Fixed
- Prisma reliability and workspace setup issues discovered during the first foundation build-out
- SKU picker and autocomplete issues during inventory rollout
- Focus and autosuggest regressions during dense operational form work
### Known follow-up areas
- Shipping labels, bills of lading, and logistics attachments
- Vendor invoice/supporting-document attachments
- Sales approvals and document revision history
- Projects, manufacturing execution, and planning depth