diff --git a/PROGRESS.md b/PROGRESS.md index d0a3d43..903ff11 100644 --- a/PROGRESS.md +++ b/PROGRESS.md @@ -10,8 +10,8 @@ | | | |---|---| -| **Latest version** | v0.30.0-SNAPSHOT (R2 identity screens + SPA CRUD completion + S3 file backend + OIDC federation) | -| **Latest commit** | `1777189 feat(web): create-location + adjust-stock forms` | +| **Latest version** | v0.31.0-SNAPSHOT (chart of accounts + double-entry GL + OIDC + S3 + R2 identity + SPA CRUD complete) | +| **Latest commit** | `d2bca48 feat(web): journal entries page shows double-entry debit/credit lines` | | **Repo** | https://github.com/reporkey/vibe-erp | | **Modules** | 25 JVM subprojects + `:web` SPA | | **Unit tests** | 356, all green | @@ -86,7 +86,7 @@ That target breaks down into roughly 30 work units across 8 phases. About **22 a | P5.6 | `pbc-orders-purchase` — POs + receive flow (RFQs deferred) | ✅ DONE — `2861656` | | P5.7 | `pbc-production` — work orders, routings, operations | ✅ Partial — `fa86718` v3 routings/ops + `35ad8a8` event-driven routings + `1b0f6d8` shop-floor dashboard. `WorkOrderOperation` child entity with per-op sequential state machine (PENDING → IN_PROGRESS → COMPLETED); `WorkOrder.complete()` gated behind every operation reaching COMPLETED; `startOperation` + `completeOperation` verbs stamp `startedAt`/`completedAt` and record operator-entered `actualMinutes` for variance reporting. `WorkOrderRequestedEvent` carries optional `RoutingOperationSpec` list so customer plug-ins can attach routings through api.v1 alone (reference plug-in ships a 4-step CUT → PRINT → FOLD → BIND default). `GET /work-orders/shop-floor` projects IN_PROGRESS work orders into a flat dashboard snapshot with current operation, planned/actual time totals, and operations-completed count. Scheduling / capacity planning / machine FKs still pending. | | P5.8 | `pbc-quality` — inspection plans, results, holds | ✅ Partial — `4835785` — InspectionRecord aggregate live (append-only record of QC decisions with APPROVED/REJECTED + inspected/rejected quantities + source reference + inspector). Plans/templates + cross-PBC reactions (quarantine on rejection, WO scrap) still pending. | -| P5.9 | `pbc-finance` — GL, journal entries, AR/AP minimal | ✅ Partial — minimal AR/AP journal entries driven by events; full GL pending | +| P5.9 | `pbc-finance` — GL, chart of accounts, double-entry journal entries | ✅ Partial — `4d0dd9f` chart of accounts (6 seeded: Cash, AR, Inventory, AP, Revenue, COGS) + `3745de3` double-entry JournalEntryLine child entity with per-account debit/credit legs. Event subscribers now write balanced entries: SO confirm → DR AR / CR Revenue; PO confirm → DR Inventory / CR AP. SPA shows expandable debit/credit lines. Remaining: period close, trial balance, full P&L / balance sheet views. | ### Phase 6 — Web SPA (React + TS) diff --git a/gradle.properties b/gradle.properties index 76acf6a..ed959de 100644 --- a/gradle.properties +++ b/gradle.properties @@ -19,6 +19,6 @@ kotlin.incremental=true # api/api-v1/build.gradle.kts. # Bump this line in lockstep with PROGRESS.md's "Latest version" # row when shipping a new working surface. -vibeerp.version=0.30.0-SNAPSHOT +vibeerp.version=0.31.0-SNAPSHOT vibeerp.api.version=1.0.0-SNAPSHOT vibeerp.group=org.vibeerp