You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Write docs/testing.md: the cross-app testing philosophy and the conventions a contributor must follow. The most important rule: tests never start real external services — Redis, Postgres, S3/MinIO are always mocked or replaced with in-process fakes (ioredis-mock, the local-disk object store, mocked db), so pnpm test runs with no Docker.
Acceptance criteria:
States the no-external-services rule explicitly, with the reasoning and the approved substitutes for each dependency
Documents the per-app runners and commands (vitest for backend and web, pytest for the AI agent, cargo test for contracts)
Explains the established Drizzle mocking pattern used across the backend suite, and why .values() sometimes has to be both thenable and expose .returning()
Documents that socket handlers must be exercised via the enveloped dispatch event, not by grabbing a raw socket.on listener
Notes the trap that shared in-process rate-limit counters leak between tests unless reset
I’ll write docs/testing.md as a clear contributor-facing guide covering the cross-app testing philosophy and conventions. I’ll explicitly document the no-external-services rule, including the approved Redis, Postgres, and S3/MinIO substitutes, along with the commands for running tests across the backend, web, AI agent, and contracts.
I’ll also document the established Drizzle mocking approach, including the .values() thenable/.returning() requirement, the correct enveloped dispatch approach for socket handlers, and the need to reset shared in-process rate-limit state between tests.
The goal will be a concise, practical guide that contributors can follow to run the complete test suite reliably with pnpm test and without Docker.
Congratulations, @Deb-Auth! 🎉 Your application was accepted by the repo's maintainers, and the issue is due on August 31, 2026.
🧑💻 @Deb-Auth: Please resolve the issue such that the repo's maintainers have enough time to review your contribution before the due date. You'll earn Points for completing the issue on-time, which will make you eligible for a share of the Stellar Wave Program's reward pool.
Warning
When opening a PR, please link it to this issue to ensure it gets tracked accurately. Points are awarded when this issue is marked as completed by the maintainer.
🤠 Repo maintainers: Please keep an eye on the contributor's progress and review their work before the due date. You can manage this issue, including adjusting its complexity and points, here.
😎 @Deb-Auth: You earned 200 Points for completing this issue! After the current Wave ends, you'll be eligible for a percentage of the Wave's reward pool based on the percentage of total points you've earned. Learn more here. You can also Leave a review to share your experience working on this issue.
🧑💻 Repo maintainers: How'd the contributor do? Leave a review to share your experience working with them.
Activity
teejayboy4tony-sketch commentedon Aug 28, 2026
@codebestia
I’d like to take this issue.
I’ll write
docs/testing.mdas a clear contributor-facing guide covering the cross-app testing philosophy and conventions. I’ll explicitly document the no-external-services rule, including the approved Redis, Postgres, and S3/MinIO substitutes, along with the commands for running tests across the backend, web, AI agent, and contracts.I’ll also document the established Drizzle mocking approach, including the
.values()thenable/.returning()requirement, the correct envelopeddispatchapproach for socket handlers, and the need to reset shared in-process rate-limit state between tests.The goal will be a concise, practical guide that contributors can follow to run the complete test suite reliably with
pnpm testand without Docker.emmixeryng commentedon Aug 28, 2026
@emmixeryng has applied to work on this issue as part of the Stellar Wave Program's 8th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @emmixeryng to this issue.
Deb-Auth commentedon Aug 30, 2026
@Deb-Auth has applied to work on this issue as part of the Stellar Wave Program's 8th wave.
ℹ️ Repo Maintainers: To accept this application, review their application or assign @Deb-Auth to this issue.
drips-wave commentedon Aug 30, 2026
Congratulations, @Deb-Auth! 🎉 Your application was accepted by the repo's maintainers, and the issue is due on August 31, 2026.
🧑💻 @Deb-Auth: Please resolve the issue such that the repo's maintainers have enough time to review your contribution before the due date. You'll earn Points for completing the issue on-time, which will make you eligible for a share of the Stellar Wave Program's reward pool.
Warning
When opening a PR, please link it to this issue to ensure it gets tracked accurately. Points are awarded when this issue is marked as completed by the maintainer.
🤠 Repo maintainers: Please keep an eye on the contributor's progress and review their work before the due date. You can manage this issue, including adjusting its complexity and points, here.
🌊 Happy Wave 🌊
docs: add testing strategy, migration workflow, and security policy
github-actions commentedon Aug 31, 2026
Closed by #597, merged into
dev.drips-wave commentedon Aug 31, 2026
This issue has been completed by @Deb-Auth as part of the Stellar Wave Program's 8th Wave 🥳
😎 @Deb-Auth: You earned 200 Points for completing this issue! After the current Wave ends, you'll be eligible for a percentage of the Wave's reward pool based on the percentage of total points you've earned. Learn more here. You can also Leave a review to share your experience working on this issue.
🧑💻 Repo maintainers: How'd the contributor do? Leave a review to share your experience working with them.