Skip to content

Create branch-scored delegated design improvement loop #56

Description

@iainherd

Goal

Create an automated/semiautomated delegated design-improvement loop for Lir Capital: identify design problems/opportunities, formulate solution candidates, implement candidates on isolated branches, score them with agent-profile reviews and browser/design evidence, deploy the best accepted branch to pre-prod, and repeat.

This is the operating model for moving from the current solid pre-prod baseline toward award-winning, high-end brand/design-agency quality.

Context

The current delegated issue workflow is working: bounded implementation subagents, assigned agent:* review profiles, parent/orchestrator verification, draft PRs, CI, and merge. The next level should turn this into a repeatable design-lab loop inspired by branch-based exploration/evaluation workflows: multiple candidate branches can compete, the strongest candidate becomes the new baseline/pre-prod, and weak ideas are discarded without contaminating main.

Related issues:

Primary implementation profile

agent:orchestrator

Required contributor/reviewer profiles

  • agent:design-director — visual opportunity identification, agency-grade judgement, anti-template review.
  • agent:brand-strategist — strategic fit, proof model, brand distinctiveness.
  • agent:frontend-implementer — candidate implementation branches.
  • agent:browser-qa-reviewer — screenshot/accessibility/responsive evidence.
  • agent:code-security-reviewer — safe runtime/code review.
  • agent:devops-deployer — integration with Enable automatic pre-prod deploy after main merges #55 auto-deploy and preview deployment policy.

Proposed loop

  1. Baseline capture

    • Capture screenshots and metrics for current main / pre-prod.
    • Store baseline evidence under docs/design/loops/<run-id>/baseline/.
  2. Opportunity identification

    • Dispatch design-director and brand-strategist scouts with only screenshots, issue context, design-language spec, critique rubric, and browser QA evidence.
    • Each scout returns ranked problems/opportunities with a measurable hypothesis.
    • Orchestrator selects 1–3 opportunities, not a broad redesign.
  3. Candidate branch generation

    • Create one isolated branch/worktree per candidate, e.g. design-loop/<run-id>-a, design-loop/<run-id>-b.
    • Delegate each candidate to a bounded frontend implementer with strict constraints: no stock/AI imagery, no compliance-risky copy, no trackers, no secrets, no broad rewrites.
  4. Scoring pass

    • Build each candidate and capture identical screenshots/metrics.
    • Score each candidate using a durable rubric with weighted dimensions:
      • strategic fit
      • crossing/ownable idea
      • composition
      • typographic tension
      • originality
      • restraint
      • institutional credibility
      • human warmth
      • imagery/placeholder discipline
      • accessibility
      • performance
      • compliance/security risk
      • AI-template smell
    • Include browser evidence: console, axe/equivalent, keyboard/focus, reduced motion, contrast, performance budget.
  5. Selection gate

    • Only candidates with no blocking accessibility/security/compliance failures can win.
    • If no candidate clearly improves the baseline, close the run with “no promotion”.
    • If one wins, open a draft PR from the winning branch only; keep losing branches documented but unmerged.
  6. Validation and promotion

    • Run assigned profile reviews on the winning branch.
    • Parent/orchestrator verifies tests/build/browser/deploy smoke and CI.
    • Merge winning PR to main.
    • Enable automatic pre-prod deploy after main merges #55 auto-deploys main to lircap.pendragon.bot.
    • Capture post-deploy screenshots and record the new baseline score.
  7. Repeat

    • New loop starts from the deployed baseline, not from stale local branches.

Acceptance criteria

  • A documented design-loop operating model exists in the repo, including roles, branch naming, prompts, scoring rubric, evidence locations, stop conditions, and promotion rules.
  • The loop explicitly protects the parent/orchestrator context and iteration budget: parent prompts, verifies, selects, and merges; implementation/reviews happen in delegated profiles/subagents.
  • A reusable scorecard template exists for candidate comparison.
  • A reusable GitHub issue/PR comment template exists for loop runs.
  • The model defines how Enable automatic pre-prod deploy after main merges #55 auto-deploy makes the winning main branch the pre-prod baseline.
  • The model defines hard blockers: accessibility violations, secret leakage, external tracking, compliance-risky copy, stock/AI imagery, placeholder-to-production leakage, performance budget failure.
  • The model allows “no promotion” when candidates fail to beat baseline.
  • A first pilot loop issue is either created or documented as the next action after Enable automatic pre-prod deploy after main merges #55/Browser QA, accessibility, and performance closeout #16.

Non-goals

  • Do not implement a fully autonomous production deploy/cutover.
  • Do not bypass human/orchestrator promotion decisions.
  • Do not let multiple agents write to the same branch simultaneously.
  • Do not pass the entire artefact pack to every candidate agent.

Verification

  • Parent verifies the docs/templates exist and reference the correct issue/profile workflow.
  • Assigned profile reviews confirm the loop is safe, actionable, and aligned with the high-end agency standard.

Metadata

Metadata

Assignees

No one assigned

    Labels

    agent:brand-strategistBrand strategist: positioning, proof model, strategic fit, Lir brand/archetype integrity.agent:browser-qa-reviewerBrowser QA reviewer: screenshots, responsive, console, accessibility, reduced-motion, Lighthouse/axeagent:code-security-reviewerCode/security reviewer: code quality, secrets, attack surface, auth gate, headers, forms.agent:design-directorDesign director: owns agency-grade visual critique, anti-AI-template review, design-system judgementagent:devops-deployerDevOps deployer: VPS, DNS, Caddy, password gate, CI/CD, deploy smoke tests.agent:frontend-implementerFrontend implementer: bounded Astro/component/page implementation slices.agent:orchestratorMorwenna/orchestrator: owns issue sequencing, repo state, PR/deploy verification, and final evidencepriority:highpriority hightype:designtype designtype:workflowtype workflow

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions