# Community Contributions (Tier-B TOML Rules)
Welcome to the `vyre-conform` Tier-B contribution directory.
This folder (`conform/rules/`) allows the community to extend the `vyre-conform` test suite **without writing any Rust code**.
By dropping TOML files here, you can contribute adversarial input seeds, register new operations, declare algebraic laws, add independence rules, and define target defendant implementations.
## How It Works
At startup, the `vyre-conform` binary automatically discovers and parses all `.toml` files in `conform/rules/**/*.toml`. These files extend the compiled-in binary rules.
If two files conflict (e.g., duplicate operation names), a warning is logged and one will override the other.
## TOML Schema Version
Every TOML rule file must declare the schema version:
```toml
version = "1"
```
## Contribution Examples
Check the `examples/` directory for templates:
- `op_custom_add.toml`: Defines a new operation, its inputs/output, and the algebraic laws it satisfies.
- `witness_fuzz.toml`: Provides custom seeds for adversarial testing against a specific op.
- `defendant_v1.toml`: Registers a target runtime to test against the gauntlet.
- `law_commutative.toml`: Declares an algebraic law property.
- `independence_rule.toml`: Defines rules to flag correlated failures.
## Contribution Workflow
1. Copy an example file from `examples/` into `rules/` (or a subdirectory like `rules/ops/`).
2. Rename and edit the TOML file.
3. Run the conformance suite. Your changes will be automatically loaded and registered!