Commit Graph

267 Commits

Author SHA1 Message Date
25f93a6d1f fix(miniapp): read telegram webapp dynamically 2026-03-24 05:25:01 +04:00
3d52038be5 fix(miniapp): wait for telegram init data before blocking 2026-03-24 05:09:29 +04:00
322e1bfd33 fix(bot): clear stale reminder draft buttons 2026-03-24 04:32:15 +04:00
2888438260 fix(bot): localize reminder cancellation replies 2026-03-24 04:23:22 +04:00
efc2e91bf6 fix(bot): support text cancellation of reminder drafts 2026-03-24 04:20:51 +04:00
782a8325ba fix(bot): correct sleep-aware reminder wording 2026-03-24 04:16:07 +04:00
83ffd7df72 feat(bot): add observable notification management 2026-03-24 03:58:00 +04:00
7e9ae75a41 feat(bot): simplify reminder confirmation flow 2026-03-24 03:18:50 +04:00
3112fd6b0d test(bot): clean up notification delivery fixtures 2026-03-24 02:41:47 +04:00
fedc4a4325 feat(bot): move ad hoc notifications to llm parsing 2026-03-24 02:39:22 +04:00
3507bc0522 chore(deps): align workspace with typescript 6 2026-03-24 02:04:18 +04:00
a6c472084d fix(db): repair notification migration workflow 2026-03-24 01:56:34 +04:00
7b50fb26fb fix(db): add checksum for notification migration 2026-03-24 01:51:47 +04:00
cd4cebf2d9 fix(application): preserve exact payment guidance amounts 2026-03-24 01:49:04 +04:00
Stas
cbcd1a90ce Merge pull request #20 from whekin/codex/ad-hoc-notifications
Codex/ad hoc notifications
2026-03-24 00:40:39 +03:00
7218b55b1f feat(bot): add ad hoc reminder notifications 2026-03-24 01:28:26 +04:00
dc499214d9 chore(infra): pause aws cd workflow 2026-03-23 22:30:03 +04:00
621bd75148 feat(miniapp): redesign admin payment management 2026-03-23 22:17:51 +04:00
5af14e101e feat(miniapp): carry overdue billing and admin role flows 2026-03-23 15:44:55 +04:00
ee8c53d89b feat(infra): add aws lambda pulumi deployment target 2026-03-23 13:56:15 +04:00
2688d66f33 fix(miniapp): hide paid rent reminders on home 2026-03-23 01:04:33 +04:00
7665af0268 feat(bot): quiet finance topics and support purchase payers 2026-03-22 20:27:43 +04:00
7d706eba07 fix(bot): use HTTPS for OIDC audience to match Cloud Scheduler 2026-03-17 13:51:10 +04:00
5196d8484a fix(miniapp): remove duplicate Your balance card from home screen 2026-03-17 02:37:49 +04:00
2c36802d6d fix(miniapp): translate Split By and Admin Access fields 2026-03-17 02:25:05 +04:00
a91bb00041 fix(miniapp): translate Exact amounts and Percentages split options 2026-03-17 02:21:30 +04:00
fcdd0f2aaf feat(bot): add /dashboard command and MINI_APP_URL config
- Add /dashboard command to BotFather registration alongside /app
- Add new MINI_APP_URL env var for dashboard URL (separate from CORS origins)
- Pass MINI_APP_URL and BOT_API_URL in CD workflow
- Update Terraform with new variable for future infrastructure deployments
2026-03-17 02:17:11 +04:00
58cf69b9b6 fix(miniapp): update balance summary titles to reflect actual values 2026-03-17 00:47:35 +04:00
b981c7cf80 fix(miniapp): use correct totals in balance summary (totalDue, purchase ledger, utility ledger) 2026-03-17 00:39:22 +04:00
748878e789 feat(miniapp): add purchase-only and utilities balance sections to balances view 2026-03-17 00:28:35 +04:00
02c79ae629 feat: add payer control for purchases
- Add explicit payerMemberId field to purchase ledger entries
- Add 'Paid by' selector in mini app purchase add/edit forms
- Default payer to current user when creating new purchases
- Allow admins to change who made existing purchases
- Update backend handlers to accept and persist payerMemberId
- Add i18n translations for 'Paid by' label (EN/RU)

