32 lines
1.6 KiB
Markdown
32 lines
1.6 KiB
Markdown
Repository: idea139-opendeployment-quilt-federated
|
|
|
|
Purpose
|
|
This repo contains a reference Python implementation of the OpenDeployment Quilt primitives and a minimal runtime surface for adapters and coordination logic. It is intentionally small and designed for extension by automated agents and human contributors.
|
|
|
|
Architecture
|
|
- src/idea139_opendeployment_quilt_federated/models.py: canonical pydantic models (LocalPlan, SharedSignals, PlanDelta, AuditLog)
|
|
- src/idea139_opendeployment_quilt_federated/registry.py: adapter registry and conformance checks
|
|
- src/idea139_opendeployment_quilt_federated/adapters/: adapter skeletons for GitHub Actions and Jenkins
|
|
- src/idea139_opendeployment_quilt_federated/coordinator.py: simple async aggregator demonstrating signal aggregation and PlanDelta generation
|
|
|
|
Tech stack
|
|
- Python 3.8+
|
|
- pydantic for schema models
|
|
- pytest for tests
|
|
- setuptools for packaging (pyproject.toml present)
|
|
|
|
Testing and CI rules
|
|
- Run `bash test.sh` in repository root. It runs `pytest` and `python3 -m build` to validate packaging metadata.
|
|
- Tests must be green before publishing.
|
|
|
|
Development rules for agents
|
|
- Always use apply_patch for file edits.
|
|
- Respect the existing models and API; make the smallest change needed for a feature or bug fix.
|
|
- Do not commit or modify external secrets or credentials.
|
|
- If adding dependencies, update pyproject.toml and ensure `python3 -m build` still succeeds.
|
|
|
|
How to extend
|
|
- Add new adapters under adapters/ and register them via registry.register_adapter
|
|
- Add conformance tests under tests/ for new adapters
|
|
- When adding public API, include type-hinted functions and pydantic models for validation
|