# `MingaEditor.Shell.BufferMetadata`
[🔗](https://github.com/jsmestad/minga/blob/main/lib/minga_editor/shell/buffer_metadata.ex#L1)

Inert buffer identity prepared before shell lifecycle calculation.

Shell owner transitions consume this value without reading a buffer process,
logging, or performing persistence. Workflows are responsible for deriving
the metadata while the process is live.

# `t`

```elixir
@type t() :: %MingaEditor.Shell.BufferMetadata{
  buffer_pid: pid(),
  context: MingaEditor.Shell.buffer_add_context(),
  file_ref: Minga.Project.FileRef.t(),
  label: String.t(),
  path: String.t() | nil
}
```

# `new`

```elixir
@spec new(
  pid(),
  MingaEditor.Shell.buffer_add_context(),
  String.t(),
  String.t() | nil,
  Minga.Project.FileRef.t()
) :: t()
```

Builds immutable metadata from values already resolved by a workflow.

---

*Consult [api-reference.md](api-reference.md) for complete listing*
