Files
CASAN/.claude/agents/protocols/pipeline-context.md
T
thanhnvandClaude Opus 4.8 18997caf49 docs: align all documentation with the new repo structure
Update agent protocols (.claude/agents, .github/agents), guides, runbooks and READMEs
to the post-restructure layout: .specify/{scripts,tests,security,config,templates,
governance,memory,level5-config} -> packages/casan-harness/...; docs/input +
golden-runs + traceability-map -> apps/okr/domain/...; drop AINative_OKR_CASAN5/ prefix.
Runtime-state paths (.specify/logs, .specify/agentops, .specify/level5/central-governance)
kept as-is. Historical evidence under docs/output/ left untouched (immutable run records).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-08 14:36:27 +09:00

5.9 KiB

Pipeline Context File

The Boss maintains a running context file updated after each step. Sub-agents read this file instead of re-reading large source files.

Path

docs/output/output_logs/<feature-id>/pipeline-context.yaml

Schema

# --- Immutable (set at STEP 0) ---
feature-id: <feature-id>
module-id: <mod-id>              # e.g. mod01
module-keyword: <keyword>        # e.g. OKR
module-short-name: <short-name>  # e.g. xxx
mode: autonomous
language: Vietnamese

# --- Tech stack summary (extracted once from docs/technical_architecture.md) ---
tech-stack:
  backend: "NestJS 10, Node.js 22, TypeScript 5"
  frontend: "React 18.3, Vite 6.0"
  db: "PostgreSQL 17"
  cache: "Redis 7.4"
  css: "Bootstrap 5 (utility classes only)"

# --- Updated after each step ---
casan-harness:
  level-target: 5
  h4-security:
    policy: packages/casan-harness/security/prompt-filter.yaml
    output-policy: packages/casan-harness/security/output-policy.yaml
    audit-log: .specify/logs/audit/security.jsonl
  h5-governance:
    approval-flow: packages/casan-harness/governance/approval-flow.yaml
    risk-registry: packages/casan-harness/governance/risk-registry.yaml
    audit-log: .specify/logs/audit/audit.jsonl
  h6-agentops:
    metrics-policy: .specify/agentops/metrics.yaml
    metrics-log: .specify/logs/cost/metrics.jsonl
    alert-log: .specify/agentops/alerts.log
  h2-tool-registry:
    registry: packages/casan-harness/level5/tool-registry.yaml
    audit-log: .specify/logs/level5/tool-registry.jsonl
  h7-drift:
    golden-dir: apps/okr/domain/golden-runs/
    drift-log: .specify/logs/level5/drift.jsonl
  rollback:
    transactions-log: .specify/logs/level5/rollback-transactions.jsonl
steps:
  step-0:
    status: COMPLETE
    pipeline-mode: UPDATE | CREATE
    casan:
      h4-trace: .specify/logs/trace/security-<trace-id>.json
      h4-verdict: PASS | BLOCKED        # PASS = clean, BLOCKED = security violation detected
      h5-trace: .specify/logs/trace/governance-<trace-id>.json
      h5-verdict: APPROVED | DENIED     # APPROVED = governance ok, DENIED = policy/approval rejected
      h6-trace: .specify/logs/trace/agentops-<trace-id>.json
      h6-verdict: OK | ALERT            # OK = metrics normal, ALERT = threshold breached
  step-1-srs:
    status: COMPLETE | SKIPPED | FAILED
    path: docs/output/ipa-docs/srs/srs-<mod-id>-<short-name>.md
    report: docs/output/output_logs/<feature-id>/reports/01-srs-report.md
    fea-count: <N>
    tbc-count: <N>
  step-2-bd:
    status: COMPLETE
    path: docs/output/ipa-docs/bd/bd-<mod-id>-<short-name>.md
    report: docs/output/output_logs/<feature-id>/reports/02-bd-report.md
    screen-count: <N>
  step-3-spec:
    status: COMPLETE
    path: docs/output/specs/<feature-id>/spec.md
    report: docs/output/output_logs/<feature-id>/reports/03-specify-report.md
    branch: <branch-name>
  step-4-clarify:
    status: COMPLETE
    qa-path: docs/output/output_logs/<feature-id>/reports/04-clarify-qa.md
    report: docs/output/output_logs/<feature-id>/reports/04-clarify-report.md
    tbc-resolved: <N>
  step-5-review-spec:
    status: COMPLETE
    verdict: APPROVED | APPROVED_WITH_CONDITIONS | REJECTED
    report: docs/output/output_logs/<feature-id>/reports/05-review-spec-report.md
    retries: <N>
  step-6-plan:
    status: COMPLETE
    path: docs/output/specs/<feature-id>/plan.md
    data-model: docs/output/specs/<feature-id>/data-model.md
    contracts: docs/output/specs/<feature-id>/contracts/
    report: docs/output/output_logs/<feature-id>/reports/06-plan-report.md
  step-7-review-plan:
    status: COMPLETE
    verdict: APPROVED
    report: docs/output/output_logs/<feature-id>/reports/07-review-plan-report.md
    retries: <N>
  step-8-dd:
    status: COMPLETE
    path: docs/output/ipa-docs/dd/dd-<mod-id>-<short-name>.md
    report: docs/output/output_logs/<feature-id>/reports/08-dd-report.md
  step-8b-testcases:
    status: COMPLETE
    path: docs/output/ipa-docs/testcase/testcase-<mod-id>-<short-name>.md
    report: docs/output/output_logs/<feature-id>/reports/08b-testcases-report.md
  step-9-tasks:
    status: COMPLETE
    path: docs/output/specs/<feature-id>/tasks.md
    report: docs/output/output_logs/<feature-id>/reports/09-tasks-report.md
  step-10-implement:
    status: COMPLETE
    report: docs/output/output_logs/<feature-id>/reports/10-implement-report.md
    retries: <N>
  step-11-review-code:
    status: COMPLETE
    verdict: APPROVED
    report: docs/output/output_logs/<feature-id>/reports/11-review-code-report.md
    retries: <N>
  step-12-testkit:
    status: COMPLETE
    verdict: PASS | FAIL
    report: docs/output/output_logs/<feature-id>/reports/12-testkit-report.md
    ipa-report: docs/output/ipa-docs/testreport/testreport-<mod-id>-<short-name>.md
    back-to-plan-cycles: <N>
  step-13-launch:
    status: COMPLETE
    fe-url: "http://localhost:5173"
    be-url: "http://localhost:8081"
    report: docs/output/output_logs/<feature-id>/reports/13-launch-report.md

Boss Update Rules

  1. After STEP 0: Create file with immutable section + tech-stack (read from docs/technical_architecture.md once)
  2. After each step: Parse the sub-agent's <!-- STEP-RESULT --> block and update the corresponding steps.step-N section
  3. After each CASAN gate: Append H4/H5/H6 trace paths and status under the corresponding step's casan key
  4. Before delegating: Sub-agents receive the pipeline-context path in $ARGUMENTS and can read it for all prior step outputs

Sub-Agent Read Rules

Sub-agents SHOULD read pipeline-context.yaml at startup to discover:

  • feature-id, module-id, module-keyword (no need to re-detect)
  • Artifact paths from prior steps (no need to guess)
  • Tech stack (no need to re-read docs/technical_architecture.md for basics)
  • CASAN harness evidence paths and policies for H4/H5/H6