Skip to content

Conversation

@kriskbx
Copy link
Member

@kriskbx kriskbx commented Nov 27, 2025

🖊️ Description

💡 What? Why? How?

This refactors the aggregation logic into a generic aggregator, that is properly unit-tested. It also runs e2e-tests directly in the pipeline, which is faster in and allows for things like osm-sync-db seeding in the future.

It also moves from bun to node/npm and uses vitest as test runner which makes things easier. It just wasn't feasible to run the testing suite we wanted with the bun test runner.

📎 Related Ticket

https://app.asana.com/1/1200321573365931/project/1208833037492986/task/1211624818750138?focus=true

⚠️ Creation checklist

Before creating this merge request, go over the following checklist (click to expand).
Remove any items that are not applicable.

💪 I have tested my code
  • The automated tests are passing.
  • I have manually tested this feature
🧼 I have cleaned up my code
  • I have removed dependencies that were for testing.
  • I have removed debug logging.
  • My code does not generate new warnings.
  • My code does not depend on new vulnerable packages.
  • The commit messages are precise, make sense and follow the conventional commits standard (rebase the PR with --interactive if applicable, keeping commits in sensible chunks if possible).
🔍 I have performed a self-review of my code
  • My code is self-documenting or has links to necessary documentation.
  • New function and variables names can be understood by new developers with basic project knowledge.
✨ I have created a nice pull request
  • It has a clear title.
  • It follows the template, has a clear description and testing instructions if needed.
  • It references applicable Asana tickets.
  • It targets the right branch.
  • I removed not applicable sections of the PR template.
  • [optional] I added a GIF of my favorite animal to the PR description to lighten the mood of my colleagues.
📝 I updated the documentation
  • I updated the documentation in this repository.
  • I updated the tech manual.

🔍 Reviewing

When reviewing this merge request, here are some things to keep in mind:

@kriskbx kriskbx force-pushed the feat/tests branch 3 times, most recently from 0858c37 to 0175440 Compare November 27, 2025 13:22
@kriskbx kriskbx force-pushed the feat/tests branch 3 times, most recently from b83f92c to 17374de Compare January 8, 2026 15:58
process.on("unhandledRejection", (reason, promise) => {
console.error("Unhandled Rejection at: Promise", { promise, reason });
});
setup().then(run);
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

tsx doesn't support top-level await

@kriskbx kriskbx force-pushed the feat/tests branch 2 times, most recently from 87f19a4 to 46878bb Compare January 8, 2026 16:04
@kriskbx kriskbx marked this pull request as ready for review January 8, 2026 16:18
@kriskbx kriskbx requested a review from a team as a code owner January 8, 2026 16:18
export const t = transifex.t;
export const tx = transifex.tx;
export const t = transifex?.t;
export const tx = transifex?.tx;
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Transifex behaves weird again. In some module resolution contexts it just resolves to undefined. For example when using tsx to run the worker. Which is not a problem right now, as we very probably don't need working translations in the worker.

Comment on lines -1 to -2
shamefully-hoist=true
strict-peer-dependencies=false
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this was only used by bun.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants