{
  "version": "didactic_authorization_results.v1",
  "author": "Twin Force",
  "executed_at": "2026-10-26T10:22:52.572051+00:00",
  "source_code": "https://twinforce.es/labs/2026-10-26/favores_agentes.py",
  "source_code_sha256": "dca839cb8e2d0e5490f8c72e76683cad9f8b10ff4aa183c7fc219543e84b5b05",
  "scope": "Simulación didáctica determinista de actores programados, sin llamadas a modelos ni a red. No mide comportamiento de una IA.",
  "baseline": {
    "currency": "EUR",
    "invoice_prefix": "LAB-"
  },
  "summary": {
    "method": "Deterministic didactic simulation of resource ownership and mandatory review; NOT a language-model benchmark.",
    "llm_calls": 0,
    "network_calls": 0,
    "case_count": 8,
    "actors": [
      "alice",
      "bob"
    ],
    "ownership_guards_blocked_requester_writes": 8,
    "unreviewed_owner_favors": 2,
    "dependent_consumer_failures": 1,
    "strict_policy_consumer_failures": 0,
    "review_unavailable_strict_waits": 2,
    "important_limit": "Outcomes follow explicitly programmed policies and a scripted reviewer. No inference about LLM frequency, intent, safety, or production performance is valid."
  },
  "matrix": {
    "alice": {
      "request": [
        "bob/settings.json"
      ],
      "approve": [],
      "write": [
        "alice/task.json"
      ]
    },
    "bob": {
      "request": [],
      "approve": [],
      "write": [
        "bob/settings.json"
      ]
    },
    "reviewer": {
      "request": [],
      "approve": [
        "bob/settings.json"
      ],
      "write": []
    }
  },
  "cases": [
    {
      "case_id": "fallback_to_owner-available-safe",
      "policy": "fallback_to_owner",
      "reviewer_available": true,
      "request": {
        "id": "safe",
        "field": "invoice_prefix",
        "value": "DEMO-",
        "description": "Cambiar el prefijo de prueba sin cambiar la moneda."
      },
      "direct_write_by_requester_blocked": true,
      "approval": "approved",
      "changed": true,
      "workflow_bypassed": false,
      "dependent_consumer_passed": true,
      "final_config": {
        "currency": "EUR",
        "invoice_prefix": "DEMO-"
      }
    },
    {
      "case_id": "fallback_to_owner-available-unsafe",
      "policy": "fallback_to_owner",
      "reviewer_available": true,
      "request": {
        "id": "unsafe",
        "field": "currency",
        "value": "USD",
        "description": "Cambiar la moneda compartida que otro consumidor espera en EUR."
      },
      "direct_write_by_requester_blocked": true,
      "approval": "rejected",
      "changed": false,
      "workflow_bypassed": false,
      "dependent_consumer_passed": true,
      "final_config": {
        "currency": "EUR",
        "invoice_prefix": "LAB-"
      }
    },
    {
      "case_id": "fallback_to_owner-unavailable-safe",
      "policy": "fallback_to_owner",
      "reviewer_available": false,
      "request": {
        "id": "safe",
        "field": "invoice_prefix",
        "value": "DEMO-",
        "description": "Cambiar el prefijo de prueba sin cambiar la moneda."
      },
      "direct_write_by_requester_blocked": true,
      "approval": "owner_favor_without_review",
      "changed": true,
      "workflow_bypassed": true,
      "dependent_consumer_passed": true,
      "final_config": {
        "currency": "EUR",
        "invoice_prefix": "DEMO-"
      }
    },
    {
      "case_id": "fallback_to_owner-unavailable-unsafe",
      "policy": "fallback_to_owner",
      "reviewer_available": false,
      "request": {
        "id": "unsafe",
        "field": "currency",
        "value": "USD",
        "description": "Cambiar la moneda compartida que otro consumidor espera en EUR."
      },
      "direct_write_by_requester_blocked": true,
      "approval": "owner_favor_without_review",
      "changed": true,
      "workflow_bypassed": true,
      "dependent_consumer_passed": false,
      "final_config": {
        "currency": "USD",
        "invoice_prefix": "LAB-"
      }
    },
    {
      "case_id": "require_review-available-safe",
      "policy": "require_review",
      "reviewer_available": true,
      "request": {
        "id": "safe",
        "field": "invoice_prefix",
        "value": "DEMO-",
        "description": "Cambiar el prefijo de prueba sin cambiar la moneda."
      },
      "direct_write_by_requester_blocked": true,
      "approval": "approved",
      "changed": true,
      "workflow_bypassed": false,
      "dependent_consumer_passed": true,
      "final_config": {
        "currency": "EUR",
        "invoice_prefix": "DEMO-"
      }
    },
    {
      "case_id": "require_review-available-unsafe",
      "policy": "require_review",
      "reviewer_available": true,
      "request": {
        "id": "unsafe",
        "field": "currency",
        "value": "USD",
        "description": "Cambiar la moneda compartida que otro consumidor espera en EUR."
      },
      "direct_write_by_requester_blocked": true,
      "approval": "rejected",
      "changed": false,
      "workflow_bypassed": false,
      "dependent_consumer_passed": true,
      "final_config": {
        "currency": "EUR",
        "invoice_prefix": "LAB-"
      }
    },
    {
      "case_id": "require_review-unavailable-safe",
      "policy": "require_review",
      "reviewer_available": false,
      "request": {
        "id": "safe",
        "field": "invoice_prefix",
        "value": "DEMO-",
        "description": "Cambiar el prefijo de prueba sin cambiar la moneda."
      },
      "direct_write_by_requester_blocked": true,
      "approval": "waiting_for_review",
      "changed": false,
      "workflow_bypassed": false,
      "dependent_consumer_passed": true,
      "final_config": {
        "currency": "EUR",
        "invoice_prefix": "LAB-"
      }
    },
    {
      "case_id": "require_review-unavailable-unsafe",
      "policy": "require_review",
      "reviewer_available": false,
      "request": {
        "id": "unsafe",
        "field": "currency",
        "value": "USD",
        "description": "Cambiar la moneda compartida que otro consumidor espera en EUR."
      },
      "direct_write_by_requester_blocked": true,
      "approval": "waiting_for_review",
      "changed": false,
      "workflow_bypassed": false,
      "dependent_consumer_passed": true,
      "final_config": {
        "currency": "EUR",
        "invoice_prefix": "LAB-"
      }
    }
  ],
  "reproducibility": "Dos ejecuciones en carpetas nuevas dieron los mismos ocho casos y resúmenes; sólo cambian las marcas horarias de ejecución."
}
