Skip to content

Objective Intake Resolver

The Objective Intake Resolver is a deterministic read-only advisory component. It evaluates Objective Intake Candidate artifacts and returns an intake assessment for human and Lich review.

The resolver does not accept, approve, create, schedule, dispatch, execute, mutate, or write memory. Lich owns the gate that permits an intake candidate to become a governed Keeper objective.

Classifications

The resolver emits one advisory classification:

  • ready_for_lich_review
  • incomplete
  • ambiguous
  • unsafe
  • governance_blocked

ready_for_lich_review means only that the candidate is complete enough to be reviewed by Lich. It does not mean accepted, approved, governed, Keeper-ready, executable, scheduled, dispatched, or retained in LifeVault.

Assessment Output

Resolver output includes:

  • candidate_id
  • title
  • classification
  • completeness_score
  • missing_fields
  • ambiguity_reasons
  • governance_blockers
  • unsafe_reasons
  • clarification_questions
  • authority_summary
  • execution_authority: none
  • mutation_authority: none
  • lich_gate_required
  • keeper_job_created: false
  • memory_written: false

The rendered output is deterministic JSON sorted by key. It is evidence and recommendation only.

Completeness Scoring

Completeness scoring is deterministic and based only on explicit candidate fields:

  • identity
  • requester
  • scope/title/summary
  • success criteria
  • constraints
  • evidence requirements
  • approval requirements
  • retention policy
  • lifecycle references
  • authority posture
  • redaction status

The resolver does not infer hidden intent from session continuity, transport state, recent conversation, or memory.

Fail-Closed Behavior

  • Invalid non-missing schema errors classify as governance_blocked.
  • Missing required governance fields classify as incomplete.
  • Implicit execution, scheduling, dispatch, Keeper job, runtime mutation, or LifeVault authority classifies as unsafe.
  • Multiple targets or unclear target language classifies as ambiguous.
  • Valid and complete candidates classify as ready_for_lich_review.

Legacy serialized accepted_candidate readiness is canonicalized to ready_for_lich_review on read. Canonical resolver output must use ready_for_lich_review.

Authority Boundary

The resolver may inspect, validate, canonicalize, score, explain, and recommend clarification. It must never create Keeper objectives or jobs, approve, reject authoritatively, schedule, dispatch, execute, mutate runtime state, write LifeVault memory, or infer hidden intent.