All quality gates pass: build, typecheck, lint, format, test

Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
2026-03-16 17:44:20 +04:00
64dc3a3813 refactor(ci): remove dev environment, build images in CD 2026-03-16 06:28:36 +04:00
da6bdc3813 fix(infra): grant GitHub deployer access to webhook secrets 2026-03-16 05:31:38 +04:00
3d15754936 fix(ci): push latest tag and reduce monitoring costs
- Add latest tag push alongside SHA tag for manual rollback/debugging
- Reduce log retention from 3 to 1 day
- Comment out bot_error_metrics and alerts to save ~$0.47/month
- Minor whitespace fix in cd.yml
2026-03-16 05:17:47 +04:00
224cdc2d45 chore(infra): add log exclusions and reduce retention to lower costs 2026-03-16 05:01:41 +04:00
c5c0b32f20 fix(cd): avoid deploying stale images and add cleanup policy 2026-03-16 04:56:42 +04:00
b71480e9f1 fix(miniapp): prevent focus loss in destinations form 2026-03-16 04:46:09 +04:00
77094baa2b fix(ci): disable provenance to fix image tagging 2026-03-16 04:36:38 +04:00
cc423053e9 fix(cd): simplify webhook secret loading and add error checking 2026-03-16 04:07:02 +04:00
21303de0ba fix(cd): properly set webhook secret and add verification step 2026-03-16 03:58:16 +04:00
74348c3ef5 fix(ci): build Docker images for linux/amd64 only to fix Cloud Run deploys 2026-03-16 03:43:02 +04:00
fcafdefa76 fix(db): properly set search_path via URL options for PgBouncer compatibility 2026-03-16 03:21:27 +04:00
543a6f90ef Use repo vars and streamline CI/CD workflows
Update GitHub Actions workflows to rely on repository variables and simplify build/deploy logic. cd.yml: switch secret/project lookups to vars, adjust workflow_run detection for auto-deploy, remove derived secret outputs, resolve Artifact Registry image tags from the triggering SHA, and use vars for Google Cloud auth and project references. ci.yml: add dev to PR branches, condense the quality matrix commands, rework the images job to authenticate and push only on branch pushes while doing build-only on PRs (with proper cache usage), add id-token permission, and introduce a final CI gate job that aggregates job results to block CD when CI fails. Also includes minor formatting and whitespace cleanups.
2026-03-16 00:39:35 +04:00
1cff14662e feat(cd): complete environment support for dev/prod deployments
- Add workflow_dispatch inputs for manual environment selection
- Add detect-environment job to centralize environment detection
- Support both auto-trigger (branch-based) and manual deployment
- Use environment-specific secrets (DATABASE_URL vs DATABASE_URL_TEST)
- Dynamic Cloud Run service names based on environment
- Update concurrency group to use environment for manual triggers
2026-03-15 22:01:17 +04:00
6b38e0898c chore(db): update migration checksums for 0020 migration 2026-03-15 21:08:43 +04:00
5c6427e3d2 fix(cd): add DB_SCHEMA env var to Cloud Run deployment 2026-03-15 21:03:10 +04:00
bb7900a614 ci: add dev branch to CI push triggers 2026-03-15 20:56:07 +04:00
0747973c8f feat(db): add rent_payment_destinations column and multi-schema support
- Add migration 0020 for rent_payment_destinations jsonb column
- Add DB_SCHEMA env var support for multi-schema deployments
- Create custom migrate.ts script with proper search_path handling
- Update drizzle.config.ts and client.ts to use DB_SCHEMA
- Add db_schema variable to Terraform with dev=test/prod=public defaults
- Update CD workflow to set DB_SCHEMA based on branch
2026-03-15 20:26:26 +04:00
f4fe4470f7 feat(infra): implement multi-environment deployment strategy
- Update CD workflow for branch-based environments (main -> Prod, dev -> Dev)
- Support Terraform workspaces for environment isolation
- Add manage_runtime_secrets flag to prevent accidental secret destruction
- Add infra management and secret setup utility scripts
- Prefix GitHub deployer identity with environment name
- Synchronize bot environment variables with latest runtime config
2026-03-15 19:11:18 +04:00
594c370677 refactor(miniapp): unify settings design with editable-list pattern 2026-03-15 03:48:40 +04:00