Coaching and learning
Manual home · Role guides · Coverage · Gaps
Manual conventions and recovery apply to every workflow. Evidence level: code inspected; related tests were inspected, not executed.
flowchart TD
A[Coaching draft] --> B[Activate and capture baseline]
B --> C[Active plan and assigned learning]
C --> D[Agent milestone or training progress]
D --> E{Enough observations?}
E -->|No| F[Insufficient sample]
E -->|Yes| G[Measured outcome]
C --> H[Coach closure note]
H --> I[Completed plan]
C --> J[Cancelled plan]
LRN-01 — Follow recommended knowledge and record progress
Status: Implemented. Verification: code inspected; no runtime completion claim.
Purpose: follow recommended knowledge and record progress.
Actors and access: Authenticated user; learning progress is scoped to the current user.
Prerequisites: Available published knowledge and learning recommendations.
Entry point: Learning; knowledge article open.
- Open recommended paths/articles from Learning.
- Read the linked article and record the supported progress status.
- Return to Learning to inspect saved progress and remaining recommendations.
Result: The user's learning progress is stored separately from audit outcomes.
Exceptions and recovery: Unavailable/unpublished knowledge cannot become valid progress evidence. Reading an article does not automatically pass a training quiz or prove a coaching metric improved.
Source evidence: services/api/src/learning/routes.ts; apps/web/src/features/learning/learning.tsx; packages/contracts/src/learning-progress.ts.
LRN-02 — Author, publish, revise and archive a training program
Status: Implemented. Verification: code inspected; no runtime completion claim.
Purpose: author, publish, revise and archive a training program.
Actors and access: members:manage.
Prerequisites: Supported content/quiz steps and valid program definition.
Entry point: Learning → Manage.
- Create/edit the draft program and its ordered learning steps and quizzes.
- Publish explicitly after checking questions, answer choices and pass requirements.
- Create a revision for later changes or archive the program when it should leave active assignment use.
Result: A published program can be assigned; historical assignments retain version context.
Exceptions and recovery: Published content is not edited through ordinary draft update. Use the supported revise action; check validation feedback before publishing rather than removing necessary learning checks.
Source evidence: services/api/src/training/routes.ts; apps/web/src/features/learning/training-workspace.tsx; packages/contracts/src/training.ts.
LRN-03 — Assign training and monitor learner completion
Status: Implemented. Verification: code inspected; no runtime completion claim.
Purpose: assign training and monitor learner completion.
Actors and access: members:manage.
Prerequisites: Published program and eligible tenant learners/team/company selection.
Entry point: Learning → Manage → assignments.
- Choose the program and supported recipient scope.
- Submit assignment and inspect created/existing recipient results.
- Filter/manage assignments and open completion/quiz progress to identify follow-up.
Result: Learners receive versioned assignments visible in their own learning workspace.
Exceptions and recovery: Invalid recipients and unavailable programs require correction. Inspect idempotent or partial results before repeating assignment. Assignment is distinct from completed learning.
Source evidence: services/api/src/training/routes.ts; apps/web/src/features/learning/training-assignment-manager.tsx.
LRN-04 — Complete assigned content and quizzes
Status: Implemented. Verification: code inspected; no runtime completion claim.
Purpose: complete assigned content and quizzes.
Actors and access: qms:read plus ownership of the assignment.
Prerequisites: An assigned program version.
Entry point: Learning → My assignments.
- Open your assignment and read the required content steps.
- Acknowledge supported steps and submit quiz attempts with the selected answers.
- Inspect scored/pass results and remaining steps until the assignment is complete.
Result: Server-validated progress and quiz attempts update the learner's assignment.
Exceptions and recovery: You cannot complete another user's assignment. Failed attempts follow the program's supported rules; do not infer a pass from a locally selected answer or article read alone.
Source evidence: services/api/src/training/routes.ts; apps/web/src/features/learning/training-workspace.tsx.
LRN-05 — Create or duplicate a coaching plan
Status: Implemented. Verification: code inspected; no runtime completion claim.
Purpose: create or duplicate a coaching plan.
Actors and access: operations:manage to create/duplicate; API visibility also supports assigned coach/agent.
Prerequisites: Active agent account, matching source agent identity and active eligible coach.
Entry point: Coaching → plan controls.
- Create a draft with goals, due dates, learning resources and milestones.
- Review agent/source ID/coach alignment and the intended measurable targets.
- For reuse, duplicate to a different agent; inspect reset goal/milestone history and inherited dates before activation.
Result: A draft coaching plan exists without fabricated baseline/outcome data.
Exceptions and recovery: The duplicate must target a different agent. Invalid or inactive assignments fail. Do not claim learner UI access is complete: the local agent route mismatch is recorded in GAP-01.
Source evidence: services/api/src/coaching-plans/routes.ts; apps/web/src/features/coaching/coaching-plans.tsx.
LRN-06 — Activate coaching, measure outcomes and close the plan
Status: Implemented. Verification: code inspected; no runtime completion claim.
Purpose: activate coaching, measure outcomes and close the plan.
Actors and access: operations:manage or assigned coach for permitted updates; read visibility is role/ownership-scoped.
Prerequisites: A draft with valid future goal due dates and active agent.
Entry point: Coaching → plan detail.
- Review the draft and activate it. The server captures the preceding 30-day baseline and observation counts.
- Monitor outcomes from activation until the earlier of now or goal due date; read sufficient/insufficient sample labels.
- Complete with a coach closure note or cancel an active plan.
Result: The plan follows draft → active → completed/cancelled; closed plans are immutable.
Exceptions and recovery: Assignment/goals/milestones are fixed after activation. Fewer than five observations yields insufficient_sample, not proof of improvement. Completed/cancelled plans cannot be reopened through update.
Source evidence: services/api/src/coaching-plans/routes.ts; packages/contracts/src/coaching-plans.ts; apps/web/src/features/coaching/coaching-plans.tsx.
LRN-07 — Complete a personal coaching milestone
Status: Incomplete. Verification: code inspected; no runtime completion claim.
Purpose: complete a personal coaching milestone.
Actors and access: Assigned agent only; active plan; current web route access is incomplete.
Prerequisites: An active personal milestone and, where requested, reflection.
Entry point: Assigned plan via coaching link/API.
- Open the assigned plan using an authorised available surface.
- Review the milestone/resources and submit completion with reflection.
- Inspect the persisted milestone result; the coach assesses overall closure separately.
Result: One milestone is recorded complete for its assigned agent.
Exceptions and recovery: Already-completed milestones cannot be completed again. The current local agent UI blocks /coaching despite API support (GAP-01); do not bypass permissions or substitute manager identity.
Source evidence: services/api/src/coaching-plans/routes.ts; apps/web/src/app.tsx.