Skip to content

Tech-lead profile-generation session (propose execution-profile, human-confirm before write) #23

Description

@Ryan-Atkinson87

Implement the tech-lead setup session — the principal-engineer persona that proposes a project's execution-profile.yaml from project.yaml + a repo scan, for the human to confirm before it is written (Spec §17.4 tech-lead, §17.5 generation). It runs once at onboarding and only re-engages on structural change, so it adds no per-iteration cost.

Spec §17.4 (tech-lead persona), §17.5 (Layer 3 generation + human confirmation).

Acceptance criteria

  • A tech-lead persona session (composed via Persona composition (type x speciality with stage-skill filtering) #20, run via the Claude adapter Implement Claude provider adapter via Claude Agent SDK #17) that takes project.yaml (project.yaml Pydantic schema and fail-fast loader #4) + a repo scan and proposes an execution-profile.yaml (which persona-compositions to instantiate, which stages run AI vs engine, project-specific routing).
  • The proposal is not written until the human confirms (§17.5 — the human is the actual principal engineer signing off the split). Confirm-before-write is a hard gate.
  • On confirmation, the validated profile (execution-profile.yaml schema and fail-fast loader #21 schema) is written to the project.
  • After first sign-off, the engine may regenerate automatically on structural change (new repo, newly discovered cross-cutting concern) — the trigger is defined even though the UI surface for it is a Phase-6 detail (Spec §15 open item: profile-generation UX).
  • The proposed profile validates against the execution-profile.yaml schema and fail-fast loader #21 schema before being shown for confirmation — a proposal that fails validation is regenerated/surfaced as an error, never written.
  • Explicit failure path if the session errors or the human rejects — no partial/unconfirmed write.
  • Tests: proposal generation from a sample project.yaml, confirm-gate blocks write until approved, rejection leaves no file, a structural-change re-trigger produces an updated proposal.

Notes

Per Spec §15, only the UI trigger flow for this session is deferred (Phase 6); the decision (human-confirmed before write) and the generation logic itself are in scope here. Without the UI, confirmation is a CLI/explicit-approval step.

Depends on: #17, #19, #21

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions