e-arveldaja-mcp 0.29.1 → 0.29.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +34 -0
- package/CLAUDE.md +1 -1
- package/dist/account-postings.d.ts +1 -0
- package/dist/account-postings.d.ts.map +1 -1
- package/dist/account-postings.js +1 -1
- package/dist/account-postings.js.map +1 -1
- package/dist/api/journals.api.d.ts +4 -0
- package/dist/api/journals.api.d.ts.map +1 -1
- package/dist/api/journals.api.js +23 -0
- package/dist/api/journals.api.js.map +1 -1
- package/dist/audit-log.d.ts.map +1 -1
- package/dist/audit-log.js +10 -26
- package/dist/audit-log.js.map +1 -1
- package/dist/bank-posting-duplicate-guard.d.ts +8 -1
- package/dist/bank-posting-duplicate-guard.d.ts.map +1 -1
- package/dist/bank-posting-duplicate-guard.js +24 -10
- package/dist/bank-posting-duplicate-guard.js.map +1 -1
- package/dist/banking/reconciliation/executor.d.ts.map +1 -1
- package/dist/banking/reconciliation/executor.js +2 -1
- package/dist/banking/reconciliation/executor.js.map +1 -1
- package/dist/banking/reconciliation/inter-account-matcher.d.ts.map +1 -1
- package/dist/banking/reconciliation/inter-account-matcher.js +3 -2
- package/dist/banking/reconciliation/inter-account-matcher.js.map +1 -1
- package/dist/banking/reconciliation/operations.d.ts.map +1 -1
- package/dist/banking/reconciliation/operations.js +2 -7
- package/dist/banking/reconciliation/operations.js.map +1 -1
- package/dist/banking/reconciliation/presenter.d.ts +0 -2
- package/dist/banking/reconciliation/presenter.d.ts.map +1 -1
- package/dist/banking/reconciliation/presenter.js +5 -13
- package/dist/banking/reconciliation/presenter.js.map +1 -1
- package/dist/banking/reconciliation/types.d.ts.map +1 -1
- package/dist/booking-guard.d.ts +0 -1
- package/dist/booking-guard.d.ts.map +1 -1
- package/dist/booking-guard.js +2 -3
- package/dist/booking-guard.js.map +1 -1
- package/dist/camt/executor.d.ts.map +1 -1
- package/dist/camt/executor.js +17 -4
- package/dist/camt/executor.js.map +1 -1
- package/dist/camt/journal-coverage.d.ts.map +1 -1
- package/dist/camt/journal-coverage.js +3 -2
- package/dist/camt/journal-coverage.js.map +1 -1
- package/dist/camt/operations.d.ts +1 -1
- package/dist/camt/operations.d.ts.map +1 -1
- package/dist/camt/operations.js +1 -9
- package/dist/camt/operations.js.map +1 -1
- package/dist/camt/parser.d.ts.map +1 -1
- package/dist/camt/parser.js +1 -13
- package/dist/camt/parser.js.map +1 -1
- package/dist/camt/preflight.d.ts +8 -1
- package/dist/camt/preflight.d.ts.map +1 -1
- package/dist/camt/preflight.js +9 -1
- package/dist/camt/preflight.js.map +1 -1
- package/dist/camt/presenter.d.ts +9 -1
- package/dist/camt/presenter.d.ts.map +1 -1
- package/dist/camt/presenter.js +38 -6
- package/dist/camt/presenter.js.map +1 -1
- package/dist/camt/projection.d.ts +6 -1
- package/dist/camt/projection.d.ts.map +1 -1
- package/dist/camt/projection.js +7 -0
- package/dist/camt/projection.js.map +1 -1
- package/dist/camt/types.d.ts +4 -7
- package/dist/camt/types.d.ts.map +1 -1
- package/dist/config.d.ts +2 -0
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +13 -0
- package/dist/config.js.map +1 -1
- package/dist/currency-code.d.ts.map +1 -1
- package/dist/date-utils.d.ts +11 -0
- package/dist/date-utils.d.ts.map +1 -0
- package/dist/date-utils.js +26 -0
- package/dist/date-utils.js.map +1 -0
- package/dist/detail-page.d.ts +35 -0
- package/dist/detail-page.d.ts.map +1 -0
- package/dist/detail-page.js +94 -0
- package/dist/detail-page.js.map +1 -0
- package/dist/document-identifiers.d.ts.map +1 -1
- package/dist/document-identifiers.js +0 -3
- package/dist/document-identifiers.js.map +1 -1
- package/dist/documents/operations.d.ts.map +1 -1
- package/dist/documents/operations.js +53 -78
- package/dist/documents/operations.js.map +1 -1
- package/dist/estonian-tax-rules.d.ts.map +1 -1
- package/dist/estonian-tax-rules.js +4 -10
- package/dist/estonian-tax-rules.js.map +1 -1
- package/dist/file-input-snapshot.d.ts +10 -0
- package/dist/file-input-snapshot.d.ts.map +1 -1
- package/dist/file-input-snapshot.js +15 -2
- package/dist/file-input-snapshot.js.map +1 -1
- package/dist/file-reference-store.d.ts.map +1 -1
- package/dist/file-reference-store.js +11 -59
- package/dist/file-reference-store.js.map +1 -1
- package/dist/guided/process-bank-input.d.ts.map +1 -1
- package/dist/guided/process-bank-input.js +9 -62
- package/dist/guided/process-bank-input.js.map +1 -1
- package/dist/handle-store-core.d.ts +21 -0
- package/dist/handle-store-core.d.ts.map +1 -0
- package/dist/handle-store-core.js +44 -0
- package/dist/handle-store-core.js.map +1 -0
- package/dist/http-client.js +1 -1
- package/dist/http-client.js.map +1 -1
- package/dist/mutation-audit.d.ts.map +1 -1
- package/dist/mutation-audit.js +2 -9
- package/dist/mutation-audit.js.map +1 -1
- package/dist/mutation-outcome.d.ts +2 -1
- package/dist/mutation-outcome.d.ts.map +1 -1
- package/dist/mutation-outcome.js +4 -0
- package/dist/mutation-outcome.js.map +1 -1
- package/dist/opening-balance-journal.d.ts +11 -0
- package/dist/opening-balance-journal.d.ts.map +1 -1
- package/dist/opening-balance-journal.js +13 -0
- package/dist/opening-balance-journal.js.map +1 -1
- package/dist/opening-balance-limitations.d.ts +10 -0
- package/dist/opening-balance-limitations.d.ts.map +1 -1
- package/dist/opening-balance-limitations.js +15 -0
- package/dist/opening-balance-limitations.js.map +1 -1
- package/dist/opening-balance-parse.d.ts.map +1 -1
- package/dist/opening-balance-parse.js +5 -4
- package/dist/opening-balance-parse.js.map +1 -1
- package/dist/operation-outcome.d.ts +16 -0
- package/dist/operation-outcome.d.ts.map +1 -1
- package/dist/operation-outcome.js +27 -0
- package/dist/operation-outcome.js.map +1 -1
- package/dist/operation-result-page.d.ts.map +1 -1
- package/dist/operation-result-page.js +20 -92
- package/dist/operation-result-page.js.map +1 -1
- package/dist/operation-result-store.d.ts +5 -42
- package/dist/operation-result-store.d.ts.map +1 -1
- package/dist/operation-result-store.js +28 -300
- package/dist/operation-result-store.js.map +1 -1
- package/dist/plan-store.d.ts +8 -0
- package/dist/plan-store.d.ts.map +1 -1
- package/dist/plan-store.js +21 -40
- package/dist/plan-store.js.map +1 -1
- package/dist/prompt-arguments.d.ts.map +1 -1
- package/dist/prompt-arguments.js +2 -6
- package/dist/prompt-arguments.js.map +1 -1
- package/dist/public-detail-store.d.ts +122 -0
- package/dist/public-detail-store.d.ts.map +1 -0
- package/dist/public-detail-store.js +329 -0
- package/dist/public-detail-store.js.map +1 -0
- package/dist/receipts/batch-operations.d.ts +1 -1
- package/dist/receipts/batch-operations.d.ts.map +1 -1
- package/dist/receipts/batch-operations.js +12 -29
- package/dist/receipts/batch-operations.js.map +1 -1
- package/dist/receipts/classification-operations.d.ts +1 -1
- package/dist/receipts/classification-operations.d.ts.map +1 -1
- package/dist/receipts/classification-operations.js +1 -6
- package/dist/receipts/classification-operations.js.map +1 -1
- package/dist/records/operations.d.ts.map +1 -1
- package/dist/records/operations.js +1 -6
- package/dist/records/operations.js.map +1 -1
- package/dist/reporting/operations.d.ts.map +1 -1
- package/dist/reporting/operations.js +9 -50
- package/dist/reporting/operations.js.map +1 -1
- package/dist/runtime-safety-context.d.ts.map +1 -1
- package/dist/runtime-safety-context.js +2 -11
- package/dist/runtime-safety-context.js.map +1 -1
- package/dist/sales/invoice-operations.d.ts.map +1 -1
- package/dist/sales/invoice-operations.js +1 -6
- package/dist/sales/invoice-operations.js.map +1 -1
- package/dist/tool-catalog.d.ts +5 -0
- package/dist/tool-catalog.d.ts.map +1 -1
- package/dist/tool-catalog.js +7 -0
- package/dist/tool-catalog.js.map +1 -1
- package/dist/tools/account-balance.d.ts.map +1 -1
- package/dist/tools/account-balance.js +35 -34
- package/dist/tools/account-balance.js.map +1 -1
- package/dist/tools/accounting-inbox-autopilot-service.d.ts.map +1 -1
- package/dist/tools/accounting-inbox-autopilot-service.js +10 -4
- package/dist/tools/accounting-inbox-autopilot-service.js.map +1 -1
- package/dist/tools/aging-analysis.d.ts +6 -0
- package/dist/tools/aging-analysis.d.ts.map +1 -1
- package/dist/tools/aging-analysis.js +57 -101
- package/dist/tools/aging-analysis.js.map +1 -1
- package/dist/tools/analyze-unconfirmed.d.ts.map +1 -1
- package/dist/tools/analyze-unconfirmed.js +2 -1
- package/dist/tools/analyze-unconfirmed.js.map +1 -1
- package/dist/tools/annual-report.d.ts.map +1 -1
- package/dist/tools/annual-report.js +2 -8
- package/dist/tools/annual-report.js.map +1 -1
- package/dist/tools/bank-reconciliation-plan.d.ts +6 -27
- package/dist/tools/bank-reconciliation-plan.d.ts.map +1 -1
- package/dist/tools/bank-reconciliation-plan.js +2 -29
- package/dist/tools/bank-reconciliation-plan.js.map +1 -1
- package/dist/tools/bank-reconciliation.d.ts.map +1 -1
- package/dist/tools/bank-reconciliation.js +3 -3
- package/dist/tools/bank-reconciliation.js.map +1 -1
- package/dist/tools/camt-import.d.ts.map +1 -1
- package/dist/tools/camt-import.js +5 -31
- package/dist/tools/camt-import.js.map +1 -1
- package/dist/tools/camt-plan.d.ts +3 -13
- package/dist/tools/camt-plan.d.ts.map +1 -1
- package/dist/tools/camt-plan.js +5 -8
- package/dist/tools/camt-plan.js.map +1 -1
- package/dist/tools/crud/clients.d.ts.map +1 -1
- package/dist/tools/crud/clients.js +4 -45
- package/dist/tools/crud/clients.js.map +1 -1
- package/dist/tools/crud/journals.d.ts.map +1 -1
- package/dist/tools/crud/journals.js +25 -48
- package/dist/tools/crud/journals.js.map +1 -1
- package/dist/tools/crud/lifecycle-handler.d.ts +16 -0
- package/dist/tools/crud/lifecycle-handler.d.ts.map +1 -0
- package/dist/tools/crud/lifecycle-handler.js +29 -0
- package/dist/tools/crud/lifecycle-handler.js.map +1 -0
- package/dist/tools/crud/products.d.ts.map +1 -1
- package/dist/tools/crud/products.js +4 -45
- package/dist/tools/crud/products.js.map +1 -1
- package/dist/tools/crud/purchase-invoices.d.ts.map +1 -1
- package/dist/tools/crud/purchase-invoices.js +12 -66
- package/dist/tools/crud/purchase-invoices.js.map +1 -1
- package/dist/tools/crud/sale-invoices.d.ts.map +1 -1
- package/dist/tools/crud/sale-invoices.js +4 -45
- package/dist/tools/crud/sale-invoices.js.map +1 -1
- package/dist/tools/crud/shared.d.ts +1 -0
- package/dist/tools/crud/shared.d.ts.map +1 -1
- package/dist/tools/crud/shared.js +6 -1
- package/dist/tools/crud/shared.js.map +1 -1
- package/dist/tools/crud/transactions.d.ts.map +1 -1
- package/dist/tools/crud/transactions.js +6 -41
- package/dist/tools/crud/transactions.js.map +1 -1
- package/dist/tools/currency-rounding.d.ts.map +1 -1
- package/dist/tools/currency-rounding.js +2 -4
- package/dist/tools/currency-rounding.js.map +1 -1
- package/dist/tools/document-audit.d.ts +5 -2
- package/dist/tools/document-audit.d.ts.map +1 -1
- package/dist/tools/document-audit.js +28 -6
- package/dist/tools/document-audit.js.map +1 -1
- package/dist/tools/estonian-tax.d.ts +6 -0
- package/dist/tools/estonian-tax.d.ts.map +1 -1
- package/dist/tools/estonian-tax.js +27 -13
- package/dist/tools/estonian-tax.js.map +1 -1
- package/dist/tools/financial-statements.d.ts +14 -2
- package/dist/tools/financial-statements.d.ts.map +1 -1
- package/dist/tools/financial-statements.js +51 -61
- package/dist/tools/financial-statements.js.map +1 -1
- package/dist/tools/inter-account-utils.d.ts +0 -6
- package/dist/tools/inter-account-utils.d.ts.map +1 -1
- package/dist/tools/inter-account-utils.js +4 -10
- package/dist/tools/inter-account-utils.js.map +1 -1
- package/dist/tools/lightyear-investments.d.ts +5 -1
- package/dist/tools/lightyear-investments.d.ts.map +1 -1
- package/dist/tools/lightyear-investments.js +543 -172
- package/dist/tools/lightyear-investments.js.map +1 -1
- package/dist/tools/lightyear-plan.d.ts +8 -30
- package/dist/tools/lightyear-plan.d.ts.map +1 -1
- package/dist/tools/lightyear-plan.js +4 -32
- package/dist/tools/lightyear-plan.js.map +1 -1
- package/dist/tools/pdf-workflow.d.ts +25 -0
- package/dist/tools/pdf-workflow.d.ts.map +1 -1
- package/dist/tools/pdf-workflow.js +78 -85
- package/dist/tools/pdf-workflow.js.map +1 -1
- package/dist/tools/plan-module-core.d.ts +44 -0
- package/dist/tools/plan-module-core.d.ts.map +1 -0
- package/dist/tools/plan-module-core.js +41 -0
- package/dist/tools/plan-module-core.js.map +1 -0
- package/dist/tools/purchase-vat-defaults.d.ts +19 -0
- package/dist/tools/purchase-vat-defaults.d.ts.map +1 -1
- package/dist/tools/purchase-vat-defaults.js +38 -0
- package/dist/tools/purchase-vat-defaults.js.map +1 -1
- package/dist/tools/receipt-extraction.d.ts.map +1 -1
- package/dist/tools/receipt-extraction.js +6 -8
- package/dist/tools/receipt-extraction.js.map +1 -1
- package/dist/tools/receipt-inbox-types.d.ts.map +1 -1
- package/dist/tools/receipt-inbox.d.ts +14 -1
- package/dist/tools/receipt-inbox.d.ts.map +1 -1
- package/dist/tools/receipt-inbox.js +55 -41
- package/dist/tools/receipt-inbox.js.map +1 -1
- package/dist/tools/recurring-invoices.d.ts.map +1 -1
- package/dist/tools/recurring-invoices.js +5 -4
- package/dist/tools/recurring-invoices.js.map +1 -1
- package/dist/tools/reference-data-tools.d.ts.map +1 -1
- package/dist/tools/reference-data-tools.js +3 -32
- package/dist/tools/reference-data-tools.js.map +1 -1
- package/dist/tools/wise-import.d.ts.map +1 -1
- package/dist/tools/wise-import.js +8 -45
- package/dist/tools/wise-import.js.map +1 -1
- package/dist/wise/executor.d.ts.map +1 -1
- package/dist/wise/executor.js +19 -4
- package/dist/wise/executor.js.map +1 -1
- package/dist/wise/operations.d.ts +1 -1
- package/dist/wise/operations.d.ts.map +1 -1
- package/dist/wise/operations.js +2 -8
- package/dist/wise/operations.js.map +1 -1
- package/dist/wise/preflight.d.ts +1 -5
- package/dist/wise/preflight.d.ts.map +1 -1
- package/dist/wise/preflight.js +5 -48
- package/dist/wise/preflight.js.map +1 -1
- package/dist/wise/presenter.d.ts +114 -7
- package/dist/wise/presenter.d.ts.map +1 -1
- package/dist/wise/presenter.js +54 -26
- package/dist/wise/presenter.js.map +1 -1
- package/dist/wise/projection.d.ts.map +1 -1
- package/dist/wise/projection.js +2 -1
- package/dist/wise/projection.js.map +1 -1
- package/dist/wise/types.d.ts +2 -6
- package/dist/wise/types.d.ts.map +1 -1
- package/dist/wise/types.js.map +1 -1
- package/dist/workflow-page.d.ts.map +1 -1
- package/dist/workflow-page.js +21 -92
- package/dist/workflow-page.js.map +1 -1
- package/dist/workflow-prompt-source.d.ts.map +1 -1
- package/dist/workflow-prompt-source.js +4 -8
- package/dist/workflow-prompt-source.js.map +1 -1
- package/dist/workflow-response.d.ts.map +1 -1
- package/dist/workflow-response.js +12 -3
- package/dist/workflow-response.js.map +1 -1
- package/dist/workflow-state-store.d.ts +3 -38
- package/dist/workflow-state-store.d.ts.map +1 -1
- package/dist/workflow-state-store.js +23 -271
- package/dist/workflow-state-store.js.map +1 -1
- package/package.json +1 -1
- package/server.json +2 -2
- package/dist/compact-batch-response.d.ts +0 -24
- package/dist/compact-batch-response.d.ts.map +0 -1
- package/dist/compact-batch-response.js +0 -43
- package/dist/compact-batch-response.js.map +0 -1
- package/dist/exchange-rate.d.ts +0 -15
- package/dist/exchange-rate.d.ts.map +0 -1
- package/dist/exchange-rate.js +0 -21
- package/dist/exchange-rate.js.map +0 -1
- package/dist/page-reference.d.ts +0 -6
- package/dist/page-reference.d.ts.map +0 -1
- package/dist/page-reference.js +0 -6
- package/dist/page-reference.js.map +0 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,40 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [0.29.2] - 2026-10-14
|
|
6
|
+
|
|
7
|
+
### Fixed
|
|
8
|
+
|
|
9
|
+
- **`book_lightyear_distributions` no longer re-proposes rows booked by hand under another document number.** A bookable row with no `LY:{ref}` / raw-ref journal is now checked against live journals within ±1 day that debit the broker account (and `broker_dimension_id`, when given) with the row's net EUR amount and are not `LY:`-numbered. Such a row goes to `manual_review` with `review_reason.code = "possible_existing_journal"` and `candidate_journal_ids`, instead of `would_create` (seen live: three January 2026 rewards booked under document number `reward` were proposed again, 56 EUR). If the candidate is the row, set its `document_number` to `LY:{reference}`. The candidates are part of the plan fingerprint.
|
|
10
|
+
- **`book_lightyear_distributions` counts already-booked rows as duplicates even when they cannot be auto-booked.** A row whose reference is already booked (e.g. a USD dividend without a provable EUR conversion) was reported as `manual_review`, so `review_required` mixed missing bookings with existing ones. It now counts in `duplicates_skipped`, its FX review warning is dropped, and `review_required` counts only rows with no booking. Zero-bookable statements read the journal list for this.
|
|
11
|
+
- **`book_lightyear_distributions`: a reference shared by rows with different content goes to review row by row.** Before, the conflict check skipped references that already had a journal, and the raw-reference lookup kept only one date per reference, so when one of two same-reference rows was booked the other (missing) row was silently counted as a duplicate. Now every row of such a reference is `reference_conflict` review, with the reference's journals (and a bare-reference journal dated a day off) as `candidate_journal_ids`, until the reference is booked as a whole: every row date has exactly as many journals for the reference (`LY:{ref}` or the raw reference) as differing rows, none sits on another date, and no bare-reference journal sits a day off any of its rows. A journal count cannot tell which row a journal books, so a partial or misdated booking keeps all rows open. Booking each missing row by hand on its date with `document_number` `LY:` plus the reference clears them. Raw-reference journals match any of the reference's row dates.
|
|
12
|
+
- **`book_lightyear_distributions` names earlier unregistered drafts on zero-bookable statements** (`pending_duplicate_journal_ids` and a `batch_confirm_journals` next action), as the plan-bound path does.
|
|
13
|
+
- **The legacy-booking check has a request budget** (300 journal detail reads per run, ~30 s). A row whose check would exceed it goes to review as `legacy_check_incomplete` instead of being booked unchecked. Rows are checked cheapest first, so one busy date no longer uses up the budget for the rest of the statement, and invoice and opening-balance journals (`SALE_INVOICE`, `PURCHASE_INVOICE`, `INITIAL`) and rows of a conflicted reference spend none of it. A journal without postings is read only once per run. A journal read that fails (e.g. a journal deleted meanwhile) marks only that row `legacy_check_incomplete`, and a failed chart read for the dimension scope marks the rows it would check, instead of failing the run. Errors that are not API responses (e.g. an interrupted connection switch) still fail the run.
|
|
14
|
+
- **The legacy-booking check catches a raw-reference booking dated a day off.** A journal numbered with the row's bare reference but dated ±1 day from it (e.g. on the settlement day) missed the exact-date match and was also skipped by the legacy check, so the row was proposed again. The row now goes to review as `reference_journal_date_mismatch` with the journal in `candidate_journal_ids`, also when the row cannot be auto-booked (e.g. a USD dividend, whose own review reason is kept in the message); if it is the row's booking, set its `document_number` to `LY:` plus the reference. The review guidance no longer contains a literal `LY:{reference}` placeholder. `book_lightyear_trades` gets the same check: a trade whose bare-reference journal is dated a day off (e.g. booked on the settlement day) is skipped with `candidate_journal_ids` instead of being booked again.
|
|
15
|
+
- **The legacy-booking check without `broker_dimension_id`** matches any dimension only on a broker account with at most one dimension. When the posting-dimension check itself refuses a dimensionless broker posting (a shared multi-dimension account) the legacy check is skipped, since such a booking is refused anyway and any same-amount bank receipt would match.
|
|
16
|
+
- **`book_lightyear_trades` drops FIFO cost-basis warnings ("Skipping — manual review is required") for sells that are already booked.** Matching still runs over every sell.
|
|
17
|
+
- **`find_missing_documents` marks truncated item lists.** A section cut to 20 items now carries `truncated: true` and `items_returned`, the envelope a top-level `truncated` hint, and the new `detail: "full"` returns every item (counts always covered the full result). The description now says counts are records without their own attachment. The `run_accounting_report` missing-documents report gets the same markers.
|
|
18
|
+
- **CAMT dry runs name existing-journal review rows.** The summary carries `journal_review_count` (skipped rows left unimported because an existing journal may already book them), the workflow summary mentions them, and the approval preview's `duplicate_risk` / `accounting_impact` no longer say "no review items" while `needs_review` holds `camt_journal_review` rows. This holds for the `accounting_inbox` CAMT step too, whose step preview now carries `journal_review_count` and which raises one follow-up per counted row; every CAMT summary counts these rows by one shared rule.
|
|
19
|
+
- **Journal titles over 100 characters are refused before calling the API** (the API answers 409), for `create_journal` / `update_journal` and every other tool that creates or updates journals (Lightyear, dividends, year-end close, imports). The refusal is a definitive rejection: nothing was written. `create_owner_expense_reimbursement` (whose description becomes the title) refuses an over-long description already in its preview, before approval, and `prepare_dividend_package` shortens a long shareholder name (with "…") so its journal title always fits. The generic 409 hint now mentions field length limits.
|
|
20
|
+
- **`compute_client_debt` says what its net position means.** Each account row carries `account_balance_all_clients` and `other_client_entry_count`; the summary carries `filter_scope: "journal_header_client"` and, when other clients share an account, `net_position_status: "requires_counterpart_review"` plus a warning that offsetting postings booked under another client are excluded, so the figure is not proven debt. `account_balance_all_clients` includes a stored opening balance, matching `compute_account_balance`; the opening balance is not counted in `other_client_entry_count`.
|
|
21
|
+
- **Guided `execute_auto_confirm` with `block_on_duplicate` no longer repeats a blocked row as a possible duplicate.** The execution summary did not get the flag, so a blocked row showed both its blocked-duplicate warning and a `possible_duplicate` warning, and the overflow hint pointed at plan sections that do not hold it. The preview already did this right.
|
|
22
|
+
- **`process_accounting_document` refuses deductible VAT fields on a non-VAT-registered company's purchase invoice**, as `create_purchase_invoice` already did. A booking with VAT fields now stops with `manual_review_required` before anything is created; remove the VAT fields or use article 11 with rate `"-"`.
|
|
23
|
+
- **`create_purchase_invoice_from_pdf` and `create_journal` sandbox-wrap the document number of a possible duplicate posting**, not only its journal title. The bank-transaction and reconciliation tools already did; all of them now share one helper.
|
|
24
|
+
- **Own bank accounts match an IBAN written with spaces.** An account stored as `EE12 3456 …` was not recognised as own when a statement or transaction carried the compact `EE123456…` (or the other way round), so inter-account transfers were missed in reconciliation, `analyze_unconfirmed_transactions` and the CAMT existing-journal check. Every side now uses the same IBAN normalisation.
|
|
25
|
+
- **`import_opening_balances` rounds half cents like the rest of the server** (1.005 → 1.01, not 1.00).
|
|
26
|
+
- **Tool date inputs refuse dates that do not exist** (e.g. `2026-02-31`) in every CRUD tool date field (`list_transactions`, `create_transaction`, `list_journals`, `create_journal`, `create_purchase_invoice`, the sale-invoice tools), as the CAMT tools already did.
|
|
27
|
+
- **The audit log's merge (on a connection relabel) writes through an unpredictable, exclusively created temp file** instead of `<log>.tmp-<pid>`, so a file or symlink planted at the predictable name can no longer receive or replace the log. Clearing the log uses the same helper. Both now refuse a log file that is itself a symlink (the relabel is rolled back and the clear reports `cleared: false`).
|
|
28
|
+
- **`check_vat_registration_threshold` defaults to the current Estonian calendar year.** Before, it used the UTC year, which is still the old year for the first two or three hours of 1 January in Tallinn.
|
|
29
|
+
- **The remaining date checks refuse dates that do not exist.** The `get_session_log` `date_from`/`date_to` filters (before: `2026-02-31` rolled over to 3 March), `create_recurring_sale_invoices` `target_date`/`target_journal_date` (now refused by the input schema instead of failing inside the tool), and `month_end_close_checklist` `month` (`2026-13` was accepted) now use the shared strict calendar check, as do the prompt-argument, tax-tool, CAMT/Wise import, Lightyear and receipt-OCR date parsers. Years 0000-0099 are judged by their own calendar everywhere: before, some checks treated `0050` as `1950` (refusing real dates such as `0050-03-01`), and a workflow prompt for month `0050-02` derived the end date `1950-02-28`. An impossible date read from a receipt is still treated as no date, and so is a receipt year before 1900 (an OCR misread).
|
|
30
|
+
|
|
31
|
+
- **A reviewed import or booking plan now executes only against the exact file it was reviewed on.** `process_camt053` / `import_camt053`, `import_wise_transactions`, `process_bank_input`, `book_lightyear_trades` (statement and capital-gains file), `book_lightyear_distributions` and `process_accounting_document` `mode='create'` used to compare only the file's content digest at execute (the documents path checked the caller's `source_sha256` and the upload name). They now compare the whole stored source identity: content digest, size, extension, the canonical location of a local file, and whether it was a local file or inline base64. Executing a plan against an identical copy at another path, a moved or re-linked file, or a local file in place of the reviewed inline upload (or the reverse) is refused with `plan_drift` and nothing is written; re-run the dry run / `mode='prepare'` on the file you want to book. A file reference and a direct path that resolve to the same file still match. A malformed stored identity is refused the same way.
|
|
32
|
+
|
|
33
|
+
### Internal
|
|
34
|
+
|
|
35
|
+
- The publish workflow waits (up to 10 minutes) until npm serves the new version before registering it in the MCP registry, which validates the package against npm.
|
|
36
|
+
- One shared source for the mutation operation names (`MUTATION_OPERATIONS`), the tool exposure flags (`TOOL_EXPOSURE_KEYS`, checked at compile time against `ToolExposureConfig`), the runtime-scope compare/clone used by the four safety stores, and the granular-tool gate (`isGranularTool`, from the tool catalog), replacing hand-kept copies.
|
|
37
|
+
- One shared dry-run→execute source check, `assertFileInputSnapshotIdentity` (`src/file-input-snapshot.ts`), replaces the hand-rolled digest comparisons in the CAMT, Wise, Lightyear (trades and distributions) and accounting-document executors; `assertMatchingFileInputSnapshot` is now this check over a fresh capture.
|
|
38
|
+
|
|
5
39
|
## [0.29.1] - 2026-10-12
|
|
6
40
|
|
|
7
41
|
### Internal
|
package/CLAUDE.md
CHANGED
|
@@ -459,7 +459,7 @@ All mutating API methods (`create`, `update`, `delete`, `confirm`, `deactivate`,
|
|
|
459
459
|
- **BRICEKSP** (IE000GWTNRJ7): money market cash fund, always excluded from trades
|
|
460
460
|
- **FX pairing**: Foreign currency trades (e.g., USD) are paired with CN-xxx Conversion entries by date + amount match. Consumed conversions are tracked to prevent double-matching.
|
|
461
461
|
- **Sells require capital gains file**: Cost basis comes from the FIFO capital gains CSV. Sells without cost basis data are skipped with a warning.
|
|
462
|
-
- **Duplicate detection**: Journal `document_number` field stores `LY:{reference}` (e.g., `LY:OR-EVN9C76R7A`)
|
|
462
|
+
- **Duplicate detection**: Journal `document_number` field stores `LY:{reference}` (e.g., `LY:OR-EVN9C76R7A`). A distribution row with no reference match but a non-`LY:` journal debiting the broker account/dimension with its net EUR amount within ±1 day goes to review (`possible_existing_journal`, `candidate_journal_ids`) — legacy hand bookings used generic numbers such as `reward`
|
|
463
463
|
- **Dry run default**: Both `book_lightyear_trades` and `book_lightyear_distributions` default to `dry_run=true`
|
|
464
464
|
|
|
465
465
|
## Security Notes
|
|
@@ -13,5 +13,6 @@ export interface AccountPostingRow {
|
|
|
13
13
|
export declare function listAccountDimensionPostings(journals: Journal[], accountId: number, opts?: {
|
|
14
14
|
dateFrom?: string;
|
|
15
15
|
dateTo?: string;
|
|
16
|
+
includeUnregistered?: boolean;
|
|
16
17
|
}): AccountPostingRow[];
|
|
17
18
|
//# sourceMappingURL=account-postings.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account-postings.d.ts","sourceRoot":"","sources":["../src/account-postings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,GAAG,GAAG,GAAG,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,OAAO,EAAE,EACnB,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"account-postings.d.ts","sourceRoot":"","sources":["../src/account-postings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAE9C,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,GAAG,GAAG,GAAG,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,wBAAgB,4BAA4B,CAC1C,QAAQ,EAAE,OAAO,EAAE,EACnB,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAAE,GAC3E,iBAAiB,EAAE,CAwBrB"}
|
package/dist/account-postings.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export function listAccountDimensionPostings(journals, accountId, opts) {
|
|
2
2
|
const rows = [];
|
|
3
3
|
for (const journal of journals) {
|
|
4
|
-
if (journal.is_deleted || !journal.registered)
|
|
4
|
+
if (journal.is_deleted || (!journal.registered && opts?.includeUnregistered !== true))
|
|
5
5
|
continue;
|
|
6
6
|
if (opts?.dateFrom && journal.effective_date < opts.dateFrom)
|
|
7
7
|
continue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account-postings.js","sourceRoot":"","sources":["../src/account-postings.ts"],"names":[],"mappings":"AAcA,MAAM,UAAU,4BAA4B,CAC1C,QAAmB,EACnB,SAAiB,EACjB,
|
|
1
|
+
{"version":3,"file":"account-postings.js","sourceRoot":"","sources":["../src/account-postings.ts"],"names":[],"mappings":"AAcA,MAAM,UAAU,4BAA4B,CAC1C,QAAmB,EACnB,SAAiB,EACjB,IAA4E;IAE5E,MAAM,IAAI,GAAwB,EAAE,CAAC;IACrC,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,IAAI,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,IAAI,IAAI,EAAE,mBAAmB,KAAK,IAAI,CAAC;YAAE,SAAS;QAChG,IAAI,IAAI,EAAE,QAAQ,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,QAAQ;YAAE,SAAS;QACvE,IAAI,IAAI,EAAE,MAAM,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,MAAM;YAAE,SAAS;QACnE,IAAI,CAAC,OAAO,CAAC,QAAQ;YAAE,SAAS;QAChC,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACjC,IAAI,CAAC,CAAC,WAAW,KAAK,SAAS,IAAI,CAAC,CAAC,UAAU;gBAAE,SAAS;YAC1D,IAAI,CAAC,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,CAAC,IAAI,KAAK,GAAG;gBAAE,SAAS;YAC/C,IAAI,CAAC,IAAI,CAAC;gBACR,UAAU,EAAE,OAAO,CAAC,EAAG;gBACvB,aAAa,EAAE,OAAO,CAAC,KAAK,IAAI,EAAE;gBAClC,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,IAAI;gBAChD,cAAc,EAAE,OAAO,CAAC,cAAc,IAAI,IAAI;gBAC9C,IAAI,EAAE,OAAO,CAAC,cAAc;gBAC5B,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,MAAM,EAAE,CAAC,CAAC,WAAW,IAAI,CAAC,CAAC,MAAM;gBACjC,sBAAsB,EAAE,CAAC,CAAC,sBAAsB,IAAI,IAAI;gBACxD,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI;aACvC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -2,6 +2,10 @@ import type { HttpClient } from "../http-client.js";
|
|
|
2
2
|
import type { Journal, ApiResponse } from "../types/api.js";
|
|
3
3
|
import type { CreateJournalRequest, UpdateJournalRequest } from "../types/mutations.js";
|
|
4
4
|
import { BaseResource } from "./base-resource.js";
|
|
5
|
+
/** Backend limit: POST/PATCH /journals answers 409 for a longer title. */
|
|
6
|
+
export declare const JOURNAL_TITLE_MAX_LENGTH = 100;
|
|
7
|
+
/** The over-long-title message, or undefined when `title` fits. */
|
|
8
|
+
export declare function journalTitleLengthMessage(title: unknown): string | undefined;
|
|
5
9
|
export declare class JournalsApi extends BaseResource<Journal> {
|
|
6
10
|
constructor(client: HttpClient);
|
|
7
11
|
create(data: CreateJournalRequest): Promise<ApiResponse>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"journals.api.d.ts","sourceRoot":"","sources":["../../src/api/journals.api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAE,YAAY,EAAS,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"journals.api.d.ts","sourceRoot":"","sources":["../../src/api/journals.api.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AACxF,OAAO,EAAE,YAAY,EAAS,MAAM,oBAAoB,CAAC;AAGzD,0EAA0E;AAC1E,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAE5C,mEAAmE;AACnE,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAG5E;AAoBD,qBAAa,WAAY,SAAQ,YAAY,CAAC,OAAO,CAAC;IACpD,YAAY,MAAM,EAAE,UAAU,EAE7B;IAKc,MAAM,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,WAAW,CAAC,CAGtE;IAEc,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,WAAW,CAAC,CAGlF;IAED;;;;OAIG;IACG,mBAAmB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CA6B9C;IAEK,OAAO,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAY9C;IAEK,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CASjD;CAEF"}
|
package/dist/api/journals.api.js
CHANGED
|
@@ -1,4 +1,25 @@
|
|
|
1
1
|
import { BaseResource, cache } from "./base-resource.js";
|
|
2
|
+
import { HttpError } from "../http-client.js";
|
|
3
|
+
/** Backend limit: POST/PATCH /journals answers 409 for a longer title. */
|
|
4
|
+
export const JOURNAL_TITLE_MAX_LENGTH = 100;
|
|
5
|
+
/** The over-long-title message, or undefined when `title` fits. */
|
|
6
|
+
export function journalTitleLengthMessage(title) {
|
|
7
|
+
if (typeof title !== "string" || title.length <= JOURNAL_TITLE_MAX_LENGTH)
|
|
8
|
+
return undefined;
|
|
9
|
+
return `Journal title is ${title.length} characters; e-arveldaja accepts at most ${JOURNAL_TITLE_MAX_LENGTH}. Refused before sending; nothing was written.`;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Refuse an over-long title before sending, for every journal creator (CRUD
|
|
13
|
+
* tools and the Lightyear/dividend/year-end/import flows alike). Raised as a
|
|
14
|
+
* 4xx HttpError so mutation-outcome classification reads it as definitive:
|
|
15
|
+
* nothing was written.
|
|
16
|
+
*/
|
|
17
|
+
function assertJournalTitleLength(title, method, path) {
|
|
18
|
+
const message = journalTitleLengthMessage(title);
|
|
19
|
+
if (message === undefined)
|
|
20
|
+
return;
|
|
21
|
+
throw new HttpError(message, 400, method, path, { recovery_hint: "Shorten the journal title and retry; put longer explanations in the attached source document." });
|
|
22
|
+
}
|
|
2
23
|
export class JournalsApi extends BaseResource {
|
|
3
24
|
constructor(client) {
|
|
4
25
|
super(client, "/journals");
|
|
@@ -7,9 +28,11 @@ export class JournalsApi extends BaseResource {
|
|
|
7
28
|
// that omit server-managed fields (id, number, registered, register_date,
|
|
8
29
|
// operations_id, operation_type, …). Delegates to the base mutate/cache logic.
|
|
9
30
|
async create(data) {
|
|
31
|
+
assertJournalTitleLength(data.title, "POST", this.basePath);
|
|
10
32
|
return super.create(data);
|
|
11
33
|
}
|
|
12
34
|
async update(id, data) {
|
|
35
|
+
assertJournalTitleLength(data.title, "PATCH", `${this.basePath}/${id}`);
|
|
13
36
|
return super.update(id, data);
|
|
14
37
|
}
|
|
15
38
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"journals.api.js","sourceRoot":"","sources":["../../src/api/journals.api.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"journals.api.js","sourceRoot":"","sources":["../../src/api/journals.api.ts"],"names":[],"mappings":"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"}
|
package/dist/audit-log.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit-log.d.ts","sourceRoot":"","sources":["../src/audit-log.ts"],"names":[],"mappings":"AAAA;;;;GAIG;
|
|
1
|
+
{"version":3,"file":"audit-log.d.ts","sourceRoot":"","sources":["../src/audit-log.ts"],"names":[],"mappings":"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"}
|
package/dist/audit-log.js
CHANGED
|
@@ -4,11 +4,12 @@
|
|
|
4
4
|
* `{projectRoot}/logs/{companyOrConnectionLabel}.audit.md`.
|
|
5
5
|
*/
|
|
6
6
|
import { appendFileSync, chmodSync, existsSync, mkdirSync, readFileSync, readdirSync, renameSync, unlinkSync, writeFileSync, } from "fs";
|
|
7
|
-
import { randomUUID } from "crypto";
|
|
8
7
|
import { join } from "path";
|
|
9
8
|
import { z } from "zod";
|
|
10
9
|
import { normalizeAuditLabel, sanitizeAuditLogName, } from "./audit-log-labels.js";
|
|
11
10
|
import { withOwnedFileLockSync } from "./file-lock.js";
|
|
11
|
+
import { writePrivateFile } from "./config.js";
|
|
12
|
+
import { isStrictDate } from "./strict-date.js";
|
|
12
13
|
// ---------------------------------------------------------------------------
|
|
13
14
|
// Shared audit filter vocabularies (single source of truth)
|
|
14
15
|
//
|
|
@@ -282,14 +283,9 @@ function mergeAuditLogFiles(sourcePath, targetPath) {
|
|
|
282
283
|
return left.index - right.index;
|
|
283
284
|
})
|
|
284
285
|
.map((entry) => entry.section);
|
|
285
|
-
// Atomically replace the target
|
|
286
|
-
//
|
|
287
|
-
|
|
288
|
-
writeFileSync(temporary, renderMergedSections(mergedSections), {
|
|
289
|
-
encoding: "utf-8",
|
|
290
|
-
mode: PRIVATE_FILE_MODE,
|
|
291
|
-
});
|
|
292
|
-
renameSync(temporary, targetPath);
|
|
286
|
+
// Atomically replace the target through an unpredictable O_EXCL temp file,
|
|
287
|
+
// so a reader never sees a half-written merge.
|
|
288
|
+
writePrivateFile(targetPath, renderMergedSections(mergedSections));
|
|
293
289
|
enforcePrivateFileMode(targetPath);
|
|
294
290
|
unlinkSync(sourcePath);
|
|
295
291
|
}
|
|
@@ -774,6 +770,10 @@ function parseFilterBoundary(value, kind) {
|
|
|
774
770
|
throw new Error(`Invalid ${kind === "from" ? "date_from" : "date_to"} filter: empty value`);
|
|
775
771
|
}
|
|
776
772
|
if (DATE_ONLY_RE.test(trimmed)) {
|
|
773
|
+
if (!isStrictDate(trimmed)) {
|
|
774
|
+
throw new Error(`Invalid ${kind === "from" ? "date_from" : "date_to"} filter: "${value}". ` +
|
|
775
|
+
"Expected YYYY-MM-DD or ISO 8601.");
|
|
776
|
+
}
|
|
777
777
|
const suffix = kind === "from" ? "T00:00:00.000Z" : "T23:59:59.999Z";
|
|
778
778
|
const parsed = Date.parse(trimmed + suffix);
|
|
779
779
|
if (Number.isFinite(parsed))
|
|
@@ -886,23 +886,7 @@ export function clearAuditLog() {
|
|
|
886
886
|
// Write the tombstone to a private O_EXCL temp file and rename it over the
|
|
887
887
|
// log: a failed write leaves the original log intact instead of a
|
|
888
888
|
// truncated one while reporting `cleared: false`.
|
|
889
|
-
|
|
890
|
-
try {
|
|
891
|
-
writeFileSync(tempPath, renderEntry(tombstone) + ENTRY_SEPARATOR, {
|
|
892
|
-
encoding: "utf-8",
|
|
893
|
-
mode: PRIVATE_FILE_MODE,
|
|
894
|
-
flag: "wx",
|
|
895
|
-
});
|
|
896
|
-
enforcePrivateFileMode(tempPath);
|
|
897
|
-
renameSync(tempPath, filePath);
|
|
898
|
-
}
|
|
899
|
-
catch (error) {
|
|
900
|
-
try {
|
|
901
|
-
unlinkSync(tempPath);
|
|
902
|
-
}
|
|
903
|
-
catch { /* best-effort */ }
|
|
904
|
-
throw error;
|
|
905
|
-
}
|
|
889
|
+
writePrivateFile(filePath, renderEntry(tombstone) + ENTRY_SEPARATOR);
|
|
906
890
|
return { cleared: true, entries_removed: entriesRemoved };
|
|
907
891
|
});
|
|
908
892
|
}
|
package/dist/audit-log.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"audit-log.js","sourceRoot":"","sources":["../src/audit-log.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"audit-log.js","sourceRoot":"","sources":["../src/audit-log.ts"],"names":[],"mappings":"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"}
|
|
@@ -82,12 +82,19 @@ export declare function resolveBankDimensionsSafe(api: {
|
|
|
82
82
|
* `candidate.accountId` within `+/-windowDays` of `candidate.date`, matching
|
|
83
83
|
* direction and amount (within `amountTolerance`), filtered by dimension
|
|
84
84
|
* (`null` = any) and `excludeJournalIds`. Sorted by day distance, then
|
|
85
|
-
* journal id.
|
|
85
|
+
* journal id. Only registered journals count unless `includeUnregistered`.
|
|
86
86
|
*/
|
|
87
87
|
export declare function findDuplicatePostingsInJournals(journals: Journal[], candidate: DuplicatePostingCandidate, opts?: {
|
|
88
88
|
windowDays?: number;
|
|
89
89
|
amountTolerance?: number;
|
|
90
|
+
includeUnregistered?: boolean;
|
|
90
91
|
}): DuplicatePostingSuspect[];
|
|
92
|
+
/**
|
|
93
|
+
* Suspects as MCP output: the journal title and document number are
|
|
94
|
+
* upstream free text, so both are sandbox-wrapped. The one rendering every
|
|
95
|
+
* `possible_duplicate_postings` list uses.
|
|
96
|
+
*/
|
|
97
|
+
export declare function renderDuplicatePostingSuspects(suspects: readonly DuplicatePostingSuspect[]): Array<Record<string, unknown>>;
|
|
91
98
|
/**
|
|
92
99
|
* API-facing scan: loads `opts.preloadedJournals` or
|
|
93
100
|
* `api.journals.listAllWithPostings()` and runs the pure matcher over it.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bank-posting-duplicate-guard.d.ts","sourceRoot":"","sources":["../src/bank-posting-duplicate-guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"bank-posting-duplicate-guard.d.ts","sourceRoot":"","sources":["../src/bank-posting-duplicate-guard.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { listAccountDimensionPostings } from "./account-postings.js";
|
|
2
2
|
import { roundMoney } from "./money.js";
|
|
3
|
+
import { wrapUntrustedOcr } from "./mcp-json.js";
|
|
4
|
+
import { toUtcDay } from "./date-utils.js";
|
|
3
5
|
/**
|
|
4
6
|
* Cross-mechanism bank-posting duplicate guard — core matching logic.
|
|
5
7
|
*
|
|
@@ -18,23 +20,19 @@ import { roundMoney } from "./money.js";
|
|
|
18
20
|
export const DUPLICATE_SCAN_WINDOW_DAYS = 7;
|
|
19
21
|
export const DUPLICATE_AMOUNT_TOLERANCE = 0.01;
|
|
20
22
|
// ---------------------------------------------------------------------------
|
|
21
|
-
// Date helpers — UTC day arithmetic on split ISO parts (no ambient time)
|
|
22
|
-
//
|
|
23
|
+
// Date helpers — UTC day arithmetic on split ISO parts (no ambient time),
|
|
24
|
+
// built on the shared `toUtcDay` (src/date-utils.ts).
|
|
23
25
|
// ---------------------------------------------------------------------------
|
|
24
26
|
const MS_PER_DAY = 86_400_000;
|
|
25
|
-
function toUtcDayNumber(date) {
|
|
26
|
-
const [y, m, d] = date.slice(0, 10).split("-").map(Number);
|
|
27
|
-
return Date.UTC(y, (m ?? 1) - 1, d ?? 1);
|
|
28
|
-
}
|
|
29
27
|
function shiftIsoDate(date, deltaDays) {
|
|
30
|
-
const shifted = new Date(
|
|
28
|
+
const shifted = new Date(toUtcDay(date) + deltaDays * MS_PER_DAY);
|
|
31
29
|
const y = shifted.getUTCFullYear();
|
|
32
30
|
const m = String(shifted.getUTCMonth() + 1).padStart(2, "0");
|
|
33
31
|
const d = String(shifted.getUTCDate()).padStart(2, "0");
|
|
34
32
|
return `${y}-${m}-${d}`;
|
|
35
33
|
}
|
|
36
34
|
function utcDayDiff(a, b) {
|
|
37
|
-
return Math.round(Math.abs(
|
|
35
|
+
return Math.round(Math.abs(toUtcDay(a) - toUtcDay(b)) / MS_PER_DAY);
|
|
38
36
|
}
|
|
39
37
|
/**
|
|
40
38
|
* Join bank accounts to their account dimensions: `{dimensionId, accountId,
|
|
@@ -93,14 +91,18 @@ export async function resolveBankDimensionsSafe(api) {
|
|
|
93
91
|
* `candidate.accountId` within `+/-windowDays` of `candidate.date`, matching
|
|
94
92
|
* direction and amount (within `amountTolerance`), filtered by dimension
|
|
95
93
|
* (`null` = any) and `excludeJournalIds`. Sorted by day distance, then
|
|
96
|
-
* journal id.
|
|
94
|
+
* journal id. Only registered journals count unless `includeUnregistered`.
|
|
97
95
|
*/
|
|
98
96
|
export function findDuplicatePostingsInJournals(journals, candidate, opts) {
|
|
99
97
|
const windowDays = opts?.windowDays ?? DUPLICATE_SCAN_WINDOW_DAYS;
|
|
100
98
|
const tolerance = opts?.amountTolerance ?? DUPLICATE_AMOUNT_TOLERANCE;
|
|
101
99
|
const from = shiftIsoDate(candidate.date, -windowDays);
|
|
102
100
|
const to = shiftIsoDate(candidate.date, windowDays);
|
|
103
|
-
const rows = listAccountDimensionPostings(journals, candidate.accountId, {
|
|
101
|
+
const rows = listAccountDimensionPostings(journals, candidate.accountId, {
|
|
102
|
+
dateFrom: from,
|
|
103
|
+
dateTo: to,
|
|
104
|
+
includeUnregistered: opts?.includeUnregistered,
|
|
105
|
+
});
|
|
104
106
|
const suspects = [];
|
|
105
107
|
for (const row of rows) {
|
|
106
108
|
if (candidate.dimensionId !== null && row.accounts_dimensions_id !== candidate.dimensionId)
|
|
@@ -125,6 +127,18 @@ export function findDuplicatePostingsInJournals(journals, candidate, opts) {
|
|
|
125
127
|
}
|
|
126
128
|
return suspects.sort((a, b) => a.day_distance - b.day_distance || a.journal_id - b.journal_id);
|
|
127
129
|
}
|
|
130
|
+
/**
|
|
131
|
+
* Suspects as MCP output: the journal title and document number are
|
|
132
|
+
* upstream free text, so both are sandbox-wrapped. The one rendering every
|
|
133
|
+
* `possible_duplicate_postings` list uses.
|
|
134
|
+
*/
|
|
135
|
+
export function renderDuplicatePostingSuspects(suspects) {
|
|
136
|
+
return suspects.map(s => ({
|
|
137
|
+
...s,
|
|
138
|
+
journal_title: wrapUntrustedOcr(s.journal_title) ?? "",
|
|
139
|
+
document_number: s.document_number == null ? s.document_number : wrapUntrustedOcr(s.document_number) ?? "",
|
|
140
|
+
}));
|
|
141
|
+
}
|
|
128
142
|
/**
|
|
129
143
|
* API-facing scan: loads `opts.preloadedJournals` or
|
|
130
144
|
* `api.journals.listAllWithPostings()` and runs the pure matcher over it.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bank-posting-duplicate-guard.js","sourceRoot":"","sources":["../src/bank-posting-duplicate-guard.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrE,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"bank-posting-duplicate-guard.js","sourceRoot":"","sources":["../src/bank-posting-duplicate-guard.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/banking/reconciliation/executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAiB7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"executor.d.ts","sourceRoot":"","sources":["../../../src/banking/reconciliation/executor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAiB7D,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,iCAAiC,CAAC;AA4D5E,OAAO,KAAK,EAEV,qBAAqB,EACrB,0BAA0B,EAC1B,iBAAiB,EAGjB,mBAAmB,EAGnB,qBAAqB,EACrB,0BAA0B,EAC1B,iBAAiB,EACjB,uBAAuB,EACvB,mBAAmB,EAInB,yBAAyB,EAKzB,mBAAmB,EACpB,MAAM,YAAY,CAAC;AAiBpB,eAAO,MAAM,+BAA+B,KAAK,CAAC;AAUlD,MAAM,MAAM,YAAY,GACpB;IAAE,IAAI,EAAE,sBAAsB,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GACnE;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAC/D;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC;AAE9D,MAAM,MAAM,eAAe,CAAC,CAAC,IACzB;IAAE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;CAAE,GACvC;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAA;CAAE,CAAC;AAE3D;;;;GAIG;AACH,qBAAa,kCAAmC,SAAQ,KAAK;IAC/C,QAAQ,CAAC,OAAO,EAAE,YAAY;IAA1C,YAAqB,OAAO,EAAE,YAAY,EAGzC;CACF;AAYD,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,UAAU,EACf,KAAK,EAAE,mBAAmB,GACzB,OAAO,CAAC,yBAAyB,CAAC,CAmMpC;AA0TD,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,UAAU,EACf,oBAAoB,EAAE,oBAAoB,EAC1C,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,mBAAmB,CAAC,CAI9B;AAED,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,UAAU,EACf,oBAAoB,EAAE,oBAAoB,EAC1C,KAAK,EAAE,0BAA0B,GAChC,OAAO,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC,CA0BjD;AAID,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,UAAU,EACf,KAAK,EAAE,iBAAiB,EACxB,IAAI,CAAC,EAAE;IAAE,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GACzB,OAAO,CAAC,uBAAuB,CAAC,CAi4BlC;AAgBD,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,UAAU,EACf,oBAAoB,EAAE,oBAAoB,EAC1C,KAAK,EAAE,iBAAiB,GACvB,OAAO,CAAC,mBAAmB,CAAC,CA6B9B;AAED,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,UAAU,EACf,oBAAoB,EAAE,oBAAoB,EAC1C,KAAK,EAAE,0BAA0B,GAChC,OAAO,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC,CAqIjD"}
|
|
@@ -10,7 +10,8 @@ import { LinkedInvoiceClientMismatchError, LinkedInvoiceClientsAmbiguousError, }
|
|
|
10
10
|
import { PlanStoreError } from "../../plan-store.js";
|
|
11
11
|
import { isRecord } from "../../record-utils.js";
|
|
12
12
|
import { BookingGuard } from "../../booking-guard.js";
|
|
13
|
-
import { buildBankAccountLookups, normalizeReference
|
|
13
|
+
import { buildBankAccountLookups, normalizeReference } from "../../tools/inter-account-utils.js";
|
|
14
|
+
import { toUtcDay } from "../../date-utils.js";
|
|
14
15
|
import { findDuplicateBankPostings, resolveBankDimensionsSafe, } from "../../bank-posting-duplicate-guard.js";
|
|
15
16
|
import { BANK_RECONCILIATION_PLAN_DOMAIN, buildReconciliationExecutionPlanInput, canonicalPlanJson, executeReconciliationCommands, reconClientUpdateCommandId, reconInvoiceConfirmCommandId, reconTransferConfirmCommandId, reconDeleteDuplicateCommandId, RECON_CONFIRM_INVOICE_CATEGORY, RECON_CONFIRM_TRANSFER_CATEGORY, RECON_DELETE_DUPLICATE_CATEGORY, RECON_UPDATE_CLIENT_CATEGORY, stripUndefinedDeep, } from "../../tools/bank-reconciliation-plan.js";
|
|
16
17
|
import { buildInvoiceIndex, getIndexedCandidates } from "./invoice-index.js";
|