> ## Documentation Index
> Fetch the complete documentation index at: https://docs.locusmedical.fr/llms.txt
> Use this file to discover all available pages before exploring further.

# Une réponse déjà servie, relue depuis sa trace

> La réponse d'alors, et ce qui l'a produite : les règles retrouvées avec leur score et leur voie d'accès, les extraits, les tables, les documents, les concepts et les unités logiques. **Aucun appel au modèle** — rejouer la question rendrait une AUTRE réponse, qu'on finirait par étudier à la place de celle qui a été notée.

Trois couches, et `replay` dit laquelle on lit : ce qui est FIGÉ (la trace), ce qui est RELU dans le graphe courant (le contenu des identifiants, que la trace n'archive pas — la dérive de version est comparée, pas supposée), ce qui est RECALCULÉ (les unités logiques, par les fonctions de la pipeline). Ce qui n'est pas traçable est nommé, jamais fabriqué.

Un préfixe de huit caractères suffit comme identifiant. **N'existe que hors du canal `prod`** (cf. `LOCUS_CHANNEL`) : c'est la seule route qui rende des MKU hors d'une réponse en cours.



## OpenAPI

````yaml /openapi.json get /v2/lab/trace/{trace_id}
openapi: 3.1.0
info:
  title: Locus API
  description: >-
    Locus knowledge layer — REST over a clinical knowledge graph.


    Two categories of surface:

    - **query** (read) — `/v2/retrieve` and `/v2/retrieve/stream`
    (knowledge-graph retrieval, MKF 0.1.3), `/v2/drugs/*` (the full text of an
    SmPC section a retrieval truncated) and `/v2/feedback` (a thumb on a traced
    answer);

    - **ops** — `/health`.


    The write plane (PDF → Neo4j graph: ingest, summarize, MKU extraction) is
    NOT exposed over HTTP — it is a batch pipeline driven by the `locus` CLI,
    which runs where the source PDFs are.
  version: 0.5.0
servers:
  - url: https://core.locusmedical.fr
    description: Production
security: []
paths:
  /v2/lab/trace/{trace_id}:
    get:
      tags:
        - query
      summary: Une réponse déjà servie, relue depuis sa trace
      description: >-
        La réponse d'alors, et ce qui l'a produite : les règles retrouvées avec
        leur score et leur voie d'accès, les extraits, les tables, les
        documents, les concepts et les unités logiques. **Aucun appel au
        modèle** — rejouer la question rendrait une AUTRE réponse, qu'on
        finirait par étudier à la place de celle qui a été notée.


        Trois couches, et `replay` dit laquelle on lit : ce qui est FIGÉ (la
        trace), ce qui est RELU dans le graphe courant (le contenu des
        identifiants, que la trace n'archive pas — la dérive de version est
        comparée, pas supposée), ce qui est RECALCULÉ (les unités logiques, par
        les fonctions de la pipeline). Ce qui n'est pas traçable est nommé,
        jamais fabriqué.


        Un préfixe de huit caractères suffit comme identifiant. **N'existe que
        hors du canal `prod`** (cf. `LOCUS_CHANNEL`) : c'est la seule route qui
        rende des MKU hors d'une réponse en cours.
      operationId: lab_trace_v2_lab_trace__trace_id__get
      parameters:
        - name: trace_id
          in: path
          required: true
          schema:
            type: string
            title: Trace Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
                title: Response Lab Trace V2 Lab Trace  Trace Id  Get
        '404':
          description: Canal de production, ou trace inconnue.
        '409':
          description: Préfixe ambigu — plusieurs traces commencent par là.
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
        '503':
          description: Traces désactivées (`LOCUS_TRACES_ENABLED`).
      security:
        - lsk: []
components:
  schemas:
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
  securitySchemes:
    lsk:
      type: http
      description: Locus API key — paste the raw `lsk_…` value (no 'Bearer ' prefix).
      scheme: bearer

````