Skip to main content

jep-lineage-explorer

Explore replayable delegation lineage and authority propagation across AI agents and tools.

jep-lineage-explorer turns a JEP replay archive (.jsonl) into inspectable authority artifacts:

  • delegation tree for authority propagation and nested delegation
  • replay lineage graph for agent-to-agent responsibility chains
  • authority timeline for grants, uses, expirations, and revocations
  • replay lineage engine with verification for scope attenuation and expiring delegations
  • lineage diff between replay ids inside the same archive
  • replay ancestry inspection through parent/causal event links

Install for local development

python -m pip install -e .

CLI

jep-lineage inspect archive.jsonl

Useful options:

jep-lineage inspect archive.jsonl --format json
jep-lineage inspect archive.jsonl --strict

--strict exits with status 2 when verification errors are found.

Supported JSONL event shapes

The reader accepts flexible field names so existing JEP archives can be replayed without a rigid schema.

Delegation creation event types include delegation_created, delegate, authority_delegated, and authority_granted.

Common delegation fields:

{
  "event_type": "delegation_created",
  "timestamp": "2026-01-01T00:00:00Z",
  "replay_id": "run-a",
  "delegation_id": "d-root",
  "parent_delegation_id": null,
  "from_agent": "orchestrator",
  "to_agent": "planner",
  "scopes": ["read", "write"],
  "expires_at": "2026-01-01T01:00:00Z"
}

Authority use event types include authority_used, delegation_used, tool_call, and agent_action when they reference a delegation_id.

Revocation event types include delegation_revoked, authority_revoked, and revoke.

Replay ancestry edges are inferred from parent_event_id, parent_id, caused_by, or in_reply_to fields.

Verification

The inspector validates that:

  • child scopes are a subset of parent scopes (scope attenuation)
  • child delegations do not extend parent expiration
  • parent delegations are active when children are issued
  • authority uses reference known, active delegations
  • requested use scopes do not exceed the referenced delegation
  • delegation identifiers are unique and parent links are resolvable

Example

{"event_type":"delegation_created","timestamp":"2026-01-01T00:00:00Z","replay_id":"r1","delegation_id":"root","from_agent":"owner","to_agent":"planner","scopes":["read","write"],"expires_at":"2026-01-02T00:00:00Z"}
{"event_type":"delegation_created","timestamp":"2026-01-01T01:00:00Z","replay_id":"r1","delegation_id":"child","parent_delegation_id":"root","from_agent":"planner","to_agent":"worker","scopes":["read"],"expires_at":"2026-01-01T12:00:00Z"}
{"event_type":"authority_used","timestamp":"2026-01-01T02:00:00Z","replay_id":"r1","agent":"worker","delegation_id":"child","scopes":["read"]}

Runtime and verification notes

See HARDENING.md for supported behavior, regression checks, and compatibility boundaries.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jep_lineage_explorer-0.1.1.tar.gz (11.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jep_lineage_explorer-0.1.1-py3-none-any.whl (10.6 kB view details)

Uploaded Python 3

File details

Details for the file jep_lineage_explorer-0.1.1.tar.gz.

File metadata

  • Download URL: jep_lineage_explorer-0.1.1.tar.gz
  • Upload date:
  • Size: 11.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for jep_lineage_explorer-0.1.1.tar.gz
Algorithm Hash digest
SHA256 88b213b472f1c60c088b4b63646ecd884f7740f369a7ebad9510a058c329d9d2
MD5 a37cfa7a61ec8037e0052ee9aabece60
BLAKE2b-256 aaa08639503254e203ca00657eac973f100eeceb6a1d58944765d1dae2830805

See more details on using hashes here.

Provenance

The following attestation bundles were made for jep_lineage_explorer-0.1.1.tar.gz:

Publisher: release.yml on hjs-spec/jep-lineage-explorer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file jep_lineage_explorer-0.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for jep_lineage_explorer-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 50a6f99243af85bba5d413c8537d984bf8cc24c9da5f81ded309dead4557cbd9
MD5 1c1f699692e7f6efbc216a4ba9363f90
BLAKE2b-256 808e0ab33b17ce684b4f6d4976d497e25e686c3c3ac69a1e40ead91255ba95b1

See more details on using hashes here.

Provenance

The following attestation bundles were made for jep_lineage_explorer-0.1.1-py3-none-any.whl:

Publisher: release.yml on hjs-spec/jep-lineage-explorer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page