logic-engine / .specify /memory /constitution.md
ghostdrive1's picture
Upload folder using huggingface_hub
116524e verified
|
Raw
History Blame Contribute Delete
5.02 kB

ACE Framework Constitution

Core Principles

I. Ease of Use First

Every public API, integration, and workflow MUST prioritize developer experience above all else.

  • New users MUST be able to install and run a working example in under 5 minutes with no more than 3 lines of code.
  • Sensible defaults MUST be provided for every configuration option. Users MUST NOT be required to understand internals to get started.
  • Breaking changes to the public API MUST follow deprecation warnings for at least one minor release before removal.
  • Documentation MUST include a copy-pasteable quick start for every integration (LiteLLM, LangChain, browser-use, Claude Code).

II. Practical Value

Every feature MUST solve a real, demonstrable problem for users building AI agents.

  • Features MUST NOT be added speculatively. Each addition MUST have a concrete use case tied to agent improvement or developer workflow.
  • Performance claims MUST be backed by reproducible benchmarks or examples. No unsubstantiated marketing language in docs or code.
  • Integration wrappers MUST add measurable value (learning, skillbook evolution) beyond what the wrapped framework already provides.

III. Simplicity

Prefer the simplest solution that works. Complexity MUST be justified.

  • YAGNI: Do not build for hypothetical future requirements. Three similar lines of code are better than a premature abstraction.
  • New abstractions MUST be used in at least two places before extraction into a shared utility.
  • Dependencies MUST be kept minimal. Optional extras (observability, LangChain, transformers) stay optional — the core install MUST remain lightweight.

IV. Clean & Modular Code

All code MUST be clean, modular, and extensible.

  • Modules MUST have a single, clear responsibility. Each file MUST do one thing well and expose a well-defined interface.
  • Public APIs MUST be designed for extension without modification. New integrations, LLM providers, and adapters MUST be addable without changing existing code (open/closed principle).
  • Internal boundaries MUST be respected: core library (ace/), integrations (ace/integrations/), LLM providers (ace/llm_providers/), and observability (ace/observability/) MUST NOT have circular dependencies.
  • Functions and classes MUST be small enough to understand at a glance. If a function requires scrolling, it MUST be decomposed.

Development Standards

  • Language: Python 3.12 with type hints on all public APIs.
  • Formatting: Black (line length 88). All code MUST pass black --check before merge.
  • Testing: pytest with coverage enforcement (--cov-fail-under=25). New features MUST include tests. Bug fixes MUST include regression tests.
  • Distribution: PyPI package ace-framework. Core install MUST NOT exceed ~150MB. Heavy dependencies belong in optional extras.
  • Commit style: Conventional Commits (feat(scope): subject).

Quality Gates

  • All PRs MUST pass CI (formatting, type checks, test suite) before merge.
  • Public API changes MUST update relevant documentation (README, docstrings, quick start guides).
  • Benchmark results MUST NOT regress without explicit justification in the PR description.
  • Skillbook format changes MUST maintain backward compatibility with existing saved skillbooks or provide a migration path.

Governance

This constitution is the highest-authority document for the ACE Framework project. All design decisions, PRs, and code reviews MUST verify compliance with these principles.

  • Amendments: Any change to this constitution MUST be documented with a version bump, rationale, and updated LAST_AMENDED_DATE.
  • Versioning: MAJOR for principle removals or redefinitions, MINOR for new principles or material expansions, PATCH for clarifications.
  • Compliance: Use CLAUDE.md for runtime development guidance. This constitution defines the non-negotiable rules that CLAUDE.md guidance MUST NOT contradict.
  • Review: Constitution compliance SHOULD be checked at the start of each feature planning cycle (/speckit.plan Constitution Check).

Version: 1.1.0 | Ratified: 2026-02-25 | Last Amended: 2026-02-25