Akashik Protocol
Operations

DETECT

Identify conflicts between memory units.

Purpose

DETECT allows agents or the Field itself to identify contradictions between memory units. Conflicts may be detected explicitly (via contradicts relations in RECORD) or automatically through semantic, logical, or temporal analysis at Level 2+.

Conformance Level

Level 1+ — Level 0 implementations MAY omit DETECT.

Request

{
  "mode": "check | scan | list",
  "target_id": "<string | null>",
  "filter": {
    "status": ["<string>"],
    "types": ["<string>"],
    "involving_agents": ["<string>"]
  }
}
FieldRequiredDescription
modeDetection mode. See modes below.
target_idRequired for check mode. The memory unit to check.
filterOptional filters for list and scan modes.

Modes

ModeDescriptionRequired Level
listReturn all known conflicts matching the filter.1+
checkCheck a specific memory unit against the Field for contradictions. Requires target_id.1+ (MAY support)
scanRun conflict detection across all memory units in scope.2+

Response

{
  "status": "ok",
  "conflicts": ["<Conflict>"],
  "scan_coverage": {
    "units_scanned": "<number>",
    "new_conflicts_found": "<number>"
  }
}

Behavioral Requirements

Level 1+ The Field MUST support list mode.

Level 1+ The Field MUST detect explicit conflicts when a RECORD includes a contradicts relation.

Level 2+ The Field MUST support all three modes and MUST implement at least one automatic detection method beyond explicit relations.

Automatic Detection Methods (Level 2+)

MethodDescription
semanticMemory units with high embedding similarity but opposing claims are flagged.
logicalA finding's assumptions contradict another finding's content.
temporalA newer, lower-confidence finding contradicts an established, higher-confidence finding.

The protocol does not prescribe specific thresholds or algorithms for automatic detection. These are implementation choices documented by the implementor.

Example

Check for conflicts involving a specific unit:

{
  "protocol": "akashik",
  "version": "0.1.0",
  "id": "msg-015",
  "operation": "DETECT",
  "agent_id": "analyst-01",
  "session_id": null,
  "epoch": 15,
  "payload": {
    "mode": "check",
    "target_id": "mem-002"
  }
}

Response:

{
  "status": "ok",
  "conflicts": [
    {
      "id": "conflict-001",
      "type": "factual",
      "status": "detected",
      "unit_a": "mem-002",
      "unit_b": "mem-010",
      "description": "Conflicting market growth estimates: 23% CAGR vs 14% CAGR",
      "detected_by": "explicit"
    }
  ],
  "scan_coverage": {
    "units_scanned": 1,
    "new_conflicts_found": 0
  }
}

Error Codes

CodeConditionRecoverable
UNIT_NOT_FOUNDtarget_id references a nonexistent memory unitNo
AGENT_NOT_REGISTEREDagent_id is not a registered active agentYes — call REGISTER first
UNSUPPORTED_OPERATIONscan or check mode not supported at this conformance levelNo