Agency/main.py
Ryan Schultz 929a95403a Genesis: participation signal system, v0.1.0
Weighted scoring from JSON participation data, configurable via config.yaml.
Includes living architecture docs and ADRs from day one so the reasoning
behind every direction is traceable from the first commit.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-10 09:43:39 -05:00

24 lines
666 B
Python

import argparse
import yaml
from src.scoring.aggregate import compute_agency
from src.outputs.table import print_table
def load_config(path):
with open(path) as f:
return yaml.safe_load(f)
def main():
parser = argparse.ArgumentParser(description="Agency Signal System")
parser.add_argument("--data", default="data/sample.json", help="Path to participation data")
parser.add_argument("--config", default="config.yaml", help="Path to config file")
args = parser.parse_args()
config = load_config(args.config)
scores = compute_agency(args.data, config["weights"])
print_table(scores)
if __name__ == "__main__":
main()