This website requires JavaScript.
1ad21cc8f1
test: cover product delete cascade (group + own sessions) keeping other-org sessions
main
Macky
2026-08-26 14:04:47 +07:00
47f92b48bf
fix(chat): remove manual finish button — sale auto-closes when the customer decides
Macky
2026-08-26 14:04:47 +07:00
0903b19691
fix(ui): capitalize Persona in EN+TH UI copy and drop forced-lowercase count label
Macky
2026-08-25 21:05:13 +07:00
fde094e233
docs: capitalize Persona/Personas for the product feature in review docs
Macky
2026-08-25 20:37:54 +07:00
6a2e6a326f
fix: restore legacy training data hidden by new visibility schema (migrate-on-read)
Macky
2026-08-25 08:59:22 +07:00
3c22d88bcd
feat: demo SaaS + training flow security hardening (8/8 review gate passed)
Macky
2026-08-25 06:39:06 +07:00
8a632b5e6a
docs: record successful production deploy of UX/SAAS redesign
Macky
2026-08-21 12:30:21 +07:00
9fd748154d
feat: UX/SAAS 12-point redesign
Macky
2026-08-21 12:28:22 +07:00
2950ffad89
docs: record successful production deploy of OAuth + website removal
Macky
2026-08-20 11:39:48 +07:00
d6e7cffc84
feat(auth): Google + Facebook OAuth login/register
Macky
2026-08-20 10:57:04 +07:00
74de0d4d4f
chore(website): remove marketing site from app repo (moved to separate project ~/Gitea/Sales Trainer Website)
Macky
2026-08-20 09:25:20 +07:00
ece187be44
docs: record successful production deploy of UX redesign + marketing site
Macky
2026-08-19 18:34:41 +07:00
c263cc81df
feat(ui): app UX/UI redesign + marketing landing site
Macky
2026-08-19 15:46:21 +07:00
4bff7db098
fix(persona): openers must ASK or say สนใจ — never 'ลองดู/ลอง/แค่มาดู'
Macky
2026-08-19 10:19:29 +07:00
7fcef45649
fix(persona): forbid dismissive openers + fix script for '..' and negative tails
Macky
2026-08-19 10:12:56 +07:00
165cd840cf
fix(script): bootstrap sys.path so 'app' imports regardless of cwd in fix_openers
Macky
2026-08-19 10:05:45 +07:00
9b79e0c53e
feat(script): one-time fix_existing personas' openers to natural Thai
Macky
2026-08-19 09:30:35 +07:00
07e80be952
fix(persona): natural Thai openers - 'สวัสดีครับ/ค่ะ' + direct question, no 'เฮ้/เอ้'
Macky
2026-08-19 09:26:19 +07:00
4b5a14079b
[verified] all roles train for real: remove preview, 1 persona = 1 chat per user
Macky
2026-08-19 08:32:33 +07:00
ab5fff0bd9
[verified] IP-protect pain (hide from all roles) + persona summary button + topbar user dropdown
Macky
2026-08-19 07:26:21 +07:00
711e058b24
[verified] fix debrief pain display ([object Object]) + add 'create persona from this one' button
Macky
2026-08-18 22:01:27 +07:00
19e9fd2328
docs: record JWT_SECRET boot-crash root cause for 2026-08-18 deploy
Macky
2026-08-18 14:41:00 +07:00
5febcc83c4
docs: note deploy-not-live follow-up for 2026-08-18 UX fixes (force webhook re-trigger)
Macky
2026-08-18 12:04:11 +07:00
ffb7cdda31
[verified] fix live-QA UX: no JSON leak in chat, greeting openers (wrong_text cools off post-first-reply), auto-close+summarize on buy/walk/try, remove Finish button
Macky
2026-08-18 09:42:05 +07:00
2c40fc7502
feat(import): commit S4.4 JSON→PostgreSQL importer + API error-handler hardening
Macky
2026-08-16 07:42:32 +07:00
dbfce9aa54
[verified] harden Sales Trainer and add PostgreSQL foundation
Macky
2026-08-16 02:41:10 +07:00
6811dc1db9
docs: refresh HANDOFF + add 2026-08-09 engineering-log entry (idea-flow, live QA, LLM-judge decisions, persona variant)
Macky
2026-08-09 19:18:10 +07:00
c92400b195
refactor(chat): decide buy/walk by per-turn LLM judge (not fixed keywords)
Macky
2026-08-09 13:19:15 +07:00
94e75238a3
fix(chat): resume unfinished session without re-picking scenario; detect win/loss from real-LLM text
Macky
2026-08-09 13:12:08 +07:00
10c7d01236
feat(personas): 'create persona from this persona' (variant) — practice the same challenge, new identity
Macky
2026-08-09 12:43:00 +07:00
8771438aef
fix(scenario): recontact chats normally first then re-engages mid-chat; channel default=social; remove 'add more' button (15 personas auto)
Macky
2026-08-09 12:37:43 +07:00
2b414d13b7
fix(analyze): don't hard-fail when LLM generates <15 personas (retry + accept)
Macky
2026-08-09 12:23:15 +07:00
479d77757f
fix(chat): map customer/seller roles for OpenAI-compat LLM; re-contact = mid-chat time-lapse
Macky
2026-08-09 11:25:50 +07:00
fd2cae9e62
refactor(scenario): only 2 scenarios (social / face-to-face); 're-contact' becomes a persona trait
Macky
2026-08-09 11:21:34 +07:00
cb2642a659
fix(ui): no raw JSON on Training list, pain no longer [object Object], add Chat button on GroupEdit, drop facebook/line from persona
Macky
2026-08-09 11:15:13 +07:00
f8719d77e3
ux(flow): remove facebook/line channel everywhere (scenario chosen at chat); clarify 'how to start chatting'
Macky
2026-08-09 11:08:14 +07:00
5b167b4546
feat(training): delete group button (admin only) on Training page
Macky
2026-08-09 10:20:10 +07:00
0b92430aab
feat(idea): create group auto-generates personas; channel removed; product->product/idea
Macky
2026-08-09 10:12:40 +07:00
675cc5c73f
test: add user-journey flow test (idea end-to-end, mock LLM)
Macky
2026-08-09 10:01:38 +07:00
3e1badc2d3
docs: add FUTURE_WORK.md (deferred infra/SaaS/UX items); focus shifts to using the app as designed
Macky
2026-08-09 09:51:27 +07:00
3d5c81fbd7
feat(saas): Phase 3 — plan/seats/active model, ToS consent, signed expiring export
Macky
2026-08-09 09:48:55 +07:00
056753e8cb
feat(saas): multi-tenant isolation (Phase 1) + rate-limit/audit/org-scoped export (Phase 2)
Macky
2026-08-09 09:35:26 +07:00
e1d61e1e1e
feat(ip): protect persona 'formula' — secret fields only super_admin sees/edits
Macky
2026-08-09 07:22:50 +07:00
a04bc2add8
fix(ui): widen login/setup forms so inputs don't truncate text; line icons
Macky
2026-08-08 17:00:09 +07:00
b41bfee03b
chore(ui): remove 4 orphaned views (Dashboard/GenPersona/MySessions/WeakAreas) + mobile polish
Macky
2026-08-08 16:12:30 +07:00
15c60ae400
feat(i18n + export + guide): locale-aware scenarios/debrief; CSV export; how-to-use page
Macky
2026-08-08 15:06:48 +07:00
aa2eb8dd37
feat(chat): persona decides to buy/walk — auto-finish + tolerance (temper) + resume
Macky
2026-08-08 14:34:34 +07:00
bd6a7ffa32
feat(chat): scenario-based training — choice of channel/Situation + realistic per-turn evaluation
Macky
2026-08-08 11:27:05 +07:00
8670addcc3
ui(icons): replace colored emoji with modern single-color line icons (lucide-vue-next)
Macky
2026-08-08 10:55:45 +07:00
22d3e51980
ux(ui): beginner-friendly guidance across trainee/admin flows + fix AdminUsers to username
Macky
2026-08-08 10:34:24 +07:00
39d1aa04e4
ux(ui): readable persona form instead of raw JSON + step-by-step guides for non-IT users
Macky
2026-08-08 10:24:53 +07:00
55759a3a50
fix(api): group create read product from multipart form (bug: 'provide product info' when no file attached)
Macky
2026-08-08 09:49:24 +07:00
88892be1d9
i18n(th): professional, natural Thai; make Users button prominent
Macky
2026-08-08 08:01:08 +07:00
acba183dc1
style(ui): polish admin overview + close-rate progress bar; rebuild dist
Macky
2026-08-07 22:53:58 +07:00
e5a59dbc5c
docs: record 3-tab UI build-out (admin dashboard + date filter, personal dashboard, training difficulty, settings)
Macky
2026-08-07 22:36:43 +07:00
b05907ae62
feat(ui): 3-tab UI per spec — admin dashboard + date filter, personal dashboard, training w/ difficulty, settings profile
Macky
2026-08-07 22:35:49 +07:00
ac35be8906
feat(ui): 3-tab layout (Admin overview / My dashboard / Training) + Settings page
Macky
2026-08-07 22:07:16 +07:00
aec596d1d6
docs: record real 'wrong password after logout' fix (verify resolves username OR email)
Macky
2026-08-07 21:02:23 +07:00
3bc23997e2
build(frontend): refresh committed dist (username login + setup flow)
Macky
2026-08-07 21:00:43 +07:00
1867a1aac8
fix(auth): login resolves by EITHER username or email
Macky
2026-08-07 21:00:15 +07:00
7d778d780d
docs: record login-after-setup root cause (deployment data persistence)
Macky
2026-08-07 20:21:00 +07:00
334ef4e00c
fix(Docker): require persistent DATA_DIR volume; add VOLUME + README data-persistence warning
Macky
2026-08-07 20:20:42 +07:00
273fe7dae5
Fix: language toggle didn't re-render page
Macky
2026-08-07 20:20:33 +07:00
9c646173ca
docs: record final Docker fix (prebuilt dist, no npm in image) in engineering log
Macky
2026-08-07 19:47:15 +07:00
c19b23d44d
fix(Docker): ship prebuilt frontend/dist, drop npm from image (removes 'vite not found')
Macky
2026-08-07 19:46:20 +07:00
4827481da3
docs: record Docker 'vite: not found' fix (NODE_ENV root cause) in engineering log
Macky
2026-08-07 19:28:55 +07:00
681561c22a
docs: update account flow (username admin/1234 + forced setup) in README/HANDOFF/engineering-log
Macky
2026-08-07 18:04:18 +07:00
e8a95bf561
Add username-based login + mandatory first-time admin setup; push-ready
Macky
2026-08-07 17:56:59 +07:00
eadf4f727a
docs: record reviewer-drive security fixes (mask sales_kit/report, ready-gate) in engineering log
Macky
2026-08-07 16:10:02 +07:00
ce6076f7f4
[verified] Apply independent-reviewer suggestions: mask sales_kit/report to trainees, ready-gate get_persona
Macky
2026-08-07 16:09:42 +07:00
ff0f680090
[verified] Security hardening + UX/UI polish
Macky
2026-08-07 16:00:43 +07:00
c3d31c06e2
Sales Trainer v0.1: corporate sales-training simulator (Flask+Vue, 15 personas, chat simulator, judge, analytics)
Macky
2026-08-07 15:31:06 +07:00