Architecture Context
In cmd/waza/tokens/helpers.go:115-132, resolveLimitsConfig() currently checks .token-limits.json first and falls back to .waza.yaml. This contradicts the config consolidation goal (#20). Invert the priority so .waza.yaml tokens.limits is primary. When .token-limits.json is the active source (because .waza.yaml has no limits configured), emit a deprecation warning suggesting the user move limits into .waza.yaml.
Architecture doc: docs/init-config-consolidation/architecture.md
Parent epic: #20
Acceptance Criteria
Architecture Context
In
cmd/waza/tokens/helpers.go:115-132,resolveLimitsConfig()currently checks.token-limits.jsonfirst and falls back to.waza.yaml. This contradicts the config consolidation goal (#20). Invert the priority so.waza.yamltokens.limitsis primary. When.token-limits.jsonis the active source (because.waza.yamlhas no limits configured), emit a deprecation warning suggesting the user move limits into.waza.yaml.Architecture doc:
docs/init-config-consolidation/architecture.mdParent epic: #20
Acceptance Criteria
resolveLimitsConfig()checks.waza.yamltokens.limitsfirst.token-limits.jsonis only used when.waza.yamlhas notokens.limitssection.token-limits.jsonis the active source, a deprecation warning is printed.waza.yamlhastokens.limitsconfigured,.token-limits.jsonis ignored.waza.yaml-only,.token-limits.json-only, both present (.waza.yamlwins), neither presentTestCheck_ConfigLimitsandTestCheck_DefaultLimitsWhenNoConfigstill passgo test ./...passes;golangci-lint runpasses