---
name: memory_field
lang: py
domain: core
version: "1.0.0"
algebraic: product
definition: |
  @dataclass
  class MemoryField:
      name: str
      field_type: FieldType
      description: str = ""
      merge_op: MergeOp = MergeOp.PATCH
description: "Definicion de un campo dentro de un tipo de memoria. El merge_op determina como se actualizan valores existentes: PATCH para cambios parciales, SUM para acumulacion numerica, IMMUTABLE para proteger el valor original."
tags: [memory, field, schema, dataclass]
uses_types: [field_type_py_core, merge_op_py_core]
file_path: "python/types/core/memory_field.py"
---

## Notas

Dataclass inmutable por convencion (no frozen para permitir construccion incremental).
El campo `description` es consumido por el LLM para entender que dato debe colocar en cada campo.
Usado por `MemoryTypeSchema` como elemento de la lista `fields`.

## Ejemplo

```python
MemoryField(
    name="username",
    field_type=FieldType.STRING,
    description="Nombre de usuario del sistema",
    merge_op=MergeOp.IMMUTABLE,
)
```
