Přeskočit na obsah

Tato stránka byla automaticky přeložena z angličtiny, jediného jazyka, ve kterém se tento web píše. Číst originál.

observatory.replay

Záznam scén mesh, který repozitář nese v .ai/repo/observatory/recording.json, a který Observatoř kreslí, označený jako přehrání, kde žádný mesh neběží. Absence je present: false; soubor, který nelze přečíst, je chyba.

Záznam scén mesh, který repozitář nese v .ai/repo/observatory/recording.json, a který Observatoř kreslí, označený jako přehrání, kde žádný mesh neběží. Absence je present: false; soubor, který nelze přečíst, je chyba.

Zpřístupnění

Kde je tato jedna definice dosažitelná. Absence je explicitní: povrch, který není uveden, ji nenese.

povrchjako
MCPnástroj majordomus_observatory_replay
HTTPGET /api/v1/observatory/replay operationId observatory.replay
příkazová řádka—

Schémata

Kanonický vstup a výstup z typů Rustu; schéma nástroje MCP a parametry a odpovědi OpenAPI se odvozují z nich.

vstup · Prázdné

Žádný vstup.

Žádné vlastnosti: schopnost nebere žádný vstup.

JSON Schema
{
  "additionalProperties": false,
  "description": "No input.",
  "title": "Empty",
  "type": "object"
}

výstup · ObservatoryReplay

Záznam, který repozitář nese, nebo že žádný nenese.

use majordomus_cli::capability::builtin::observatory::{replay_at, ObservatoryReplay, RECORDING};
let dir = tempfile::tempdir().unwrap();
let none: ObservatoryReplay = replay_at(dir.path()).unwrap();
assert!(!none.present && none.recording.is_none());
assert_eq!(none.path, RECORDING);
vlastnosttyppovinnépopis
path string ano Soubor, ze kterého se čte.
přítomno boolean ano Zda repozitář nese záznam.
zaznamenávání jedno ze 2 ne Nahrávka.
JSON Schema
{
  "$defs": {
    "ObservatoryRecording": {
      "description": "The mesh scenes of one process at one moment, fit for publication.\n\n```\nuse majordomus_cli::capability::builtin::observatory::ObservatoryRecording;\nlet r: ObservatoryRecording = serde_json::from_value(serde_json::json!({\n    \"schema\": \"observatory-recording/v1\", \"recorded_at\": \"2026-10-14T05:00:00Z\", \"scenes\": {},\n    \"manifest\": { \"sources\": [], \"removed\": [] },\n})).unwrap();\nassert!(r.scenes.is_empty() && r.revision.is_none());\n```",
      "properties": {
        "manifest": {
          "$ref": "#/$defs/RecordingManifest",
          "description": "What the recording is a record of, and what it leaves out."
        },
        "recorded_at": {
          "description": "When the scenes were read.",
          "type": "string"
        },
        "revision": {
          "description": "The commit the recording process stood at, short; absent when it could not say.",
          "type": [
            "string",
            "null"
          ]
        },
        "scenes": {
          "additionalProperties": true,
          "description": "Each recorded scene's model, by scene id; a scene the process had nothing live for is\nabsent, never empty.",
          "type": "object"
        },
        "schema": {
          "description": "`RECORDING_SCHEMA`.",
          "type": "string"
        }
      },
      "required": [
        "schema",
        "recorded_at",
        "scenes",
        "manifest"
      ],
      "type": "object"
    },
    "RecordingManifest": {
      "description": "What a recording is a record of: the capabilities read, the window of events it holds,\nand what was removed from what they answered, with the reason.\n\n```\nuse majordomus_cli::capability::builtin::observatory::RecordingManifest;\nlet m: RecordingManifest = serde_json::from_value(serde_json::json!({\n    \"sources\": [\"mesh.events\"], \"removed\": [\"event bodies\"],\n})).unwrap();\nassert!(m.window.is_none(), \"a recording that holds no event has no window\");\n```",
      "properties": {
        "removed": {
          "description": "Every kind of thing removed before publication, and why.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "sources": {
          "description": "The capabilities whose answers the recorded scenes were projected from.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "window": {
          "anyOf": [
            {
              "$ref": "#/$defs/RecordingWindow"
            },
            {
              "type": "null"
            }
          ],
          "description": "The first and last event the recording holds, by time and by logical clock; absent\nwhen it holds none."
        }
      },
      "required": [
        "sources",
        "removed"
      ],
      "type": "object"
    },
    "RecordingWindow": {
      "description": "The events a recording holds, from first to last.\n\n```\nuse majordomus_cli::capability::builtin::observatory::RecordingWindow;\nlet w = RecordingWindow { events: 2, from_at: Some(100), to_at: Some(160), from_lamport: Some(9), to_lamport: Some(10) };\nassert_eq!(w.to_at.unwrap() - w.from_at.unwrap(), 60, \"a minute of the journal\");\n```",
      "properties": {
        "events": {
          "description": "How many events.",
          "format": "uint",
          "minimum": 0,
          "type": "integer"
        },
        "from_at": {
          "description": "The earliest event's time, in seconds since the epoch.",
          "format": "uint64",
          "minimum": 0,
          "type": [
            "integer",
            "null"
          ]
        },
        "from_lamport": {
          "description": "The smallest logical clock.",
          "format": "uint64",
          "minimum": 0,
          "type": [
            "integer",
            "null"
          ]
        },
        "to_at": {
          "description": "The latest event's time, in seconds since the epoch.",
          "format": "uint64",
          "minimum": 0,
          "type": [
            "integer",
            "null"
          ]
        },
        "to_lamport": {
          "description": "The largest logical clock.",
          "format": "uint64",
          "minimum": 0,
          "type": [
            "integer",
            "null"
          ]
        }
      },
      "required": [
        "events"
      ],
      "type": "object"
    }
  },
  "description": "The recording the repository carries, or that it carries none.\n\n```\nuse majordomus_cli::capability::builtin::observatory::{replay_at, ObservatoryReplay, RECORDING};\nlet dir = tempfile::tempdir().unwrap();\nlet none: ObservatoryReplay = replay_at(dir.path()).unwrap();\nassert!(!none.present && none.recording.is_none());\nassert_eq!(none.path, RECORDING);\n```",
  "properties": {
    "path": {
      "description": "The file it is read from.",
      "type": "string"
    },
    "present": {
      "description": "Whether the repository carries a recording.",
      "type": "boolean"
    },
    "recording": {
      "anyOf": [
        {
          "$ref": "#/$defs/ObservatoryRecording"
        },
        {
          "type": "null"
        }
      ],
      "description": "The recording."
    }
  },
  "required": [
    "present",
    "path"
  ],
  "title": "ObservatoryReplay",
  "type": "object"
}

Politiky

benchmark
povinné — cíl na každém transportu, který expozice deklaruje; případy jsou ty ze vstupního typu
cache
vypnuto — každé volání spustí handler

Cíle benchmarku

Odvozeno z registru pro tento repozitář: jeden požadavek na transport a případy, které poskytuje typ vstupu. Celá matice je na stránce měření výkonu.

transportstatepřípadytargets
directpokryto1výchozí
mcppokryto1výchozí
httppokryto1výchozí

Prohledává názvy a popisy všech stránek, které tento web publikuje.