i dont like commits

This commit is contained in:
Tomas Dvorak
2026-02-24 12:10:13 +01:00
parent 898a3c303f
commit 1d72a1cc01
109 changed files with 43586 additions and 8484 deletions
@@ -0,0 +1,86 @@
{
"assessments": {
"error_consistency": 56.5
},
"dimension_notes": {
"error_consistency": {
"evidence": [
"CLI command handlers frequently return upstream errors without operation context (e.g., cmd/get.go:47, cmd/scrape.go:91/126, cmd/push.go:52, cmd/ask.go:130), while nearby code in the same command set does wrap with contextual messages (e.g., cmd/push.go:81/91/97, cmd/scrape.go:132/146/204/210).",
"Server transport paths mix wrapped and raw propagation: write/encode paths use wrapTransportError and contextual fmt.Errorf (internal/server/server.go:223/229/267/273), but Start returns raw listener/scanner errors directly (internal/server/server.go:171/234).",
"Python CLI surfaces process-fatal errors inconsistently across sibling commands: direct sys.exit after print (cmd/devour_enhanced.py:600/607/616, cmd/devour_enhanced_v2.py:601/608/617), raise SystemExit in another command flow (desloppify/.../app/commands/next.py:137), and validation-time sys.exit in resolve flow (desloppify/.../app/commands/resolve/selection.py:84/87)."
],
"impact_scope": "subsystem",
"fix_scope": "multi_file_refactor",
"confidence": "high",
"unreported_risk": ""
}
},
"findings": [
{
"dimension": "error_consistency",
"identifier": "cli_raw_error_passthrough_inconsistent_context",
"summary": "Sibling CLI commands mix raw error passthrough and contextual wrapping.",
"related_files": [
"cmd/get.go",
"cmd/scrape.go",
"cmd/push.go",
"cmd/ask.go"
],
"evidence": [
"runGet returns constructDocURL error directly (cmd/get.go:47).",
"runScrape returns load/scrape errors directly (cmd/scrape.go:91, cmd/scrape.go:126).",
"runPush returns loadAppConfig error directly (cmd/push.go:52), but wraps later failures with operation labels (cmd/push.go:81, cmd/push.go:91, cmd/push.go:97).",
"runAsk similarly passes config load error directly (cmd/ask.go:130)."
],
"suggestion": "Standardize command-boundary wrapping: every external call failure should be wrapped with command+operation context (for example, \"load app config for get command: %w\") before returning.",
"confidence": "high",
"impact_scope": "subsystem",
"fix_scope": "multi_file_refactor"
},
{
"dimension": "error_consistency",
"identifier": "transport_error_contract_mixed_wrapped_and_raw",
"summary": "Server transport code alternates between wrapped errors and raw returns.",
"related_files": [
"internal/server/server.go",
"cmd/serve.go"
],
"evidence": [
"RPC setup/handler paths in cmd/serve consistently wrap with operation context (e.g., cmd/serve.go:69, cmd/serve.go:96, cmd/serve.go:107).",
"internal server code has contextual wrappers for encode paths (internal/server/server.go:223, 229, 267, 273), but returns raw runtime errors in Start (internal/server/server.go:171, 234)."
],
"suggestion": "Define a transport-level error policy (wrapped with transport+operation context vs typed sentinel mapping) and apply it to listener/scanner failure returns in Start for parity with existing wrapped encode paths.",
"confidence": "high",
"impact_scope": "module",
"fix_scope": "multi_file_refactor"
},
{
"dimension": "error_consistency",
"identifier": "python_cli_exit_strategy_fragmented",
"summary": "Python command flows use inconsistent fatal-error signaling patterns.",
"related_files": [
"cmd/devour_enhanced.py",
"cmd/devour_enhanced_v2.py",
"desloppify/desloppify/desloppify/app/commands/next.py",
"desloppify/desloppify/desloppify/app/commands/resolve/selection.py"
],
"evidence": [
"Enhanced scripts print then call sys.exit(1) in multiple branches (cmd/devour_enhanced.py:600/607/616; cmd/devour_enhanced_v2.py:601/608/617).",
"Another command raises SystemExit directly on output failure (desloppify/.../next.py:137).",
"Resolve validation path also exits process directly via sys.exit(1) (desloppify/.../resolve/selection.py:84/87)."
],
"suggestion": "Adopt one CLI failure contract for Python commands (for example, raise a command exception and let one top-level runner map to exit code and formatted output) instead of mixing local sys.exit, print+exit, and raise SystemExit.",
"confidence": "medium",
"impact_scope": "subsystem",
"fix_scope": "architectural_change"
}
],
"review_quality": {
"batch_count": 1,
"dimension_coverage": 1.0,
"evidence_density": 1.0,
"high_score_without_risk": 0,
"finding_pressure": 7.244,
"dimensions_with_findings": 1
}
}
@@ -0,0 +1,125 @@
You are a focused subagent reviewer for a single holistic investigation batch.
Repository root: /home/tdvorak/Desktop/PROG_projekty/GOLANG/Devour
Immutable packet: /home/tdvorak/Desktop/PROG_projekty/GOLANG/Devour/.desloppify/review_packets/holistic_packet_20260224_110336.json
Batch index: 1
Batch name: Cross-cutting Sweep
Batch dimensions: error_consistency
Batch rationale: selected dimensions had no direct batch mapping; review representative cross-cutting files
Files assigned:
- internal/quality/enhanced_types.go
- internal/quality/scoring_test.go
- internal/quality/types.go
- pkg/rustdocs/parser_test.go
- internal/config/config.go
- cmd/scrape.go
- internal/quality/plugins/go/analyzers/detectors.go
- internal/quality/plugins/go/analyzers/advanced.go
- internal/scraper/web.go
- internal/quality/plugins/go/plugin.go
- internal/scheduler/scheduler.go
- cmd/push.go
- internal/scraper/localsearch_test.go
- cmd/ask.go
- internal/ai/openai.go
- internal/server/server.go
- cmd/get.go
- internal/quality/analyzers/controlflow.go
- internal/vector/store.go
- examples/demo_scrapers.go
- internal/indexer/indexer.go
- internal/scraper/openapi.go
- pkg/pythondocs/parser.go
- cmd/get_test.go
- internal/quality/scanner_test.go
- internal/scraper/localsearch.go
- cmd/serve.go
- internal/scraper/external/nuxtdocs.go
- internal/quality/scanner.go
- internal/quality/plugins/go/analyzers/test_coverage.go
- internal/search/engine.go
- internal/scraper/github.go
- internal/scraper/external/astrodocs.go
- internal/scraper/external/cloudflaredocs.go
- internal/scraper/external/dockerdocs.go
- internal/quality/plugins/go/fixers/advanced_fixers.go
- cleanup_unused.go
- main.go
- cmd/ask_test.go
- cmd/auto.go
- internal/scraper/local.go
- internal/scraper/local_test.go
- README.md
- .desloppify/config.json
- .desloppify/query.json
- .desloppify/subagents/runs/20260223_100953/prompts/batch-1.md
- .desloppify/subagents/runs/20260223_100953/prompts/batch-2.md
- .desloppify/subagents/runs/20260223_100953/prompts/batch-3.md
- .desloppify/subagents/runs/20260223_100953/prompts/batch-4.md
- .desloppify/subagents/runs/20260223_100953/prompts/batch-5.md
- .desloppify/subagents/runs/20260223_100953/prompts/batch-6.md
- .desloppify/subagents/runs/20260224_101201/prompts/batch-1.md
- .desloppify/subagents/runs/20260224_101201/prompts/batch-2.md
- .desloppify/subagents/runs/20260224_101201/prompts/batch-5.md
- .desloppify/subagents/runs/20260224_101740/prompts/batch-1.md
- .desloppify/subagents/runs/20260224_104658/prompts/batch-1.md
- .github/workflows/ci.yml
- AGENTS.md
- cmd/devour_enhanced.py
- cmd/devour_enhanced_fixed.py
- cmd/devour_enhanced_v2.py
- desloppify/desloppify/desloppify/app/commands/_show_terminal.py
- desloppify/desloppify/desloppify/app/commands/fix/apply_flow.py
- desloppify/desloppify/desloppify/app/commands/issues_cmd.py
- desloppify/desloppify/desloppify/app/commands/next.py
- desloppify/desloppify/desloppify/app/commands/resolve/selection.py
- desloppify/desloppify/desloppify/app/commands/scan/scan_reporting_llm.py
- desloppify/desloppify/desloppify/app/commands/status_parts/render.py
- desloppify/desloppify/desloppify/app/output/scorecard_parts/projection.py
- desloppify/desloppify/desloppify/engine/detectors/security/rules.py
- desloppify/desloppify/desloppify/engine/scoring_internal/subjective/core.py
- desloppify/desloppify/desloppify/engine/state_internal/resolution.py
- desloppify/desloppify/desloppify/intelligence/review/__init__.py
- desloppify/desloppify/desloppify/intelligence/review/context_internal/structure.py
- desloppify/desloppify/desloppify/intelligence/review/dimensions/data.py
- desloppify/desloppify/desloppify/intelligence/review/importing/holistic.py
- desloppify/desloppify/desloppify/languages/_shared/phases_common.py
- desloppify/desloppify/desloppify/languages/_shared/review_data/dimensions.json
- desloppify/desloppify/desloppify/languages/_shared/scaffold_detect_commands.py
- desloppify/desloppify/desloppify/languages/csharp/_parse_helpers.py
Task requirements:
1. Read the immutable packet and follow `system_prompt` constraints exactly.
2. Evaluate ONLY listed files and ONLY listed dimensions for this batch.
3. Return 0-10 high-quality findings for this batch (empty array allowed).
4. Score/finding consistency is required: broader or more severe findings MUST lower dimension scores.
5. Every finding must include `related_files` with at least 2 files when possible.
6. Every finding must include `impact_scope` and `fix_scope`.
7. Every scored dimension MUST include dimension_notes with concrete evidence.
8. If a dimension score is >85, include `unreported_risk` in dimension_notes.
9. Use exactly one decimal place for every assessment and abstraction sub-axis score.
10. Do not edit repository files.
11. Return ONLY valid JSON, no markdown fences.
Scope enums:
- impact_scope: "local" | "module" | "subsystem" | "codebase"
- fix_scope: "single_edit" | "multi_file_refactor" | "architectural_change"
Output schema:
{
"batch": "Cross-cutting Sweep",
"batch_index": 1,
"assessments": {"<dimension>": <0-100 with one decimal place>},
"dimension_notes": {
"<dimension>": {
"evidence": ["specific code observations"],
"impact_scope": "local|module|subsystem|codebase",
"fix_scope": "single_edit|multi_file_refactor|architectural_change",
"confidence": "high|medium|low",
"unreported_risk": "required when score >85",
"sub_axes": {"abstraction_leverage": 0-100 with one decimal place, "indirection_cost": 0-100 with one decimal place, "interface_honesty": 0-100 with one decimal place} // required for abstraction_fitness when evidence supports it
}
},
"findings": []
}
@@ -0,0 +1,79 @@
{
"batch": "Cross-cutting Sweep",
"batch_index": 1,
"assessments": {
"error_consistency": 74.0
},
"dimension_notes": {
"error_consistency": {
"evidence": [
"CLI command handlers frequently return upstream errors without operation context (e.g., cmd/get.go:47, cmd/scrape.go:91/126, cmd/push.go:52, cmd/ask.go:130), while nearby code in the same command set does wrap with contextual messages (e.g., cmd/push.go:81/91/97, cmd/scrape.go:132/146/204/210).",
"Server transport paths mix wrapped and raw propagation: write/encode paths use wrapTransportError and contextual fmt.Errorf (internal/server/server.go:223/229/267/273), but Start returns raw listener/scanner errors directly (internal/server/server.go:171/234).",
"Python CLI surfaces process-fatal errors inconsistently across sibling commands: direct sys.exit after print (cmd/devour_enhanced.py:600/607/616, cmd/devour_enhanced_v2.py:601/608/617), raise SystemExit in another command flow (desloppify/.../app/commands/next.py:137), and validation-time sys.exit in resolve flow (desloppify/.../app/commands/resolve/selection.py:84/87)."
],
"impact_scope": "subsystem",
"fix_scope": "multi_file_refactor",
"confidence": "high"
}
},
"findings": [
{
"dimension": "error_consistency",
"identifier": "cli_raw_error_passthrough_inconsistent_context",
"summary": "Sibling CLI commands mix raw error passthrough and contextual wrapping.",
"related_files": [
"cmd/get.go",
"cmd/scrape.go",
"cmd/push.go",
"cmd/ask.go"
],
"evidence": [
"runGet returns constructDocURL error directly (cmd/get.go:47).",
"runScrape returns load/scrape errors directly (cmd/scrape.go:91, cmd/scrape.go:126).",
"runPush returns loadAppConfig error directly (cmd/push.go:52), but wraps later failures with operation labels (cmd/push.go:81, cmd/push.go:91, cmd/push.go:97).",
"runAsk similarly passes config load error directly (cmd/ask.go:130)."
],
"suggestion": "Standardize command-boundary wrapping: every external call failure should be wrapped with command+operation context (for example, \"load app config for get command: %w\") before returning.",
"confidence": "high",
"impact_scope": "subsystem",
"fix_scope": "multi_file_refactor"
},
{
"dimension": "error_consistency",
"identifier": "transport_error_contract_mixed_wrapped_and_raw",
"summary": "Server transport code alternates between wrapped errors and raw returns.",
"related_files": [
"internal/server/server.go",
"cmd/serve.go"
],
"evidence": [
"RPC setup/handler paths in cmd/serve consistently wrap with operation context (e.g., cmd/serve.go:69, cmd/serve.go:96, cmd/serve.go:107).",
"internal server code has contextual wrappers for encode paths (internal/server/server.go:223, 229, 267, 273), but returns raw runtime errors in Start (internal/server/server.go:171, 234)."
],
"suggestion": "Define a transport-level error policy (wrapped with transport+operation context vs typed sentinel mapping) and apply it to listener/scanner failure returns in Start for parity with existing wrapped encode paths.",
"confidence": "high",
"impact_scope": "module",
"fix_scope": "multi_file_refactor"
},
{
"dimension": "error_consistency",
"identifier": "python_cli_exit_strategy_fragmented",
"summary": "Python command flows use inconsistent fatal-error signaling patterns.",
"related_files": [
"cmd/devour_enhanced.py",
"cmd/devour_enhanced_v2.py",
"desloppify/desloppify/desloppify/app/commands/next.py",
"desloppify/desloppify/desloppify/app/commands/resolve/selection.py"
],
"evidence": [
"Enhanced scripts print then call sys.exit(1) in multiple branches (cmd/devour_enhanced.py:600/607/616; cmd/devour_enhanced_v2.py:601/608/617).",
"Another command raises SystemExit directly on output failure (desloppify/.../next.py:137).",
"Resolve validation path also exits process directly via sys.exit(1) (desloppify/.../resolve/selection.py:84/87)."
],
"suggestion": "Adopt one CLI failure contract for Python commands (for example, raise a command exception and let one top-level runner map to exit code and formatted output) instead of mixing local sys.exit, print+exit, and raise SystemExit.",
"confidence": "medium",
"impact_scope": "subsystem",
"fix_scope": "architectural_change"
}
]
}