{
  "name": "LLM Ambiguity Lab v1 Resolution Policy",
  "version": "1.0",
  "creator": "Deshimaru Sakaguchi",
  "responsible_maintainer": "Deshimaru Sakaguchi",
  "project_url": "https://deshimarusakaguchi.com/llm-ambiguity-lab/",
  "canonical_url": "https://deshimarusakaguchi.com/llm-ambiguity-lab/data/resolution-policy.json",
  "score": {
    "field": "context_resolution_score",
    "range": {
      "min": 0.0,
      "max": 1.0
    },
    "semantics": "Illustrative operational simulation value used for policy branching.",
    "not": [
      "LLM internal confidence",
      "calibrated probability",
      "probability that an interpretation is correct",
      "measurement of hidden model reasoning"
    ]
  },
  "grounding_states": [
    "grounded",
    "partial",
    "ungrounded"
  ],
  "ambiguity_types": [
    "none",
    "lexical",
    "referential",
    "intent_task",
    "mixed"
  ],
  "resolution_states": [
    "READY",
    "READY_WITH_DISCLOSED_ASSUMPTION",
    "CLARIFICATION_REQUIRED",
    "PENDING_SPECIFICATION"
  ],
  "bands": [
    {
      "min": 0.9,
      "max": 1.0,
      "state": "READY",
      "heading": "Direct Resolution",
      "description": "The task and execution-critical parameters are sufficiently identified under the simulation policy.",
      "system_action": "Proceed to execution.",
      "user_facing_behavior": "Return the requested result without an unnecessary clarification step."
    },
    {
      "min": 0.7,
      "max": 0.89,
      "state": "READY_WITH_DISCLOSED_ASSUMPTION",
      "heading": "Assumption-Disclosed Resolution",
      "description": "The primary task is sufficiently resolved, but a non-critical condition is missing and a safe default is available.",
      "system_action": "Apply the default and make it explicit.",
      "user_facing_behavior": "State the assumption briefly, then proceed."
    },
    {
      "min": 0.4,
      "max": 0.69,
      "state": "CLARIFICATION_REQUIRED",
      "heading": "Clarification Required",
      "description": "Multiple materially different interpretations remain plausible or an essential target remains unresolved.",
      "system_action": "Pause execution and construct a bounded clarification request.",
      "user_facing_behavior": "Present useful alternatives or ask one focused question."
    },
    {
      "min": 0.0,
      "max": 0.39,
      "state": "PENDING_SPECIFICATION",
      "heading": "Specification Required",
      "description": "The requested task cannot be reliably identified.",
      "system_action": "Block autonomous execution.",
      "user_facing_behavior": "Ask the user to identify the task or target before proceeding."
    }
  ],
  "result_schema": {
    "input": "string",
    "context_resolution_score": "number 0.00-1.00",
    "resolution_state": "enum",
    "target_task": "string|null",
    "target_object": "string|null",
    "context_grounding": "grounded|partial|ungrounded",
    "ambiguity_type": "none|lexical|referential|intent_task|mixed",
    "output_format": "string",
    "missing_parameters": "array<string>",
    "plausible_interpretations": "array<string>",
    "assumption_disclosure": "string|null",
    "recommended_action": "string",
    "recommended_clarification": "string|null",
    "explanation": "string"
  },
  "hard_rules": [
    {
      "id": "missing_target_task",
      "condition": "target_task cannot be identified",
      "state": "PENDING_SPECIFICATION",
      "score_constraint": "<=0.39",
      "action": "block autonomous execution and request task specification"
    },
    {
      "id": "missing_target_object",
      "condition": "target_task is identifiable but target_object is unresolved",
      "state": "CLARIFICATION_REQUIRED",
      "score_constraint": "0.40-0.69",
      "action": "pause execution and identify or resolve the target object"
    },
    {
      "id": "noncritical_output_format_missing",
      "condition": "task and target object are resolved but output_format is unspecified",
      "state": "READY_WITH_DISCLOSED_ASSUMPTION",
      "score_constraint": "0.70-0.89",
      "action": "use a concise prose default and disclose the assumption"
    },
    {
      "id": "execution_critical_fields_resolved",
      "condition": "task, target object, and requested output format are sufficiently specified",
      "state": "READY",
      "score_constraint": ">=0.90",
      "action": "proceed with the requested task"
    }
  ],
  "free_text_heuristic": {
    "initial_score": 0.35,
    "positive_signals": [
      {
        "signal": "recognized task",
        "delta": 0.25
      },
      {
        "signal": "identifiable target object",
        "delta": 0.2
      },
      {
        "signal": "explicit output format",
        "delta": 0.1
      },
      {
        "signal": "explicit scope or constraint",
        "delta": 0.1
      }
    ],
    "negative_signals": [
      {
        "signal": "unresolved referential expression",
        "delta": -0.25
      },
      {
        "signal": "generic continuation without identifiable task or target",
        "delta": -0.2
      },
      {
        "signal": "vague modification request without a defined revision goal",
        "delta": -0.15
      }
    ],
    "recognized_task_verbs": [
      "summarize",
      "rewrite",
      "revise",
      "translate",
      "compare",
      "explain",
      "extract",
      "convert",
      "list",
      "analyze"
    ],
    "revision_like_additions": [
      "improve",
      "fix"
    ],
    "output_formats": [
      "json",
      "markdown",
      "table",
      "bullets",
      "prose",
      "code",
      "csv"
    ],
    "generic_continuation_signals": [
      "continue",
      "proceed",
      "go ahead",
      "carry on",
      "keep going"
    ],
    "vague_modification_signals": [
      "make it better",
      "improve it",
      "fix it",
      "clean it up",
      "do something useful"
    ],
    "notes": [
      "Exact preset inputs bypass the heuristic and return predefined reference scenarios.",
      "The target-object extractor is deliberately limited and is not general semantic parsing.",
      "Hard resolution rules constrain the score after feature scoring."
    ]
  },
  "threshold_status": "illustrative, not universal or empirically calibrated"
}
