Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 43 additions & 0 deletions packages/decision-pipeline/src/fixtures.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
# Domain Fixture Conventions

## Purpose

This document establishes conventions for test fixtures used throughout Auto-Guardable.

Fixtures provide predictable representations of domain inputs while keeping tests independent from production integrations.

## Principles

- Fixtures represent domain concepts, not implementation details.
- Tests should describe behavior through contracts.
- External systems should be replaced with deterministic test data.
- Fixtures should remain small and intentional.

## Current Pipeline Validation Flow

```
Domain Fixture
|
v
Policy Result Fixture
|
v
Decision Adapter
|
v
Decision Pipeline
|
v
Decision Output
```

## Future Usage

Fixtures may later represent:

- Camera observations
- Sensor events
- Policy scenarios
- Action outcomes

without requiring those systems to exist during foundation development.
30 changes: 30 additions & 0 deletions packages/decision-pipeline/src/test-conventions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
# Decision Pipeline Test Conventions

## Purpose

Define how future tests should validate pipeline behavior while preserving architectural boundaries.

## Test Layers

### Contract Tests

Validate that interfaces remain stable.

### Pipeline Tests

Validate that information can move through the pipeline.

### Integration Tests

Validate collaboration between implemented components.

## Rules

- Tests should not depend on hardware.
- Tests should not require external services.
- Tests should prove behavior, not implementation details.
- Each architectural boundary should have explicit validation.

## Goal

Future contributors should be able to add capabilities while maintaining confidence in the system's foundation.