@accounter/server 0.0.8-alpha-20251208003127-fcde6629e3144a862c1002f2ef695144b3fb25ac → 0.0.9-alpha-20251209101144-c5bcee3a42b5e28a5c7b8d596055b57883dd5f9b

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.
Files changed (2) hide show
  1. package/CHANGELOG.md +182 -173
  2. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -1,6 +1,183 @@
1
1
  # @accounter/server
2
2
 
3
- ## 0.0.8-alpha-20251208003127-fcde6629e3144a862c1002f2ef695144b3fb25ac
3
+ ## 0.0.9-alpha-20251209101144-c5bcee3a42b5e28a5c7b8d596055b57883dd5f9b
4
+
5
+ ### Patch Changes
6
+
7
+ - [#2744](https://github.com/Urigo/accounter-fullstack/pull/2744)
8
+ [`ef68321`](https://github.com/Urigo/accounter-fullstack/commit/ef68321608d60a7208e82a2c413f27beb502e3cc)
9
+ Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
10
+ - Updated dependency
11
+ [`@graphql-hive/yoga@0.43.1` ↗︎](https://www.npmjs.com/package/@graphql-hive/yoga/v/0.43.1) (from
12
+ `0.43.0`, in `dependencies`)
13
+ - Updated dependency [`ai@5.0.101` ↗︎](https://www.npmjs.com/package/ai/v/5.0.101) (from `5.0.100`,
14
+ in `dependencies`)
15
+ - Updated dependency [`zod@4.1.13` ↗︎](https://www.npmjs.com/package/zod/v/4.1.13) (from `4.1.12`,
16
+ in `dependencies`)
17
+
18
+ - [#2746](https://github.com/Urigo/accounter-fullstack/pull/2746)
19
+ [`933a71e`](https://github.com/Urigo/accounter-fullstack/commit/933a71ec5640f6ef18d79ad5ebb9414ea05dc352)
20
+ Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
21
+ - Updated dependency [`playwright@1.57.0` ↗︎](https://www.npmjs.com/package/playwright/v/1.57.0)
22
+ (from `1.56.1`, in `dependencies`)
23
+
24
+ - [#2753](https://github.com/Urigo/accounter-fullstack/pull/2753)
25
+ [`8edd047`](https://github.com/Urigo/accounter-fullstack/commit/8edd047c161f54b186972bf43151d68e837d845b)
26
+ Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
27
+ - Updated dependency
28
+ [`@ai-sdk/anthropic@2.0.49` ↗︎](https://www.npmjs.com/package/@ai-sdk/anthropic/v/2.0.49) (from
29
+ `2.0.45`, in `dependencies`)
30
+ - Updated dependency [`ai@5.0.103` ↗︎](https://www.npmjs.com/package/ai/v/5.0.103) (from `5.0.101`,
31
+ in `dependencies`)
32
+
33
+ - [#2757](https://github.com/Urigo/accounter-fullstack/pull/2757)
34
+ [`51b43e1`](https://github.com/Urigo/accounter-fullstack/commit/51b43e1de23746c5c8983cb5e8ee89e6b762666e)
35
+ Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
36
+ - Updated dependency
37
+ [`@ai-sdk/anthropic@2.0.50` ↗︎](https://www.npmjs.com/package/@ai-sdk/anthropic/v/2.0.50) (from
38
+ `2.0.49`, in `dependencies`)
39
+ - Updated dependency [`ai@5.0.104` ↗︎](https://www.npmjs.com/package/ai/v/5.0.104) (from `5.0.103`,
40
+ in `dependencies`)
41
+
42
+ - [#2758](https://github.com/Urigo/accounter-fullstack/pull/2758)
43
+ [`a399ad1`](https://github.com/Urigo/accounter-fullstack/commit/a399ad1fc2e0c954eb75a687ec355c82621df4b4)
44
+ Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
45
+ - Updated dependency
46
+ [`@graphql-yoga/plugin-defer-stream@3.17.0` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-defer-stream/v/3.17.0)
47
+ (from `3.16.2`, in `dependencies`)
48
+ - Updated dependency
49
+ [`graphql-yoga@5.17.0` ↗︎](https://www.npmjs.com/package/graphql-yoga/v/5.17.0) (from `5.16.2`,
50
+ in `dependencies`)
51
+
52
+ - [#2765](https://github.com/Urigo/accounter-fullstack/pull/2765)
53
+ [`cbf2717`](https://github.com/Urigo/accounter-fullstack/commit/cbf27175d72499a6f7509eecee351f4831227f12)
54
+ Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
55
+ - Updated dependency
56
+ [`@ai-sdk/anthropic@2.0.53` ↗︎](https://www.npmjs.com/package/@ai-sdk/anthropic/v/2.0.53) (from
57
+ `2.0.50`, in `dependencies`)
58
+ - Updated dependency [`ai@5.0.106` ↗︎](https://www.npmjs.com/package/ai/v/5.0.106) (from `5.0.104`,
59
+ in `dependencies`)
60
+
61
+ - [#2767](https://github.com/Urigo/accounter-fullstack/pull/2767)
62
+ [`9789030`](https://github.com/Urigo/accounter-fullstack/commit/9789030faa9712723aa8b4771061b61b8002c312)
63
+ Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
64
+ - Updated dependency
65
+ [`@graphql-hive/yoga@0.46.0` ↗︎](https://www.npmjs.com/package/@graphql-hive/yoga/v/0.46.0) (from
66
+ `0.43.1`, in `dependencies`)
67
+
68
+ - [#2768](https://github.com/Urigo/accounter-fullstack/pull/2768)
69
+ [`12a26cb`](https://github.com/Urigo/accounter-fullstack/commit/12a26cb049a0f601a7d0d8664114a4bfe9b8be86)
70
+ Thanks [@gilgardosh](https://github.com/gilgardosh)! - dependencies updates:
71
+ - Updated dependency
72
+ [`@graphql-yoga/plugin-defer-stream@3.17.1` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-defer-stream/v/3.17.1)
73
+ (from `3.17.0`, in `dependencies`)
74
+ - Updated dependency
75
+ [`graphql-yoga@5.17.1` ↗︎](https://www.npmjs.com/package/graphql-yoga/v/5.17.1) (from `5.17.0`,
76
+ in `dependencies`)
77
+
78
+ - [#2769](https://github.com/Urigo/accounter-fullstack/pull/2769)
79
+ [`4a16f8f`](https://github.com/Urigo/accounter-fullstack/commit/4a16f8fc4048e46b305adc887f926f1ff94f9bf2)
80
+ Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
81
+ - Updated dependency
82
+ [`@graphql-yoga/plugin-defer-stream@3.17.1` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-defer-stream/v/3.17.1)
83
+ (from `3.17.0`, in `dependencies`)
84
+ - Updated dependency
85
+ [`graphql-yoga@5.17.1` ↗︎](https://www.npmjs.com/package/graphql-yoga/v/5.17.1) (from `5.17.0`,
86
+ in `dependencies`)
87
+
88
+ - [#2768](https://github.com/Urigo/accounter-fullstack/pull/2768)
89
+ [`12a26cb`](https://github.com/Urigo/accounter-fullstack/commit/12a26cb049a0f601a7d0d8664114a4bfe9b8be86)
90
+ Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **GraphQL Schema & Resolver Update**: The
91
+ GraphQL schema for `GreenInvoiceClient` now includes a `businessId` field, and a corresponding
92
+ resolver has been implemented on the server to fetch this ID from the internal client service.
93
+ - **Frontend Data & Type Alignment**: Client-side GraphQL fragments and TypeScript type
94
+ definitions have been updated to consistently include and handle the new `businessId` field for
95
+ client objects.
96
+ - **Business Link Correction**: The `IssueDocumentsTable` component has been modified to correctly
97
+ utilize the `businessId` when constructing links to business detail pages, resolving the issue
98
+ of incorrect navigation.
99
+
100
+ - [#2750](https://github.com/Urigo/accounter-fullstack/pull/2750)
101
+ [`98b8b85`](https://github.com/Urigo/accounter-fullstack/commit/98b8b859ad566372ec3cd65bc57bcc0d6fcdd6fb)
102
+ Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **Database Schema Update**: A new `users`
103
+ table is introduced in the `accounter_schema` to store user names, IDs, creation timestamps, and
104
+ roles, with `name` as the primary key and a foreign key constraint linking `users.id` to
105
+ `financial_entities.id`.
106
+ - **Dynamic User Authentication**: The authentication plugin (`auth-plugin.ts`) is refactored to
107
+ fetch user roles and associated business IDs directly from the new `users` database table,
108
+ replacing previous static or hardcoded role assignments.
109
+ - **Enhanced Password Encryption Validation**: The `encrypt-password.mjs` script now includes more
110
+ comprehensive validation checks for bcrypt, confirming that unique salts are used and hashes are
111
+ correctly compared against plaintext.
112
+
113
+ - [#2727](https://github.com/Urigo/accounter-fullstack/pull/2727)
114
+ [`6a8a686`](https://github.com/Urigo/accounter-fullstack/commit/6a8a68620fe70d4109d92a279cac5be355987e2f)
115
+ Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **Test Data and Integration Testing**:
116
+ This pull request introduces reusable demo/staging data and an integration testing framework for
117
+ the `@accounter/server` package, focusing on foundational admin context, expense charge scenarios,
118
+ and ledger generation.
119
+ - **Architectural Improvements**: Key improvements include a modular test harness, exact schema
120
+ version enforcement, diagnostics & observability, transactional seeding, environment isolation,
121
+ and a CI workflow.
122
+ - **Documentation**: Extensive documentation has been added, including JSDoc examples, idempotency
123
+ semantics, security warnings, and thread safety considerations.
124
+
125
+ - [#2751](https://github.com/Urigo/accounter-fullstack/pull/2751)
126
+ [`77ad870`](https://github.com/Urigo/accounter-fullstack/commit/77ad8705cfadfab6a4e182c80937b8d96467098a)
127
+ Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **Centralized DB Pool Management**: The
128
+ application now utilizes a single PostgreSQL connection pool, initialized at startup and shared
129
+ across the entire server, replacing individual client instantiations.
130
+ - **Dependency Injection for Database Access**: The database connection pool is now injected into
131
+ the GraphQL application context and passed explicitly to modules and plugins, promoting a
132
+ cleaner and more consistent approach to database interactions.
133
+ - **Graceful Shutdown Implementation**: New logic has been added to ensure the server and database
134
+ pool shut down gracefully upon receiving termination signals (e.g., SIGINT, SIGTERM) or
135
+ encountering critical errors, allowing in-flight requests to complete.
136
+ - **Enhanced Error Handling**: The centralized connection pool includes error handling that
137
+ triggers a graceful shutdown for database-related issues, unhandled promise rejections, and
138
+ uncaught exceptions, improving application stability.
139
+
140
+ - [#2754](https://github.com/Urigo/accounter-fullstack/pull/2754)
141
+ [`92d8cb1`](https://github.com/Urigo/accounter-fullstack/commit/92d8cb161398c2681d22fc1d390143f1cdc2e8eb)
142
+ Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **Database Cleanup**: A new migration has
143
+ been added to drop the deprecated `deel_documents` and `deel_employees` tables from the database,
144
+ streamlining the schema.
145
+ - **Enhanced Deel Contract Handling**: New functionality has been introduced to automatically
146
+ validate and insert new Deel contracts into the database, ensuring all relevant contract
147
+ information is persisted.
148
+ - **Refined Invoice-to-Charge Mapping**: The logic for associating Deel invoices with charges has
149
+ been improved, now providing a more robust mapping that considers both receipt and invoice
150
+ charge IDs.
151
+ - **Charge Cleanup Mechanism**: The `fetchDeelDocuments` resolver now includes a post-processing
152
+ step to identify and delete any charges that end up without associated documents or
153
+ transactions, preventing orphaned data.
154
+ - **GraphQL API Update**: The `fetchDeelDocuments` GraphQL mutation now returns a list of `Charge`
155
+ objects instead of a boolean, providing more detailed feedback on the processed charges.
156
+
157
+ - [#2781](https://github.com/Urigo/accounter-fullstack/pull/2781)
158
+ [`0590c3f`](https://github.com/Urigo/accounter-fullstack/commit/0590c3fdb9f1a9718ea80530361bbeb7512d11fd)
159
+ Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **GreenInvoiceClient ID Refinement**: The
160
+ 'id' field has been removed from GreenInvoiceClient type definitions and GraphQL fragments across
161
+ the client and server, standardizing on 'businessId' or 'greenInvoiceId' as primary identifiers.
162
+ - **Frontend Form Logic Enhancement**: The GenerateDocument component now uses a 'formDefaults'
163
+ object for initial state, and 'useEffect' ensures form data resets correctly when
164
+ 'initialFormData' changes.
165
+ - **Performance Optimizations**: React's 'useCallback' and 'useMemo' hooks have been introduced in
166
+ GenerateDocument to memoize event handlers and computed values, improving rendering performance.
167
+ - **Backend Client ID Consistency**: Green Invoice resolvers have been updated to consistently use
168
+ 'greenInvoiceClientId' when issuing or previewing documents, ensuring the correct client is
169
+ associated.
170
+ - Updated dependencies
171
+ [[`cbf2717`](https://github.com/Urigo/accounter-fullstack/commit/cbf27175d72499a6f7509eecee351f4831227f12),
172
+ [`ef68321`](https://github.com/Urigo/accounter-fullstack/commit/ef68321608d60a7208e82a2c413f27beb502e3cc),
173
+ [`ef68321`](https://github.com/Urigo/accounter-fullstack/commit/ef68321608d60a7208e82a2c413f27beb502e3cc),
174
+ [`ef68321`](https://github.com/Urigo/accounter-fullstack/commit/ef68321608d60a7208e82a2c413f27beb502e3cc)]:
175
+ - @accounter/green-invoice-graphql@0.8.3-alpha-20251209101144-c5bcee3a42b5e28a5c7b8d596055b57883dd5f9b
176
+ - @accounter/pcn874-generator@0.6.4-alpha-20251209101144-c5bcee3a42b5e28a5c7b8d596055b57883dd5f9b
177
+ - @accounter/shaam-uniform-format-generator@0.2.3-alpha-20251209101144-c5bcee3a42b5e28a5c7b8d596055b57883dd5f9b
178
+ - @accounter/shaam6111-generator@0.1.5-alpha-20251209101144-c5bcee3a42b5e28a5c7b8d596055b57883dd5f9b
179
+
180
+ ## 0.0.8
4
181
 
5
182
  ### Patch Changes
6
183
 
@@ -392,87 +569,6 @@
392
569
  - Updated dependency [`ai@5.0.100` ↗︎](https://www.npmjs.com/package/ai/v/5.0.100) (from `5.0.97`,
393
570
  in `dependencies`)
394
571
 
395
- - [#2744](https://github.com/Urigo/accounter-fullstack/pull/2744)
396
- [`ef68321`](https://github.com/Urigo/accounter-fullstack/commit/ef68321608d60a7208e82a2c413f27beb502e3cc)
397
- Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
398
- - Updated dependency
399
- [`@graphql-hive/yoga@0.43.1` ↗︎](https://www.npmjs.com/package/@graphql-hive/yoga/v/0.43.1) (from
400
- `0.43.0`, in `dependencies`)
401
- - Updated dependency [`ai@5.0.101` ↗︎](https://www.npmjs.com/package/ai/v/5.0.101) (from `5.0.100`,
402
- in `dependencies`)
403
- - Updated dependency [`zod@4.1.13` ↗︎](https://www.npmjs.com/package/zod/v/4.1.13) (from `4.1.12`,
404
- in `dependencies`)
405
-
406
- - [#2746](https://github.com/Urigo/accounter-fullstack/pull/2746)
407
- [`933a71e`](https://github.com/Urigo/accounter-fullstack/commit/933a71ec5640f6ef18d79ad5ebb9414ea05dc352)
408
- Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
409
- - Updated dependency [`playwright@1.57.0` ↗︎](https://www.npmjs.com/package/playwright/v/1.57.0)
410
- (from `1.56.1`, in `dependencies`)
411
-
412
- - [#2753](https://github.com/Urigo/accounter-fullstack/pull/2753)
413
- [`8edd047`](https://github.com/Urigo/accounter-fullstack/commit/8edd047c161f54b186972bf43151d68e837d845b)
414
- Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
415
- - Updated dependency
416
- [`@ai-sdk/anthropic@2.0.49` ↗︎](https://www.npmjs.com/package/@ai-sdk/anthropic/v/2.0.49) (from
417
- `2.0.45`, in `dependencies`)
418
- - Updated dependency [`ai@5.0.103` ↗︎](https://www.npmjs.com/package/ai/v/5.0.103) (from `5.0.101`,
419
- in `dependencies`)
420
-
421
- - [#2757](https://github.com/Urigo/accounter-fullstack/pull/2757)
422
- [`51b43e1`](https://github.com/Urigo/accounter-fullstack/commit/51b43e1de23746c5c8983cb5e8ee89e6b762666e)
423
- Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
424
- - Updated dependency
425
- [`@ai-sdk/anthropic@2.0.50` ↗︎](https://www.npmjs.com/package/@ai-sdk/anthropic/v/2.0.50) (from
426
- `2.0.49`, in `dependencies`)
427
- - Updated dependency [`ai@5.0.104` ↗︎](https://www.npmjs.com/package/ai/v/5.0.104) (from `5.0.103`,
428
- in `dependencies`)
429
-
430
- - [#2758](https://github.com/Urigo/accounter-fullstack/pull/2758)
431
- [`a399ad1`](https://github.com/Urigo/accounter-fullstack/commit/a399ad1fc2e0c954eb75a687ec355c82621df4b4)
432
- Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
433
- - Updated dependency
434
- [`@graphql-yoga/plugin-defer-stream@3.17.0` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-defer-stream/v/3.17.0)
435
- (from `3.16.2`, in `dependencies`)
436
- - Updated dependency
437
- [`graphql-yoga@5.17.0` ↗︎](https://www.npmjs.com/package/graphql-yoga/v/5.17.0) (from `5.16.2`,
438
- in `dependencies`)
439
-
440
- - [#2765](https://github.com/Urigo/accounter-fullstack/pull/2765)
441
- [`cbf2717`](https://github.com/Urigo/accounter-fullstack/commit/cbf27175d72499a6f7509eecee351f4831227f12)
442
- Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
443
- - Updated dependency
444
- [`@ai-sdk/anthropic@2.0.53` ↗︎](https://www.npmjs.com/package/@ai-sdk/anthropic/v/2.0.53) (from
445
- `2.0.50`, in `dependencies`)
446
- - Updated dependency [`ai@5.0.106` ↗︎](https://www.npmjs.com/package/ai/v/5.0.106) (from `5.0.104`,
447
- in `dependencies`)
448
-
449
- - [#2767](https://github.com/Urigo/accounter-fullstack/pull/2767)
450
- [`9789030`](https://github.com/Urigo/accounter-fullstack/commit/9789030faa9712723aa8b4771061b61b8002c312)
451
- Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
452
- - Updated dependency
453
- [`@graphql-hive/yoga@0.46.0` ↗︎](https://www.npmjs.com/package/@graphql-hive/yoga/v/0.46.0) (from
454
- `0.43.1`, in `dependencies`)
455
-
456
- - [#2768](https://github.com/Urigo/accounter-fullstack/pull/2768)
457
- [`12a26cb`](https://github.com/Urigo/accounter-fullstack/commit/12a26cb049a0f601a7d0d8664114a4bfe9b8be86)
458
- Thanks [@gilgardosh](https://github.com/gilgardosh)! - dependencies updates:
459
- - Updated dependency
460
- [`@graphql-yoga/plugin-defer-stream@3.17.1` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-defer-stream/v/3.17.1)
461
- (from `3.17.0`, in `dependencies`)
462
- - Updated dependency
463
- [`graphql-yoga@5.17.1` ↗︎](https://www.npmjs.com/package/graphql-yoga/v/5.17.1) (from `5.17.0`,
464
- in `dependencies`)
465
-
466
- - [#2769](https://github.com/Urigo/accounter-fullstack/pull/2769)
467
- [`4a16f8f`](https://github.com/Urigo/accounter-fullstack/commit/4a16f8fc4048e46b305adc887f926f1ff94f9bf2)
468
- Thanks [@renovate](https://github.com/apps/renovate)! - dependencies updates:
469
- - Updated dependency
470
- [`@graphql-yoga/plugin-defer-stream@3.17.1` ↗︎](https://www.npmjs.com/package/@graphql-yoga/plugin-defer-stream/v/3.17.1)
471
- (from `3.17.0`, in `dependencies`)
472
- - Updated dependency
473
- [`graphql-yoga@5.17.1` ↗︎](https://www.npmjs.com/package/graphql-yoga/v/5.17.1) (from `5.17.0`,
474
- in `dependencies`)
475
-
476
572
  - [#2631](https://github.com/Urigo/accounter-fullstack/pull/2631)
477
573
  [`86c8b3e`](https://github.com/Urigo/accounter-fullstack/commit/86c8b3ebea4e3be0c0e99a108ec1cdad8b39e5d8)
478
574
  Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **Database Schema Update**: A new
@@ -507,18 +603,6 @@
507
603
  simplified by removing redundant fields like 'invalidDocuments' and 'invalidTransactions', as
508
604
  these are now computed dynamically.
509
605
 
510
- - [#2768](https://github.com/Urigo/accounter-fullstack/pull/2768)
511
- [`12a26cb`](https://github.com/Urigo/accounter-fullstack/commit/12a26cb049a0f601a7d0d8664114a4bfe9b8be86)
512
- Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **GraphQL Schema & Resolver Update**: The
513
- GraphQL schema for `GreenInvoiceClient` now includes a `businessId` field, and a corresponding
514
- resolver has been implemented on the server to fetch this ID from the internal client service.
515
- - **Frontend Data & Type Alignment**: Client-side GraphQL fragments and TypeScript type
516
- definitions have been updated to consistently include and handle the new `businessId` field for
517
- client objects.
518
- - **Business Link Correction**: The `IssueDocumentsTable` component has been modified to correctly
519
- utilize the `businessId` when constructing links to business detail pages, resolving the issue
520
- of incorrect navigation.
521
-
522
606
  - [#2551](https://github.com/Urigo/accounter-fullstack/pull/2551)
523
607
  [`14900d1`](https://github.com/Urigo/accounter-fullstack/commit/14900d10209272429118ff4bd2e52893c813170b)
524
608
  Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **Error Handling Standardization**: The
@@ -610,19 +694,6 @@
610
694
  with `Promise<Maybe<ResolverTypeWrapper<CommonError | LedgerRecordsProto>>>` and
611
695
  `GraphQLResolveInfo`, enhancing type safety and clarity.
612
696
 
613
- - [#2750](https://github.com/Urigo/accounter-fullstack/pull/2750)
614
- [`98b8b85`](https://github.com/Urigo/accounter-fullstack/commit/98b8b859ad566372ec3cd65bc57bcc0d6fcdd6fb)
615
- Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **Database Schema Update**: A new `users`
616
- table is introduced in the `accounter_schema` to store user names, IDs, creation timestamps, and
617
- roles, with `name` as the primary key and a foreign key constraint linking `users.id` to
618
- `financial_entities.id`.
619
- - **Dynamic User Authentication**: The authentication plugin (`auth-plugin.ts`) is refactored to
620
- fetch user roles and associated business IDs directly from the new `users` database table,
621
- replacing previous static or hardcoded role assignments.
622
- - **Enhanced Password Encryption Validation**: The `encrypt-password.mjs` script now includes more
623
- comprehensive validation checks for bcrypt, confirming that unique salts are used and hashes are
624
- correctly compared against plaintext.
625
-
626
697
  - [#2629](https://github.com/Urigo/accounter-fullstack/pull/2629)
627
698
  [`6244c1b`](https://github.com/Urigo/accounter-fullstack/commit/6244c1bbafa7029f426bdaf796d830ff62cee006)
628
699
  Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **Database Schema Update**: The
@@ -657,18 +728,6 @@
657
728
  - **Alternative Polling Mechanism**: Provided a documented fallback polling approach for scenarios
658
729
  where Pub/Sub integration might be overly complex or not feasible.
659
730
 
660
- - [#2727](https://github.com/Urigo/accounter-fullstack/pull/2727)
661
- [`6a8a686`](https://github.com/Urigo/accounter-fullstack/commit/6a8a68620fe70d4109d92a279cac5be355987e2f)
662
- Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **Test Data and Integration Testing**:
663
- This pull request introduces reusable demo/staging data and an integration testing framework for
664
- the `@accounter/server` package, focusing on foundational admin context, expense charge scenarios,
665
- and ledger generation.
666
- - **Architectural Improvements**: Key improvements include a modular test harness, exact schema
667
- version enforcement, diagnostics & observability, transactional seeding, environment isolation,
668
- and a CI workflow.
669
- - **Documentation**: Extensive documentation has been added, including JSDoc examples, idempotency
670
- semantics, security warnings, and thread safety considerations.
671
-
672
731
  - [#2661](https://github.com/Urigo/accounter-fullstack/pull/2661)
673
732
  [`bf705b9`](https://github.com/Urigo/accounter-fullstack/commit/bf705b93457bf20b72633f70b5d6782ceaef8a03)
674
733
  Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **New Charge Matching UI**: A
@@ -786,21 +845,6 @@
786
845
  - Added ledger generation logic for "breathing deposits" (multi-transaction deposits) with
787
846
  automatic foreign exchange revaluation
788
847
 
789
- - [#2751](https://github.com/Urigo/accounter-fullstack/pull/2751)
790
- [`77ad870`](https://github.com/Urigo/accounter-fullstack/commit/77ad8705cfadfab6a4e182c80937b8d96467098a)
791
- Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **Centralized DB Pool Management**: The
792
- application now utilizes a single PostgreSQL connection pool, initialized at startup and shared
793
- across the entire server, replacing individual client instantiations.
794
- - **Dependency Injection for Database Access**: The database connection pool is now injected into
795
- the GraphQL application context and passed explicitly to modules and plugins, promoting a
796
- cleaner and more consistent approach to database interactions.
797
- - **Graceful Shutdown Implementation**: New logic has been added to ensure the server and database
798
- pool shut down gracefully upon receiving termination signals (e.g., SIGINT, SIGTERM) or
799
- encountering critical errors, allowing in-flight requests to complete.
800
- - **Enhanced Error Handling**: The centralized connection pool includes error handling that
801
- triggers a graceful shutdown for database-related issues, unhandled promise rejections, and
802
- uncaught exceptions, improving application stability.
803
-
804
848
  - [#2627](https://github.com/Urigo/accounter-fullstack/pull/2627)
805
849
  [`6f775f0`](https://github.com/Urigo/accounter-fullstack/commit/6f775f0670dbabad5b4ce0746b4ad18d349d313f)
806
850
  Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **New 'Accounts' Section in Admin
@@ -888,23 +932,6 @@
888
932
  - **Backend Resolver Implementation**: Server-side resolvers were updated to expose administrative
889
933
  business fields and handle the logic for fetching and updating this data.
890
934
 
891
- - [#2754](https://github.com/Urigo/accounter-fullstack/pull/2754)
892
- [`92d8cb1`](https://github.com/Urigo/accounter-fullstack/commit/92d8cb161398c2681d22fc1d390143f1cdc2e8eb)
893
- Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **Database Cleanup**: A new migration has
894
- been added to drop the deprecated `deel_documents` and `deel_employees` tables from the database,
895
- streamlining the schema.
896
- - **Enhanced Deel Contract Handling**: New functionality has been introduced to automatically
897
- validate and insert new Deel contracts into the database, ensuring all relevant contract
898
- information is persisted.
899
- - **Refined Invoice-to-Charge Mapping**: The logic for associating Deel invoices with charges has
900
- been improved, now providing a more robust mapping that considers both receipt and invoice
901
- charge IDs.
902
- - **Charge Cleanup Mechanism**: The `fetchDeelDocuments` resolver now includes a post-processing
903
- step to identify and delete any charges that end up without associated documents or
904
- transactions, preventing orphaned data.
905
- - **GraphQL API Update**: The `fetchDeelDocuments` GraphQL mutation now returns a list of `Charge`
906
- objects instead of a boolean, providing more detailed feedback on the processed charges.
907
-
908
935
  - [#2561](https://github.com/Urigo/accounter-fullstack/pull/2561)
909
936
  [`e853097`](https://github.com/Urigo/accounter-fullstack/commit/e853097bbe987be8292981c527ba49562bf2f28b)
910
937
  Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **Refactored Ledger Storage Helper**: The
@@ -1011,20 +1038,6 @@
1011
1038
  environment variables have been updated to use optional chaining (`?.`) to safely handle cases
1012
1039
  where the configuration might be `undefined`.
1013
1040
 
1014
- - [#2781](https://github.com/Urigo/accounter-fullstack/pull/2781)
1015
- [`0590c3f`](https://github.com/Urigo/accounter-fullstack/commit/0590c3fdb9f1a9718ea80530361bbeb7512d11fd)
1016
- Thanks [@gilgardosh](https://github.com/gilgardosh)! - - **GreenInvoiceClient ID Refinement**: The
1017
- 'id' field has been removed from GreenInvoiceClient type definitions and GraphQL fragments across
1018
- the client and server, standardizing on 'businessId' or 'greenInvoiceId' as primary identifiers.
1019
- - **Frontend Form Logic Enhancement**: The GenerateDocument component now uses a 'formDefaults'
1020
- object for initial state, and 'useEffect' ensures form data resets correctly when
1021
- 'initialFormData' changes.
1022
- - **Performance Optimizations**: React's 'useCallback' and 'useMemo' hooks have been introduced in
1023
- GenerateDocument to memoize event handlers and computed values, improving rendering performance.
1024
- - **Backend Client ID Consistency**: Green Invoice resolvers have been updated to consistently use
1025
- 'greenInvoiceClientId' when issuing or previewing documents, ensuring the correct client is
1026
- associated.
1027
-
1028
1041
  - [#2655](https://github.com/Urigo/accounter-fullstack/pull/2655)
1029
1042
  [`e3dc806`](https://github.com/Urigo/accounter-fullstack/commit/e3dc80677201cdbdd038953b572486c25119989e)
1030
1043
  Thanks [@gilgardosh](https://github.com/gilgardosh)! - - Introduced a new `ClientIntegrations`
@@ -1052,19 +1065,15 @@
1052
1065
  [`7fef068`](https://github.com/Urigo/accounter-fullstack/commit/7fef0682c7316153ae5ffde42f97ce7284dd4c9a),
1053
1066
  [`80402e0`](https://github.com/Urigo/accounter-fullstack/commit/80402e07198a7c6bb78aa9402df7ea4ead779411),
1054
1067
  [`48c6d16`](https://github.com/Urigo/accounter-fullstack/commit/48c6d1624c696fc23ab82e28860bd9c290abc07d),
1055
- [`cbf2717`](https://github.com/Urigo/accounter-fullstack/commit/cbf27175d72499a6f7509eecee351f4831227f12),
1056
1068
  [`65e3c7f`](https://github.com/Urigo/accounter-fullstack/commit/65e3c7f01993eb4f41244a40feefefa08b31a4e6),
1057
- [`ef68321`](https://github.com/Urigo/accounter-fullstack/commit/ef68321608d60a7208e82a2c413f27beb502e3cc),
1058
1069
  [`65e3c7f`](https://github.com/Urigo/accounter-fullstack/commit/65e3c7f01993eb4f41244a40feefefa08b31a4e6),
1059
- [`ef68321`](https://github.com/Urigo/accounter-fullstack/commit/ef68321608d60a7208e82a2c413f27beb502e3cc),
1060
1070
  [`65e3c7f`](https://github.com/Urigo/accounter-fullstack/commit/65e3c7f01993eb4f41244a40feefefa08b31a4e6),
1061
- [`ef68321`](https://github.com/Urigo/accounter-fullstack/commit/ef68321608d60a7208e82a2c413f27beb502e3cc),
1062
1071
  [`7a898a0`](https://github.com/Urigo/accounter-fullstack/commit/7a898a0ff1ee15420ab2532370a1d2f618cc86ab),
1063
1072
  [`15ed6f9`](https://github.com/Urigo/accounter-fullstack/commit/15ed6f982a5d288a1159ccd069fca14b35801a18)]:
1064
- - @accounter/green-invoice-graphql@0.8.2-alpha-20251208003127-fcde6629e3144a862c1002f2ef695144b3fb25ac
1065
- - @accounter/pcn874-generator@0.6.3-alpha-20251208003127-fcde6629e3144a862c1002f2ef695144b3fb25ac
1066
- - @accounter/shaam-uniform-format-generator@0.2.2-alpha-20251208003127-fcde6629e3144a862c1002f2ef695144b3fb25ac
1067
- - @accounter/shaam6111-generator@0.1.4-alpha-20251208003127-fcde6629e3144a862c1002f2ef695144b3fb25ac
1073
+ - @accounter/green-invoice-graphql@0.8.2
1074
+ - @accounter/pcn874-generator@0.6.3
1075
+ - @accounter/shaam-uniform-format-generator@0.2.2
1076
+ - @accounter/shaam6111-generator@0.1.4
1068
1077
 
1069
1078
  ## 0.0.7
1070
1079
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@accounter/server",
3
- "version": "0.0.8-alpha-20251208003127-fcde6629e3144a862c1002f2ef695144b3fb25ac",
3
+ "version": "0.0.9-alpha-20251209101144-c5bcee3a42b5e28a5c7b8d596055b57883dd5f9b",
4
4
  "type": "module",
5
5
  "description": "",
6
6
  "license": "MIT",