Metadata-Version: 2.4
Name: 3tears-agent-identity
Version: 0.16.0
Summary: Versioned identity blocks for LLM agents -- self-evolution via a linear version chain with propose/consent/apply, rationale, and rollback
Project-URL: Repository, https://github.com/pacepace/3tears
Author: pace
License-Expression: MIT
License-File: LICENSE
Classifier: Development Status :: 3 - Alpha
Classifier: Framework :: AsyncIO
Classifier: Intended Audience :: Developers
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
Classifier: Topic :: Software Development :: Libraries
Classifier: Typing :: Typed
Requires-Python: >=3.14
Requires-Dist: 3tears
Requires-Dist: 3tears-agent-acl
Requires-Dist: 3tears-langgraph
Requires-Dist: 3tears-observe
Requires-Dist: langchain-core
Requires-Dist: pydantic
Requires-Dist: uuid-utils
Description-Content-Type: text/markdown

# 3tears-agent-identity

Versioned identity blocks for LLM agents — the substrate for **self-evolution**:
the agent proposes changes to its own identity, a human consents, and nothing is
lost, only superseded.

## Model

An identity block (persona, reinforcement, anti-sycophancy guard, self-improvement
scratch, presence voice) is a **linear parent-pointer version chain**. Exactly one
`active` version exists per `(agent_id, customer_id, user_id, block_key)`; each
version carries its `content`, a `rationale`, a `content_hash`, and its lineage.

Lifecycle: **propose (agent) → consent (user) → apply**, with non-destructive
rollback. Consent is **tiered** — tier-1 (identity-shaping) blocks require human
consent before applying; tier-2 (routine) blocks auto-apply with an async veto.

This differs from `knowledge`'s shadow-chain (which is scope-layering, not temporal
version history): identity versions are a temporal chain with rollback.

## Contents (v0.15.0)

- **T2.1a:** `identity_versions` table + `IdentityVersionsCollection` + the block /
  status / tier value types + migration v001.
- **T2.1b:** lifecycle ops (propose/consent/reject/rollback) + FrameworkEvents +
  owner RBAC + the `identity_propose` tool.

Consumers own the apply path (subscribe/authorize/write); this package provides the
store, the version chain, the lifecycle, and the events.
