Skip to main content

A Failure Compiler for AI agents: turn failed outputs into lessons, evaluation summaries, and replayable regression cases.

Project description

Entropy Loop Core

A Failure Compiler for AI agents. Turn failed agent outputs into regression cases and replay them before the same bug ships again.

CI License: Apache-2.0 Python Ruff

Get started · Example · CLI · Architecture · Releases · Contributing

Star the repo if you want to follow the Failure Compiler roadmap.

Entropy Loop Core replay demo

Get started

Install from source (a package-index install is planned after stabilization):

git clone https://github.com/koreaelonmusk/entropy-loop-core.git
cd entropy-loop-core
python -m pip install -e ".[dev]"
entropy-loop replay-demo

Works on Windows, macOS, and Linux with Python 3.10+.

Why

AI agents often fail the same way twice.

Entropy Loop Core makes failures reusable: capture the failed output, classify it, compile a lesson, generate a regression case, and replay it — before the same bug ships again.

Task
→ AgentOutput
→ VerificationResult
→ FailureTrace
→ Lesson
→ RegressionCase
→ RegressionSuite
→ Replay
→ Report

The core is deterministic: no LLM calls, no network calls, no hidden state.

Example

Turn a failure into a regression case, then replay it against a fixed agent:

from entropy_loop_core import (
    AgentOutput,
    FailureTrace,
    RegressionRunner,
    RegressionSuite,
    RetryContext,
    Task,
    VerificationPolicy,
    Verifier,
    generate_regression_case,
)

# A verifier built from a policy: non-empty output that contains "status".
verifier = Verifier.from_policy(
    VerificationPolicy(require_non_empty=True, required_terms=["status"])
)

# A past failure (the agent omitted "status") becomes a regression case.
task = Task(id="job-1", instruction="report the job status")
bad = AgentOutput(content="done")
case = generate_regression_case(
    FailureTrace(
        task=task,
        output=bad,
        verification_result=verifier.verify(bad),
        attempt=1,
    )
)


# Replay the case against a corrected agent.
def fixed_agent(task: Task, ctx: RetryContext) -> AgentOutput:
    return AgentOutput(content="status: ok")


report = RegressionRunner().run_suite(
    RegressionSuite(name="job", cases=[case]), fixed_agent, verifier
)
print(report.passed, report.total_cases, report.success_rate)  # 1 1 100.0

Full worked example: examples/json_agent_guard.py.

CLI

entropy-loop replay-demo   # generate a regression case, then replay it as a suite
entropy-loop demo          # run the loop: verify → trace → learn → retry → regress
entropy-loop doctor        # health-check the install

What it is / what it is not

It is

  • a deterministic failure compiler,
  • a structured failure-trace layer,
  • a regression replay primitive,
  • a small AI-agent reliability tool.

It is not

  • a full agent framework,
  • model training,
  • model-as-judge by default,
  • a correctness guarantee,
  • a cloud platform.

Architecture

  • Verifier applies ordered, deterministic rules and classifies failures.
  • EntropyLoop runs an agent, verifies, traces the failure, compiles a lesson, and retries.
  • LessonGenerator turns a FailureTrace into a reusable Lesson.
  • generate_regression_case pins a failure as a repeatable check.
  • RegressionRunner replays a RegressionSuite and returns a report.

Deeper reading: architecture · reliability model · research influences · recording the demo.

Public / private boundary

Open-source the primitive, not the private advantage.

This repository contains only generic reliability primitives — no business logic, proprietary prompts, customer data, secrets, external AI API calls, or network calls. See docs/public-private-boundary.md.

Releases

  • v0.3.0 — replay (current)
  • v0.2.0 — classification + evaluation
  • v0.1.0 — the first Failure Compiler loop

Details in CHANGELOG.md.

Roadmap

  • v0.3.1 — stabilization / packaging readiness
  • v0.4.0 — memory policy / lesson compaction
  • Later — persistence adapters and richer reports

Full plan in docs/roadmap.md.

Contributing

Contributions are welcome. Keep the core small, readable, and deterministic, and respect the public/private boundary. See CONTRIBUTING.md and CODE_OF_CONDUCT.md.

ruff check .    # lint
ruff format .   # format
pytest          # tests

License

Released under the Apache-2.0 license.

Project details


Download files

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

Source Distribution

entropy_loop_core-0.3.1.tar.gz (159.1 kB view details)

Uploaded Source

Built Distribution

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

entropy_loop_core-0.3.1-py3-none-any.whl (26.3 kB view details)

Uploaded Python 3

File details

Details for the file entropy_loop_core-0.3.1.tar.gz.

File metadata

  • Download URL: entropy_loop_core-0.3.1.tar.gz
  • Upload date:
  • Size: 159.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for entropy_loop_core-0.3.1.tar.gz
Algorithm Hash digest
SHA256 872a98ff987ec48dcdefbe77136d4a7e95a4674cbbadcf8d3c3f7b7561a7a5fa
MD5 6cad6fb655654a2eade940c4c87731be
BLAKE2b-256 423d10cf641110776cdcc6ee1fb9ebe86f824eab07db4500e2d23b5ff93aa5e0

See more details on using hashes here.

Provenance

The following attestation bundles were made for entropy_loop_core-0.3.1.tar.gz:

Publisher: publish.yml on koreaelonmusk/entropy-loop-core

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

File details

Details for the file entropy_loop_core-0.3.1-py3-none-any.whl.

File metadata

File hashes

Hashes for entropy_loop_core-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 47e3c1bbb3c4984a34b4c9beae878b653c6b0b18a96df5446aedaf22e2c45ad2
MD5 e3764390264d8bd20a071019cee587f8
BLAKE2b-256 3c0b5fb0bc49dd3d5f5155fefdbd41ef402b726627ce9332f2db7f3fbff76c0e

See more details on using hashes here.

Provenance

The following attestation bundles were made for entropy_loop_core-0.3.1-py3-none-any.whl:

Publisher: publish.yml on koreaelonmusk/entropy-loop-core

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

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page