feat(templates): 6-tier escalation ladder — add MiniMax + Fable tiers

New tiers in the coding queue:
  airouter(0-2) → minimax(3-5) → sonnet(6-7) → opus(8-9) → fable(10) → blocked(11+)

- models/claude-fable-5.yaml: Fable 5 model definition (Anthropic cloud, claude runner)
- harnesses/composites/code-fable-tdd-repo/v1: Fable TDD composite (mirrors opus, anthropic-cloud-paul-oauth auth)
- model-registry/harness-roles.yaml: claude-fable-5 → code-fable-tdd-repo under code-tdd role
- model-registry/tiers.yaml: claude-fable-5 added to coding.qualifies_today
- task-templates/workflow/minimax-impl-ready@1.yaml: MiniMax TDD workflow (scope: 3 files / 200 lines / 30m)
- task-templates/workflow/fable-impl-ready@1.yaml: Fable TDD workflow (scope: 5 files / 400 lines / 60m)

Claude-Session: https://claude.ai/code/session_015sCpoFee3LsLKbHQ4FRRWY
This commit is contained in:
Paul O'Reilly
2026-07-29 01:59:54 +12:00
parent a12f6ddaba
commit 350c0eeed4
6 changed files with 74 additions and 0 deletions

View File

@@ -0,0 +1,13 @@
kind: composite
name: code-fable-tdd-repo
version: 1
description: "Fable code agent with TDD enforcement — tests locked read-only, must pass before finish (last-resort tier)"
layers:
- context: code-methodology/v1
- context: anthropic-cloud-paul-oauth/v1
- context: gitea-ssh/v1
- context: agent-repo/v1
- context: tdd-protect/v1
- context: tdd-gate/v1
- capability: python-dev/v1
- capability: tdd-file-lock/v1

View File

@@ -6,3 +6,4 @@ roles:
claude-opus-4: code-opus-tdd-repo
claude-haiku-4: code-haiku-tdd-repo
minimax: code-minimax-tdd-repo
claude-fable-5: code-fable-tdd-repo

View File

@@ -54,3 +54,4 @@ tiers:
- minimax
- claude-sonnet-4
- claude-opus-4
- claude-fable-5

View File

@@ -0,0 +1,15 @@
name: claude-fable-5
provider: anthropic
endpoint:
type: cloud_api
api_key_env: ANTHROPIC_API_KEY
runner: claude
default_flags:
model: "claude-fable-5"
scores:
complexity: 10
creativity: 10
context_utilisation: 10
spec_adherence: 10
test_pass_rate: 10
cost_per_1k_tokens: 0.05

View File

@@ -0,0 +1,22 @@
name: fable-impl-ready
version: 1
description: Impl of a spec requirement against pre-validated tests, Fable in worktree (final-tier escalation before blocked)
runtime: code-fable-tdd-repo
input:
state: scaffolded
tags_forbidden: [security-sensitive]
required_artifacts: []
output:
state: impl-green
scope_budget:
files_modified_max: 5
lines_diff_max: 400
wall_clock_seconds_max: 3600
nodes:
- id: agent
kind: agent
template: code-fable-tdd-repo
runtime_env:
AGENT_REPO_URL: "git@gitea.oreillyit.nz-ai-enablement:skynet/agent-runtimes-agents.git"
AGENT_BRANCH: "task/${item.uuid}"
prompt: "Implement the task. ${metadata.automation.test_files}${metadata.automation.spec_ids}Task description: ${artifacts.item_title}. ${artifacts.item_body}"

View File

@@ -0,0 +1,22 @@
name: minimax-impl-ready
version: 1
description: Impl of a spec requirement against pre-validated tests, MiniMax in worktree (second-tier escalation from airouter)
runtime: code-minimax-tdd-repo
input:
state: scaffolded
tags_forbidden: [security-sensitive]
required_artifacts: []
output:
state: impl-green
scope_budget:
files_modified_max: 3
lines_diff_max: 200
wall_clock_seconds_max: 1800
nodes:
- id: agent
kind: agent
template: code-minimax-tdd-repo
runtime_env:
AGENT_REPO_URL: "git@gitea.oreillyit.nz-ai-enablement:skynet/agent-runtimes-agents.git"
AGENT_BRANCH: "task/${item.uuid}"
prompt: "Implement the task. ${metadata.automation.test_files}${metadata.automation.spec_ids}Task description: ${artifacts.item_title}. ${artifacts.item_body}"