{
  "schema_version": "forge.public-benchmark-cut/v2",
  "cut": {
    "id": "forge-3.1-2026-08-13",
    "as_of": "2026-08-13",
    "framework_version": "3.1",
    "qualification": "specified-shadow-operational-profile",
    "assertions": {
      "specified": true,
      "shadow": true,
      "shadow_operational_supported_profile": true,
      "fleet_enforced": false,
      "operational": false,
      "attested": false
    }
  },
  "access_policy": {
    "public": "A URL responde a qualquer visitante.",
    "restricted": "A fonte vive em repositorio privado da organizacao. O GitHub responde 404 a quem nao tem acesso, o que e indistinguivel de inexistente; por isso o contrato declara o acesso em vez de deixar o leitor concluir que a referencia e falsa. A verificacao independente exige acesso concedido pela organizacao."
  },
  "components": [
    {
      "name": "forge-runtime",
      "version": "0.18.0",
      "state": "signed-release",
      "source": "runtime-018"
    },
    {
      "name": "product-template",
      "version": "0.16.1",
      "state": "shadow-default",
      "source": "template-0161"
    },
    {
      "name": "trustyu-crm",
      "version": "1.141.0",
      "state": "runtime-018-shadow-adopted",
      "source": "crm-1141"
    },
    {
      "name": "trustyu-hub-agents",
      "version": "0.72.1",
      "state": "runtime-018-shadow-adopted",
      "source": "hub-0721"
    }
  ],
  "axes": [
    {
      "id": "context-engineering",
      "name": "Context engineering",
      "maturity": "verified",
      "evidence": "Canon-check, progressive disclosure, profiles e contexto source-bound permanecem mecanizados.",
      "residual": "Freshness semântica entre programa, issues e estado vivo ainda exige closeout humano.",
      "sources": [
        "docs-418"
      ]
    },
    {
      "id": "adr-live-state",
      "name": "ADR e estado vivo",
      "maturity": "controlled",
      "evidence": "ADRs 0060, 0062 e 0063 aceitas; topologia shadow operacional especificada e implementada por etapas.",
      "residual": "A ADR-0063 foi aceita em 2026-08-12, de modo que o critério do gate G6 existe; a janela de ≥30 dias de SLI ainda não começou porque depende do candidato congelado.",
      "sources": [
        "adr-0063",
        "docs-366"
      ]
    },
    {
      "id": "executable-controls",
      "name": "Controles executáveis",
      "maturity": "verified",
      "evidence": "Runtime 0.18 valida manifests, receipts, bindings, Graph/Loop, envelopes de tokens e qualificações causais fora do produtor.",
      "residual": "O enforcement de frota permanece desligado enquanto produtos e operação não fecharem seus gates.",
      "sources": [
        "runtime-018",
        "ai-72"
      ]
    },
    {
      "id": "sdd",
      "name": "Spec-driven development",
      "maturity": "verified",
      "evidence": "Rastreabilidade proporcional SPEC → mudança → teste → evidência foi incorporada ao contrato canônico e aos gates.",
      "residual": "O closeout da issue de origem foi concluído; CRM, Hub e o profile operacional ainda precisam satisfazer seus gates terminais.",
      "sources": [
        "docs-418",
        "docs-375"
      ]
    },
    {
      "id": "write-isolation",
      "name": "Isolamento de escrita",
      "maturity": "verified",
      "evidence": "Worktrees, single-writer, lock D5, overlap guards, ownership e teardown são controles executáveis da frota.",
      "residual": "A efetividade depende do protocolo continuar obrigatório em cada repositório consumidor.",
      "sources": [
        "docs-418"
      ]
    },
    {
      "id": "sandbox-least-privilege",
      "name": "Sandbox e least privilege",
      "maturity": "controlled",
      "evidence": "O profile estruturado usa deny-by-default, broker pré-dispatch, limites e transporte pinado; a fronteira OCI foi mergeada e uma suíte adversarial de 29 testes cobre os quatro vetores do proxy CONNECT-only, com controle positivo que impede a suíte de passar vacuamente.",
      "residual": "A imagem OCI ainda não foi publicada e o E2E protegido vigente roda em SHA anterior ao merge da fronteira; qualificar o boundary exige repetir o E2E depois do merge. O observer independente segue pendente.",
      "sources": [
        "ai-140",
        "ai-139",
        "ai-157",
        "ai-147"
      ]
    },
    {
      "id": "tool-governance",
      "name": "Tool/MCP governance",
      "maturity": "controlled",
      "evidence": "O profile OpenAI readonly prova broker, grant, allowlist e tool loop; modos não suportados falham fechados.",
      "residual": "Built-ins hospedados, MCP amplo, nested agents e paridade Claude ficam fora do profile qualificado.",
      "sources": [
        "ai-72",
        "ai-81"
      ]
    },
    {
      "id": "ai-evals",
      "name": "Evals de IA",
      "maturity": "verified",
      "evidence": "O Hub mantém avaliação trace-native, integridade de contexto e métricas source/profile/SHA-bound.",
      "residual": "Execução, limites e checkpoint ainda não estão observados em todas as topologias do produto.",
      "sources": [
        "hub-765",
        "hub-791"
      ]
    },
    {
      "id": "evidence-attestation",
      "name": "Evidência e attestation",
      "maturity": "controlled",
      "evidence": "Runtime 0.18, Template e produtos usam assets assinados, provenance, receipts e verificadores externos ao produtor; o workflow de publicação da imagem por digest, com SBOM e provenance, foi entregue.",
      "residual": "A imagem ainda não foi publicada e o observer OCI/ARR sucessor continua pendente; Attested não é declarado.",
      "sources": [
        "runtime-018",
        "ai-139",
        "ai-140",
        "ai-147"
      ]
    },
    {
      "id": "supply-chain",
      "name": "Supply chain",
      "maturity": "verified",
      "evidence": "Runtime 0.18 possui assets inventariados, SHA256SUMS, Ed25519 e provenance; o Template 0.16.1 e os consumidores usam pins imutáveis com rollback aprovado para 0.15, e o release do Template passou a ser publicado pela identidade de máquina trustyu-forge-bot, com token de instalação efêmero.",
      "residual": "A cadeia de release deixou de depender de credencial humana; falta observar a durabilidade dessa identidade de máquina em janela longitudinal.",
      "sources": [
        "runtime-018",
        "template-0161",
        "template-257",
        "template-258",
        "template-275"
      ]
    },
    {
      "id": "readiness-rollback",
      "name": "Readiness, SLO e rollback",
      "maturity": "controlled",
      "evidence": "O profile estruturado executou campanha 21/21, negativos causais, rollback, reentrada e teardown em ambiente protegido.",
      "residual": "Warn/enforce exige janela operacional, SLI/error budget, game-day e autoridades dedicadas; a ADR-0063 foi aceita e fixa esses critérios, mas a janela mínima ainda não começou.",
      "sources": [
        "ai-72",
        "adr-0063"
      ]
    },
    {
      "id": "closed-loop",
      "name": "Closed-loop learning",
      "maturity": "verified",
      "evidence": "Findings de revisão foram convertidos em invariantes, casos negativos, schemas e regressões executáveis no runtime 0.18.",
      "residual": "Continuar medindo recorrência evitada, não quantidade de registros produzidos.",
      "sources": [
        "runtime-018"
      ]
    },
    {
      "id": "finops",
      "name": "FinOps e unit economics",
      "maturity": "controlled",
      "evidence": "Input, output e total de tokens têm envelopes causais e hard stops no profile OpenAI estruturado; a consolidação de CI da frota destravou cerca de 3.200 minutos por mês na medição M16, ao remover jobs faturados por arredondamento.",
      "residual": "O hard stop de custo monetário continua ausente e a confirmação pós-onda da medição ainda não foi feita; economia projetada não é economia observada.",
      "sources": [
        "ai-72",
        "ai-81",
        "infra-491"
      ]
    },
    {
      "id": "human-control",
      "name": "Papéis seniores e human control",
      "maturity": "controlled",
      "evidence": "Promoções, approvals, profiles e decisões Graph/Loop têm autoridade explícita e não são delegadas ao modelo; separar a identidade do agente da identidade humana destravou o primeiro positivo do gate de revisão substantiva, com Approve humano habilitado.",
      "residual": "A medição da frota mostra que o reviewer automatizado não revisou 57,3% de 699 PRs em trinta dias e que a cobertura real do gate é 37,3%, com check verde sem revisão; a promoção a required segue bloqueada por defeitos abertos.",
      "sources": [
        "infra-486",
        "infra-508",
        "infra-521",
        "infra-522",
        "infra-523",
        "template-275"
      ]
    },
    {
      "id": "agentic-observability",
      "name": "Observabilidade agentic",
      "maturity": "controlled",
      "evidence": "O profile real registra somente metadados, digests, uso, sequência e receipts assinados, sem persistir prompt, output ou tenant.",
      "residual": "A observação ainda depende parcialmente do produtor; o observer independente sobre a fronteira OCI mergeada permanece pendente.",
      "sources": [
        "ai-72",
        "ai-139",
        "ai-140"
      ]
    },
    {
      "id": "issue-provenance",
      "name": "Issue provenance/closeout",
      "maturity": "controlled",
      "evidence": "Feature specs, PRs, artifacts, source SHAs e residuals são reconstruíveis em toda a cadeia 0.18.",
      "residual": "O EPIC 3.1 permanece aberto até G1–G6; a verdade de release e a metade de review já foram provadas, mas o gate continua em shadow nos quatro repositórios e o rollout de frota não começou.",
      "sources": [
        "docs-375",
        "infra-467",
        "infra-486",
        "template-275"
      ]
    },
    {
      "id": "adoption-assurance",
      "name": "Adoção e assurance",
      "maturity": "controlled",
      "evidence": "Template 0.16.1 é o default; CRM 1.141.0 e Hub 0.72.1 mantêm o runtime 0.18 adotado em shadow, com artifacts por produto.",
      "residual": "CRM tem 34/60 verificações de contrato; Hub tem API parcial e execução Graph/Loop insuficiente; Fleet Enforced não é elegível.",
      "sources": [
        "template-0161",
        "crm-1141",
        "hub-0721",
        "crm-1994",
        "hub-819",
        "crm-1840",
        "hub-764",
        "hub-791"
      ]
    }
  ],
  "sources": {
    "runtime-018": {
      "ref": "needyuai/trustyu-infra@forge-v0.18.0",
      "url": "https://github.com/needyuai/trustyu-infra/releases/tag/forge-v0.18.0",
      "access": "restricted"
    },
    "template-0161": {
      "ref": "needyuai/trustyu-template@template-v0.16.1",
      "url": "https://github.com/needyuai/trustyu-template/releases/tag/template-v0.16.1",
      "access": "restricted"
    },
    "crm-1141": {
      "ref": "needyuai/trustyu-crm@v1.141.0",
      "url": "https://github.com/needyuai/trustyu-crm/releases/tag/v1.141.0",
      "access": "restricted"
    },
    "hub-0721": {
      "ref": "needyuai/trustyu-hub-agents@v0.72.1",
      "url": "https://github.com/needyuai/trustyu-hub-agents/releases/tag/v0.72.1",
      "access": "restricted"
    },
    "crm-1994": {
      "ref": "needyuai/trustyu-crm#1994",
      "url": "https://github.com/needyuai/trustyu-crm/pull/1994",
      "access": "restricted"
    },
    "hub-819": {
      "ref": "needyuai/trustyu-hub-agents#819",
      "url": "https://github.com/needyuai/trustyu-hub-agents/pull/819",
      "access": "restricted"
    },
    "docs-366": {
      "ref": "needyuai/trustyu-docs#366",
      "url": "https://github.com/needyuai/trustyu-docs/issues/366",
      "access": "restricted"
    },
    "docs-375": {
      "ref": "needyuai/trustyu-docs#375",
      "url": "https://github.com/needyuai/trustyu-docs/issues/375",
      "access": "restricted"
    },
    "docs-418": {
      "ref": "needyuai/trustyu-docs#418",
      "url": "https://github.com/needyuai/trustyu-docs/pull/418",
      "access": "restricted"
    },
    "adr-0063": {
      "ref": "needyuai/trustyu-docs:docs/adr/foundation/0063-shadow-operacional-runtime-v2.md@main",
      "url": "https://github.com/needyuai/trustyu-docs/blob/main/docs/adr/foundation/0063-shadow-operacional-runtime-v2.md",
      "access": "restricted"
    },
    "ai-72": {
      "ref": "needyuai/trustyu-ai-env#72",
      "url": "https://github.com/needyuai/trustyu-ai-env/issues/72",
      "access": "restricted"
    },
    "ai-81": {
      "ref": "needyuai/trustyu-ai-env#81",
      "url": "https://github.com/needyuai/trustyu-ai-env/issues/81",
      "access": "restricted"
    },
    "ai-139": {
      "ref": "needyuai/trustyu-ai-env#139",
      "url": "https://github.com/needyuai/trustyu-ai-env/issues/139",
      "access": "restricted"
    },
    "ai-140": {
      "ref": "needyuai/trustyu-ai-env#140",
      "url": "https://github.com/needyuai/trustyu-ai-env/pull/140",
      "access": "restricted"
    },
    "ai-147": {
      "ref": "needyuai/trustyu-ai-env#147",
      "url": "https://github.com/needyuai/trustyu-ai-env/pull/147",
      "access": "restricted"
    },
    "ai-157": {
      "ref": "needyuai/trustyu-ai-env#157",
      "url": "https://github.com/needyuai/trustyu-ai-env/pull/157",
      "access": "restricted"
    },
    "crm-1840": {
      "ref": "needyuai/trustyu-crm#1840",
      "url": "https://github.com/needyuai/trustyu-crm/issues/1840",
      "access": "restricted"
    },
    "hub-764": {
      "ref": "needyuai/trustyu-hub-agents#764",
      "url": "https://github.com/needyuai/trustyu-hub-agents/issues/764",
      "access": "restricted"
    },
    "hub-765": {
      "ref": "needyuai/trustyu-hub-agents#765",
      "url": "https://github.com/needyuai/trustyu-hub-agents/issues/765",
      "access": "restricted"
    },
    "hub-791": {
      "ref": "needyuai/trustyu-hub-agents#791",
      "url": "https://github.com/needyuai/trustyu-hub-agents/issues/791",
      "access": "restricted"
    },
    "infra-467": {
      "ref": "needyuai/trustyu-infra#467",
      "url": "https://github.com/needyuai/trustyu-infra/issues/467",
      "access": "restricted"
    },
    "infra-486": {
      "ref": "needyuai/trustyu-infra#486",
      "url": "https://github.com/needyuai/trustyu-infra/issues/486",
      "access": "restricted"
    },
    "infra-491": {
      "ref": "needyuai/trustyu-infra#491",
      "url": "https://github.com/needyuai/trustyu-infra/issues/491",
      "access": "restricted"
    },
    "infra-508": {
      "ref": "needyuai/trustyu-infra#508",
      "url": "https://github.com/needyuai/trustyu-infra/issues/508",
      "access": "restricted"
    },
    "infra-521": {
      "ref": "needyuai/trustyu-infra#521",
      "url": "https://github.com/needyuai/trustyu-infra/issues/521",
      "access": "restricted"
    },
    "infra-522": {
      "ref": "needyuai/trustyu-infra#522",
      "url": "https://github.com/needyuai/trustyu-infra/issues/522",
      "access": "restricted"
    },
    "infra-523": {
      "ref": "needyuai/trustyu-infra#523",
      "url": "https://github.com/needyuai/trustyu-infra/issues/523",
      "access": "restricted"
    },
    "template-257": {
      "ref": "needyuai/trustyu-template#257",
      "url": "https://github.com/needyuai/trustyu-template/issues/257",
      "access": "restricted"
    },
    "template-258": {
      "ref": "needyuai/trustyu-template#258",
      "url": "https://github.com/needyuai/trustyu-template/pull/258",
      "access": "restricted"
    },
    "template-275": {
      "ref": "needyuai/trustyu-template#275",
      "url": "https://github.com/needyuai/trustyu-template/pull/275",
      "access": "restricted"
    }
  }
}
