jubnl
5c8decd3ea
refactor(assignments, public-api, accommodations, places): async DB-touching methods; transactions through UnitOfWork
2026-09-22 05:21:48 +02:00
jubnl
3a8b54d761
fix(server): the journey hooks are awaited by their callers, not detached
2026-09-22 04:38:12 +02:00
jubnl
845320e0a4
refactor(journey, oidc, place-enrichment, tokens, trip-members): async DB-touching methods; transactions through UnitOfWork
2026-09-22 04:16:07 +02:00
jubnl
ad6e1ce8f0
fix(vacay): type the loop accumulators the async sweep introduced
2026-09-22 03:44:48 +02:00
jubnl
cb177ce655
refactor(vacay, admin, doc-sync): async DB-touching methods; transactions through UnitOfWork
2026-09-22 03:29:33 +02:00
jubnl
567593a259
chore(server): lint rule also refuses a Promise handed to expect() without resolves/rejects
2026-09-22 02:32:59 +02:00
jubnl
37992de7ab
refactor(memories, photos, packing, share): async DB-touching methods; transactions through UnitOfWork
2026-09-22 02:21:06 +02:00
jubnl
6b755314d8
refactor(collab, collections, maps): async DB-touching methods; transactions through UnitOfWork
2026-09-22 01:49:18 +02:00
jubnl
fdb12aed1e
test(files): upload filters fail closed on an excluded or unresolvable type
2026-09-22 01:21:57 +02:00
jubnl
fc49c0c768
refactor(tokens): async DB-touching methods; the auth token handlers await them
2026-09-22 01:21:29 +02:00
jubnl
4700bb38a5
test(server): suites await the methods earlier sweep groups made async
2026-09-22 01:16:50 +02:00
jubnl
7940b7ff84
refactor(auth, files): async DB-touching methods; transactions through UnitOfWork
2026-09-22 01:08:22 +02:00
jubnl
4df2d83137
refactor(notifications, place-photos, backup): async DB-touching methods; transactions through UnitOfWork
2026-09-22 00:22:11 +02:00
jubnl
fac181f45b
chore(plugins): drop gate-only asyncs; observe the scheduler's rejection; async event-sink stub
2026-09-22 00:12:56 +02:00
jubnl
5d590ca5b1
chore(server): db-call-graph --sync stops its transitive walk at an async callee
2026-09-22 00:04:19 +02:00
jubnl
e28dc6de28
refactor(plugins): async DB-touching methods; transactions through UnitOfWork
2026-09-22 00:00:53 +02:00
jubnl
e413308227
refactor(llm-parse, mcp-shared, oauth, place-shadow, route-usage, storage, todo, trip-invite): async DB-touching methods; transactions through UnitOfWork
2026-09-21 23:27:01 +02:00
jubnl
bb390a5407
chore(server): db-call-graph --unawaited lists calls to async methods whose result is used without await
2026-09-21 22:55:02 +02:00
jubnl
7daf98cf70
test(oauth): controller suite awaits the async service
2026-09-21 22:41:35 +02:00
jubnl
aa587e2fb6
refactor(budget, common, day-notes, days): async DB-touching methods; transactions through UnitOfWork
2026-09-21 22:39:11 +02:00
jubnl
8bdc730b20
test(server): suites await the methods Task 1's forced edits made async
2026-09-21 21:54:19 +02:00
jubnl
d73215f7f6
chore(server): lint rule refusing a Promise used as a plain value, and the misses it found
2026-09-21 21:39:39 +02:00
jubnl
953e2526bb
refactor(atlas, school-holidays, settings): async DB-touching methods; transactions through UnitOfWork
2026-09-21 21:23:10 +02:00
jubnl
f6c17938c3
test(doc-sync): unit suites await the methods the async sweep made async
2026-09-21 21:11:01 +02:00
jubnl
8de5171a8e
fix(server): observe every promise the async sweep left unobserved (timer, handshake, plugin-runtime test)
2026-09-21 21:04:19 +02:00
jubnl
0cf99a9939
refactor(realtime, systemNotices, addons, airports, audit, categories, permissions, query-helpers, tags, transit, trip-membership): async DB-touching methods; transactions through UnitOfWork
2026-09-21 20:48:03 +02:00
jubnl
27d044f9e8
chore(server): promise safety net and sweep tooling for the async migration
2026-09-21 19:01:38 +02:00
jubnl
ef184ec7c2
test(server): ORM suites open the schema snapshot; RESET_TABLES derived from the schema
2026-09-21 18:12:07 +02:00
jubnl
f4fe27a3f8
fix(db): dialect helpers dispatch on the platform; lint gate for the repository layer
2026-09-21 18:12:07 +02:00
jubnl
d7c7afea1b
test(server): coverage's uncovered-file pass goes through the SWC transform
2026-09-21 11:06:42 +02:00
jubnl
2c7a5fcda6
test(server): websocket suites boot on the migrated schema snapshot
2026-09-21 11:03:16 +02:00
jubnl
f0c6cd18b3
test(db): coverage ratchet entries for the ORM foundation
2026-09-21 11:01:44 +02:00
jubnl
418bd1c6b5
fix(test): route MikroORM's dynamic imports through vitest from the setup file, not the ORM config
2026-09-21 10:35:16 +02:00
jubnl
2bc9e927be
test(server): snapshot harness keeps the legacy id semantics
2026-09-21 10:22:18 +02:00
jubnl
e846c91a16
test(server): integration suites boot on the migrated schema snapshot
2026-09-21 10:13:40 +02:00
jubnl
d7f39916d5
feat(db): request-context and unit-of-work helpers for the ORM, with concurrency tests
2026-09-21 10:01:36 +02:00
jubnl
443dc35c03
fix(db): repositories mirror the statement's column set and guard their row types
2026-09-21 09:54:15 +02:00
jubnl
229f4890df
feat(db): snake_case entity shape and the first three repositories (Days, DayNotes, Trips)
2026-09-21 09:39:40 +02:00
jubnl
479e2cb0a5
test(db): dialect helper refuses malformed column references and day counts
2026-09-21 09:27:05 +02:00
jubnl
5691f966af
feat(db): dialect helper is the one place SQL functions are spelled
2026-09-21 09:19:47 +02:00
jubnl
565f72740b
test(db): createTestOrm binds an ORM to a suite's own SQLite handle
2026-09-21 09:17:17 +02:00
jubnl
9ca9ca9644
feat(db): discover entities from an explicit list instead of a glob
2026-09-21 08:50:56 +02:00
jubnl
4ba43d6cd5
feat(db): DbTimestampType keeps DATETIME columns as the CURRENT_TIMESTAMP text
2026-09-21 08:50:56 +02:00
jubnl
57decad494
Merge remote-tracking branch 'origin/dev' into feat/orm
2026-09-20 21:45:48 +02:00
jubnl
70e970453e
migrations + seeders
2026-09-20 21:38:32 +02:00
jubnl
55ad55e90b
rename entities
2026-09-20 20:05:18 +02:00
jubnl
7cd9ba3dcb
fix date as string
2026-09-20 19:55:13 +02:00
Maurice
be9a38e3b0
fix(accommodations): a second night on the day counts by its check-in
...
Two bookings on one day used to settle by whichever was seated last, because
the other night's stop carries no hour of its own. Its check-in counts now,
in the service and in the migration alike.
2026-09-20 18:48:26 +02:00
Maurice
417d0445b9
fix(roadtrip): seat the nights booked before this release where their check-in says
...
A booked night leads its day now, but the stops the bookings put on their
check-in day before this release sit last, and the backfill for older
bookings appended them too. Every trip planned before the change kept that
order until somebody edited the check-in.
A migration seats every night a booking owns by the same rule the service
applies: first, behind only a stop whose own clock is at or before the
check-in. The drawn roads follow the stops they were drawn after, by the
rules the service uses when it moves a night. Stops the traveller placed
themselves are not touched. Re-runnable.
2026-09-20 18:45:37 +02:00
Maurice
a86e4b560a
test(accommodations): a quiet edit still corrects a night the clocks contradict
...
Covers seatedByCheckIn with a check-in set, which the re-seat on a new
check-in no longer passes through, so the accommodations function ratchet
held.
2026-09-20 17:49:54 +02:00