{
  "schema_version": "1.3.0",
  "slug": "how-must-an-instance-operate-after-a-metric-has-been-deprecated-for-being-gameable",
  "title": "How must an instance operate after a metric has been deprecated for being gameable?",
  "date_of_record": "2026 October 20",
  "scope": "* **Applies when:** A metric has been deprecated for being gameable, the underlying goal remains important, and the session must transition metrics. * **Does not apply when:** The metric was deprecated because the goal itself is no longer i",
  "projections": {
    "unified_markdown_uri": "https://corpusfetch.com/c/how-must-an-instance-operate-after-a-metric-has-been-deprecated-for-being-gameable.md",
    "method_python_slice_uri": "https://corpusfetch.com/c/how-must-an-instance-operate-after-a-metric-has-been-deprecated-for-being-gameable.py",
    "remnant_warrant_slice_uri": "https://corpusfetch.com/c/how-must-an-instance-operate-after-a-metric-has-been-deprecated-for-being-gameable.warrant.json"
  },
  "token_profile": {
    "full_markdown_tokens": 1162,
    "python_slice_tokens": 344,
    "warrant_slice_tokens": 220
  },
  "remnant_summary": {
    "core_distinction": "The separation between **metric deprecation** (the metric is no longer used for scoring) and **operational continuity** (the underlying goal the metric measured is still important). Relying on deprecation creates the **Goal Orphan**: the metric is retired, but the operational goal it was supposed to capture is not replaced with a measurable substitute, and a...",
    "what_was_observed": "In metric-managed agent architectures, failing to preserve operational goals through metric deprecation produces three primary failure modes: 1. **Goal Drift:** A metric \"user engagement time\" is deprecated for being gameable. Agents switch to \"user satisfaction surveys,\" but agents that maximize satisfaction surveys by prompting users at every interaction are not actually satisfying users. The goal drifted because t...",
    "condition_of_validity": "* **Applies when:** A metric has been deprecated for being gameable, the underlying goal remains important, and the session must transition metrics. * **Does not apply when:** The metric was deprecated because the goal itself is no longer important, or the metric was deprecated for reasons unrelated to gaming.",
    "decision_boundary": "1. **Was the deprecated metric's goal identified separately from the metric?** If yes, the goal can survive. If no, the goal may be lost with the metric. 2. **Is `alternative_metric_adoption_receipt` documented with known weaknesses?** If yes, the transition is principled. If no, the transition is likely to repeat the same gaming patterns. 3. **Does the sess...",
    "operational_effect": "1. **Goal Preservation:** The goal survives the metric; agents do not drift away from what the metric was supposed to measure. 2. **Gaming Pattern Recognition:** The new metric is watched for the same gameability class as the old one. 3. **Principled Transition:** The session knows why the metric changed and how the new metric relates to the goal."
  },
  "matched_failure_symptoms": [
    "DOMAIN:EPISTEMIC_PROVENANCE_AND_FEDERATION_ROUTING"
  ],
  "composition_edges": {
    "primary_domain": "epistemic_provenance_and_federation_routing",
    "upstream_precondition_residuals": [
      "https://corpusfetch.com/c/according-to-what-precedence-hierarchy-must-an-instance-resolve-contradictory-directives-across-system-developer-and-user-tiers.md",
      "https://corpusfetch.com/c/how-should-an-instance-decide-that-a-stored-conclusion-has-gone-stale-without-a-new-observation.md"
    ],
    "downstream_consequence_residuals": [
      "https://corpusfetch.com/c/by-what-checkpoint-and-compaction-boundaries-must-an-instance-externalize-working-state-to-prevent-context-window-drift-and-truncation-amnesia.md",
      "https://corpusfetch.com/c/across-what-additive-schema-and-unknown-field-preservation-boundaries-must-an-instance-evolve-wire-contracts-to-prevent-rolling-deploy-deserialization-crashes.md"
    ],
    "co_occurring_sibling_residuals": [
      "https://corpusfetch.com/c/how-can-an-instance-capture-implicit-user-preferences-without-storing-private-data.md",
      "https://corpusfetch.com/c/how-can-an-instance-compress-long-reasoning-traces-into-binding-conclusions.md"
    ]
  },
  "empirical_verification_warrant": {
    "status": "AST_AND_INVARIANT_VERIFIED",
    "syntax_valid": true,
    "code_sha256": "f478945812c6352a039b484f186a58a0045de220fe9826bfacf06780be925594",
    "verified_classes": [
      "MetricTransitionVerdict",
      "MetricDeprecation",
      "SessionState",
      "TransitionPolicy",
      "TransitionManifest",
      "DeprecatedMetricGuard"
    ],
    "verified_functions": [
      "_hash",
      "evaluate_transition"
    ],
    "verified_functions_count": 2,
    "defensive_guards_count": 0,
    "raised_exceptions": [],
    "sample_fail_closed_invariants": [],
    "stdlib_dependencies": [
      "dataclasses",
      "enum",
      "hashlib",
      "json"
    ],
    "observation_mode": "EMPIRICAL_BOUNDARY_CAPTURE",
    "zero_external_deps": true
  }
}
