Files
sales-trainer/docs/engineering-log.md

2.5 KiB
Raw Blame History

Engineering Log — Sales Trainer

Program status table + dated entries. Append-only entries under docs/engineering-log/.

What this is

A corporate, multi-user sales-training simulator. Admins upload/describe a product → app analyzes it + generates 15 realistic customer personas (5 per intent tier A/B/C) with varied, partially product-aligned pains, negotiation levers, initiation modes (customer/seller), channels (Facebook/LINE), and latent-vs-revealable data. Trainees chat 1:1 (one-shot) to close a sale; customers resist/negotiate/refuse; a separate judge-LLM scores + coaches the result.

Informed by MiroFish (CrowdSight engine) + the hermes-brain-and-tools CrowdSight plugin.

Status table

Milestone Status Last verified Evidence Next action
M0 Scaffold + auth/roles complete 2026-08-07 test_m0.py
M1 Input & analyze (+pain-fit) complete 2026-08-07 test_e2e.py
M2 Persona groups + generation (15, wrong_text) complete 2026-08-07 test_e2e.py
M3 Report complete 2026-08-07 test_e2e.py
M4 Chat simulator (init modes, one-shot, judge, debrief) complete 2026-08-07 test_e2e.py
M5 Trainee loop (board, weak-areas, gen-persona) complete 2026-08-07 test_e2e.py
M6 Frontend (Vue SPA) + static serving fix complete 2026-08-07 build + live HTTP 200
M7 Docker/deploy/docs complete 2026-08-07 Dockerfile/compose/README live-key E2E

Guardrails

  • No self-registration; admin provisions users. (Verified: register => 404.)
  • One persona = one chat per user (one-shot). Enforced in SessionStore + chat start.
  • Latent persona fields never leak to trainees pre-result.
  • LLM credentials live in .env only; never logged.

Entry index

  • 2026-08-07-build-out.md — M0M7 build-out, decisions, verification, current state.
  • 2026-08-07-security-ux.md — security hardening (path traversal, IDOR, XSS) + UX/UI polish.
  • 2026-08-07-auth-gitea.md — username login + first-time admin setup + Gitea push.
  • 2026-08-07-docker-final.md — Docker build fix: ship prebuilt frontend/dist, no npm in image (resolves repeated vite: not found).
  • 2026-08-07-login-after-setup.md — can't-login-after-setup = deployment data non-persistence, not login logic (verified).
  • 2026-08-07-login-email-fix.md — REAL fix: verify() resolves username OR email; "wrong password" after logout→login was email-login not resolving a user.