Commit Graph

40 Commits

Author SHA1 Message Date
pavlov346346-source
7c05b63846 Support existing database secret names for Basic signup migration 2026-09-22 18:45:27 +08:00
pavlov346346-source
7ed7fdad79 Apply Basic signup migration safely 2026-09-22 18:43:52 +08:00
pavlov346346-source
941a568f4c Verify auth guard in production deploy 2026-09-22 18:34:19 +08:00
pavlov346346-source
c3cb44419b
Add human support form with fixed email recipient (#40)
Add Help contact form and PHP mail endpoint for support@katerion.ru, with validated Reply-To, explicit diagnostics consent, CSRF/origin checks, hashed rate limits and duplicate protection. Preserve drafts on error and avoid serializing customer data or SDK internals. Full PR QA passed in 35559317001; isolated PHP and 30 browser cases passed in 35559179372. Standard production gates unchanged. Publication checks do not send real mail; inbox receipt remains unverified. No training photo assets or unfinished training lifecycle changes.
2026-09-21 07:12:26 +03:00
pavlov346346-source
298b29cd52
Expose developer promo creation with three subscription plans (#39)
Load the missing promo module, add a prominent creation button and place Promos beside Overview. Use existing AAL2-guarded server RPCs with selected plan, subscription duration and code validity; preserve form input, honest clipboard feedback and scope async responses. Full PR QA succeeded in run 35547013076. No live data, SQL, MFA or unfinished training branch changes. Preserve normal main QA and exact-asset/browser publication verification.
2026-09-21 03:30:21 +03:00
pavlov346346-source
1e644e6dfb
Fix employee sync and expose mobile profile/logout (#37)
Keep notification-read state personal to user/company, preserve server read-only sections during staff synchronization, and respect separate order-create/edit/delete rights. Add visible mobile header session actions and a sticky logout that survives profile RPC failure; scope asynchronous profile/branding to user and workspace. Targeted browser suites and isolated SQL recovery tests passed in run 35506145405, iPhone screenshots reviewed. Full main QA remains required before production promotion. Workspace branding RPC migration is included but has NOT been applied to production Supabase; older servers retain safe owner-only fallback. No live membership/business-data repair is claimed without identifying the reported employee.
2026-09-20 13:55:56 +03:00
pavlov346346-source
bc3f186992
One-page banquet menu for the client (#36)
Add a single-page A4 preview and PDF for all selected banquet dishes or a ready-menu selection, with company branding and optional costs. Preserve draft/order state and saved line prices, enforce access and tenant scope, and fail clearly rather than clipping oversized menus. Nineteen targeted browser scenarios passed twice and the generated iPhone PDF was visually checked. Full main QA must pass before the existing automatic production promotion; production verification includes the new renderer and real-asset client menu export.
2026-09-20 12:54:42 +03:00
pavlov346346-source
716a79c58d
Optional per-profile training catalog with reversible example visibility (#35)
Add Settings > Учебный каталог, off by default and available on ordinary writable profiles. Load ready example boxes, photos, TTKs and linked sample inventory additively; preserve own data, saved orders and edited examples when hiding or re-enabling. Respect company/profile scope, read-only permissions, failed downloads and tenant changes. Preserve the opened recipe guide across real catalog refreshes on iPhone. Integrated feature checks and full pull-request QA passed. Standard main QA and exact-asset production UI verification remain in place.
2026-09-20 12:18:40 +03:00
pavlov346346-source
ab32199bd6 Retry transient npm audit service failures without weakening the security gate 2026-09-19 20:18:06 +03:00
pavlov346346-source
5ce7d8d353
Mobile menu editor above boxes with a matching return arrow (#34)
On phones place the existing menu editor above the catalog and add the same return-to-top control used by New Order. Preserve form nodes, unsaved values and active input focus; keep desktop/tablet layout and read-only permissions. Full QA passed, including iPhone WebKit and existing promotion focus regression. Extend real-asset production verification with a backend-blocked mobile-menu scenario.
2026-09-19 20:02:43 +03:00
pavlov346346-source
424bf8ce87
Compact clients and explicit timed menu promotions (#31)
Add compact accessible client summaries and menu discounts in percent or rubles with explicit durations. Preserve ordinary catalog prices and order line snapshots; derive current prices and expire promotions automatically without background writes. Keep fractional prices, legacy sale compatibility, and regression coverage. Full pull-request QA passed. Publication remains gated by full main QA and byte-for-byte production asset and UI verification.
2026-09-19 09:34:50 +03:00
pavlov346346-source
9f6ed42b0a Verify changed production CSS and rendered UI after QA-approved promotion 2026-09-19 08:07:02 +03:00
pavlov346346-source
cdb43c1653 Preserve JSON content negotiation through both proxy routes 2026-09-18 19:25:00 +03:00
pavlov346346-source
71bc56b0cd Route cloud access through Caterium and vendor login SDK 2026-09-18 19:07:47 +03:00
pavlov346346-source
09bfb0fed8 Fix Safari login request bodies and raw storage uploads 2026-09-18 18:13:00 +03:00
pavlov346346-source
a98e636937 fix: gate production promotion on QA success; remove dead data-layer files
promote-production.yml triggered on push to main independently of
qa.yml, with no branch protection configured on the repo - a failing
QA run (npm audit, static security tests, e2e) never blocked
production. Switch it to the same workflow_run pattern deploy-timeweb.yml
already uses: only promote the exact commit QA just passed.

Also removes public/core/data-layer-v1770/1771/1772.js: only v1773 is
ever loaded (index.html, performance.js's loadDataLayer, service-worker
cache all reference v1773 only) - the older three were dead weight
shipped to every visitor.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-12 14:08:38 +03:00
pavlov346346-source
da406a0a2f ci: verify refreshed Timeweb PWA cache 2026-09-12 08:14:53 +03:00
pavlov346346-source
311aeefd75 ci: verify Timeweb pull deployment 2026-09-12 07:09:56 +03:00
pavlov346346-source
ea9f60103a ci: keep Timeweb hosting deployment workflow 2026-09-11 19:19:51 +03:00
pavlov346346-source
bd0d9f2cbe ci: publish main to production immediately during active development 2026-09-11 14:55:20 +03:00
pavlov346346-source
dbbc416676
Fix incorrect order totals from hidden orphan lines
* chore: add one-time order total repair

* fix: exclude hidden orphan lines from totals [order-total-fix]

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-09-11 13:19:24 +03:00
pavlov346346-source
3fd899978b
Fix high-severity npm audit findings
* security: pin wrangler 4.131.0

* chore: refresh lockfile for security update

* security: refresh npm lockfile [npm-lock-refresh]

* chore: remove one-time npm lock refresh workflow

* ci: use locked dependencies and fail on high audit findings

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-09-11 07:51:06 +03:00
pavlov346346-source
71a974ac19
Infra: production branch promotion for app.caterium.ru
Prepare Caterium for Timeweb Cloud App Platform production hosting on app.caterium.ru with QA-gated promotion to the production branch.
2026-09-09 19:09:32 +03:00
github-actions[bot]
dffbd6a27d Fix v17.7.1 E2E data layer module checks 2026-09-08 23:51:20 +00:00
pavlov346346-source
95adfc5e3d Retry verified v17.7.1 E2E module checks 2026-09-09 02:50:11 +03:00
pavlov346346-source
eee001fc55 Validate and fix v17.7.1 E2E loader waits 2026-09-09 02:47:42 +03:00
github-actions[bot]
69d483519e Capture v17.7.1 browser module diagnostics 2026-09-08 23:47:10 +00:00
pavlov346346-source
9839f764f3 Run v17.7.1 browser module diagnostic 2026-09-09 02:46:16 +03:00
github-actions[bot]
e2c11e2928 Capture exact v17.7.1 E2E failures 2026-09-08 23:44:46 +00:00
pavlov346346-source
a4e2595a8a Capture exact v17.7.1 E2E failures 2026-09-09 02:43:10 +03:00
github-actions[bot]
faaf68a32d Capture v17.7.1 E2E diagnostics 2026-09-08 23:42:22 +00:00
pavlov346346-source
ac6d1bcae5 Diagnose remaining Caterium v17.7.1 E2E failures 2026-09-09 02:40:57 +03:00
github-actions[bot]
e56b309469 Fix v17.7.1 E2E compatibility coverage 2026-09-08 23:38:40 +00:00
pavlov346346-source
bbb1105d63 Fix v17.7.1 E2E repair workflow 2026-09-09 02:38:22 +03:00
pavlov346346-source
fe4cb6446d Restore full E2E suite and patch v17.7.1 compatibility test 2026-09-09 02:37:43 +03:00
github-actions[bot]
b6ec42b2e2 Caterium v17.7.1 - data layer adoption 2026-09-08 23:34:45 +00:00
pavlov346346-source
8391f826fe Fix v17.7.1 release workflow 2026-09-09 02:34:25 +03:00
pavlov346346-source
30917680ed Prepare Caterium v17.7.1 data layer adoption 2026-09-09 02:32:28 +03:00
pavlov346346-source
672a8e2237
Caterium v17.6.1 — chat photo compression and server memory
Release v17.6.1 after green GitHub QA and Cloudflare preview checks.
2026-09-07 18:11:05 +03:00
pavlov346346-source
2cd5c3404f Caterium v17.6.0 - GitHub Cloudflare autodeploy 2026-09-07 15:29:20 +03:00