-
Notifications
You must be signed in to change notification settings - Fork 2
[config] Execution modes — strict/seeded/adaptive determinism control #135
Copy link
Copy link
Closed as not planned
Closed as not planned
Copy link
Labels
area/contextContext engine: manager, pipeline, firewallContext engine: manager, pipeline, firewallarea/routingRouting engine: catalog, graph, router, cardsRouting engine: catalog, graph, router, cardscomplexity/simpleStraightforward change, minimal riskStraightforward change, minimal riskenhancementNew feature or requestNew feature or requestmilestone/v0.4v0.4 Observability & evaluationv0.4 Observability & evaluationpriority/mediumMedium priority — production readinessMedium priority — production readiness
Metadata
Metadata
Assignees
Labels
area/contextContext engine: manager, pipeline, firewallContext engine: manager, pipeline, firewallarea/routingRouting engine: catalog, graph, router, cardsRouting engine: catalog, graph, router, cardscomplexity/simpleStraightforward change, minimal riskStraightforward change, minimal riskenhancementNew feature or requestNew feature or requestmilestone/v0.4v0.4 Observability & evaluationv0.4 Observability & evaluationpriority/mediumMedium priority — production readinessMedium priority — production readiness
Context
Split from #45. Adds an explicit
Modeenum controlling determinism guarantees.Proposal
strict: Current behavior. Identical inputs always produce identical outputs.seeded: Deterministic with an explicitseedparameter, allowing reproducible but varied runs.adaptive: Future placeholder — no implementation needed now.Acceptance Criteria
Modeenum inconfig.pywithstrict,seeded,adaptivevaluesProfileConfig.modefield (default:Mode.strict)Routerrespectsmode—strictuses current deterministic logic;seededuses seed for tie-breakingadaptiveraisesNotImplementedErrorif used (future placeholder)to_dict()/from_dict()handlesModeserializationmodedefaults to current deterministic behaviorFile Paths
src/contextweaver/config.py(edit)src/contextweaver/routing/router.py(edit — respect mode)tests/test_config.py(edit)Parent Issue
Part of #45 (ProfileConfig).