You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
gaze quality --analyzer was scoped in #95 alongside analyze, crap, and report.
Phase 2 (#178) delivered crap and report but explicitly deferred quality:
the --analyzer / --language flags are registered in cmd/gaze/main.go but hidden from help and return an error if passed.
With #237 (callAndUnmarshal helper in internal/adapter/) and #238 (safeSSABuild
consolidated in internal/ssaguard/) now merged, the infrastructure blockers are gone.
The protocol is also complete: test_mapping is fully specified in protocol v1.1.0
(response schema, capability handshake, GazeCRAP integration, graceful degradation).
There is no longer a research/feasibility question — this is an implementation issue.
What's missing
Gaze side (this issue)
Unhide --analyzer and --language in cmd/gaze/quality.go
Feed the returned {mappings:[...]} into the GazeCRAP scoring path in place of the
Go SSA test-pairing output
Fix the inaccuracy in website#227 / website#165 (these pages list quality as
supporting --analyzer, which has never been true)
Snake-eyes side (separate issue)
Snake-eyes declares test_mapping: false in initialize and returns -32601 for
the method. Implementing pytest assertion → target-function → side-effect mapping
is scoped as a separate snake-eyes issue.
Acceptance criteria
gaze quality --analyzer snake-eyes --language python -- ./... runs against a Python
project and produces a quality report (or a clear graceful-degradation message when test_mapping is unavailable)
When test_mapping is available (future snake-eyes issue), GazeCRAP scores are
equivalent in structure to Go-based GazeCRAP scores
The --analyzer flag appears in gaze quality --help
CI green on existing Go quality tests (no regression)
Background
gaze quality --analyzerwas scoped in #95 alongsideanalyze,crap, andreport.Phase 2 (#178) delivered
crapandreportbut explicitly deferredquality:the
--analyzer/--languageflags are registered incmd/gaze/main.gobuthidden from help and return an error if passed.
With #237 (callAndUnmarshal helper in
internal/adapter/) and #238 (safeSSABuildconsolidated in
internal/ssaguard/) now merged, the infrastructure blockers are gone.The protocol is also complete:
test_mappingis fully specified in protocol v1.1.0(response schema, capability handshake, GazeCRAP integration, graceful degradation).
There is no longer a research/feasibility question — this is an implementation issue.
What's missing
Gaze side (this issue)
--analyzerand--languageincmd/gaze/quality.goinitialize, wire the adapter to calltest_mappingusing the newcallAndUnmarshalhelper from refactor: extract generic callAndUnmarshal helper in internal/adapter/ #237{mappings:[...]}into the GazeCRAP scoring path in place of theGo SSA test-pairing output
qualityassupporting
--analyzer, which has never been true)Snake-eyes side (separate issue)
Snake-eyes declares
test_mapping: falseininitializeand returns-32601forthe method. Implementing pytest assertion → target-function → side-effect mapping
is scoped as a separate snake-eyes issue.
Acceptance criteria
gaze quality --analyzer snake-eyes --language python -- ./...runs against a Pythonproject and produces a quality report (or a clear graceful-degradation message when
test_mappingis unavailable)test_mappingis available (future snake-eyes issue), GazeCRAP scores areequivalent in structure to Go-based GazeCRAP scores
--analyzerflag appears ingaze quality --helpReferences