Skip to content

ticket-005: optimize AST module analysis, ignore pattern matching, and file collection in sumd - #10

Merged
ifuri-validator-agent[bot] merged 1 commit into
mainfrom
ticket/005-optimize-ast-module-analysis-and-ignore-pattern-matching-in-sumd
Oct 13, 2026
Merged

ifuri-validator-agent[bot] merged 1 commit into
mainfrom
ticket/005-optimize-ast-module-analysis-and-ignore-pattern-matching-in-sumd

Conversation

@tom-sapletta-com

Copy link
Copy Markdown
Contributor

Closes ticket-005

  • Add c2004, c2004-git-backup, workshop to _IGNORE_DIRS and _SKIP_DIRS
  • Pre-filter candidate files by source language extension before ignore checks in _collect_map_files
  • Fast cached pattern matching via _path_matches_pattern_cached
  • Parallelize _render_map_detail with ProcessPoolExecutor (with graceful serial fallback)
  • Cache radon.complexity cc_visit import

@ifuri-validator-agent ifuri-validator-agent Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Validator approval after policy checks for exact head cd3ae3ca6ef285194be5c93710532d9f3391a3b4.

Ticket: ticket-005
Correlation ID: local-autogrammar-sumd-pr-10-ticket-005
Model: gemini/gemini-3.8-flash
Advisory LLM review: LLM_UNAVAILABLE
Reason: No module named 'litellm'
This approval rests on the deterministic checks alone; no advisory opinion was recorded for this head.
Semantic review prerequisite: not_required; policy 676cb4516bbfed2a000e40b9b1b6e4a430ecc761ec546aeb53d721a1905cfdd7.

Actual PR impact radar

Exact range: 4072eb290ecceb69c9ad5825c3180c001c0dd416...cd3ae3ca6ef285194be5c93710532d9f3391a3b4
Change digest: 18197ea8dccb70bd35381b29d0926b2b7c9ab49f866bbda3a44598de400aa113
Score: 36/100 (M), estimated 44 min, split recommended: true
Affected services/components: repository-wide/unclassified

Machine-readable radar JSONL and SVG
{"actual_change":{"additions":156,"base_sha":"4072eb290ecceb69c9ad5825c3180c001c0dd416","binary_files":0,"categories":{"code":2,"configuration":1,"docs":2},"change_digest":"18197ea8dccb70bd35381b29d0926b2b7c9ab49f866bbda3a44598de400aa113","comparison":"4072eb290ecceb69c9ad5825c3180c001c0dd416...cd3ae3ca6ef285194be5c93710532d9f3391a3b4","deletions":29,"file_count":5,"files":["project/TICKETS.md","project/ticket-005/README.md","project/ticket-005/intent.json","sumd/cli_scan.py","sumd/extractor.py"],"head_sha":"cd3ae3ca6ef285194be5c93710532d9f3391a3b4","service_count":0,"services":[]},"assessment_mode":"observed-pr","axes":{"coupling":2,"delivery":1,"scope":2,"uncertainty":3,"validation":1},"complexity":"M","confidence":0.9,"diagnostics":["RADAR-ACCEPTANCE-MISSING","RADAR-BUDGET-EXCEEDED"],"estimate":{"budget_minutes":30,"minutes":44,"within_budget":false},"impact":{"components":["project","sumd"],"files":["project/TICKETS.md","project/ticket-005/README.md","project/ticket-005/intent.json","sumd/cli_scan.py","sumd/extractor.py"],"public_interfaces":[],"runtime_dependencies":0},"schema":"subactor.ticket-radar/v1","score":36,"split":{"parts":[{"estimated_minutes":17,"name":"Implement project","scope":["project"]},{"estimated_minutes":17,"name":"Implement sumd","scope":["sumd"]},{"estimated_minutes":15,"name":"Validate and project to trackers","scope":["tests","planfile","github/gitlab/jira projections"]}],"reason":"estimated_minutes_exceed_budget","recommended":true},"standards":[{"id":"wellmanifest/dsl","revision":"6c60fc4e0dd1f1bb74f46a7745e28019908d1203","version":"0.1.0-dev"},{"id":"wellmanifest/ticket-lifecycle","revision":"5bf581907a87b46a13a73e6c033d3abe4d9a306f","version":"0.1.0-dev"},{"id":"wellmanifest/git-lifecycle","revision":"7d77d4b7af57e69bc75c3a0290b3a4805c5c4438","version":"0.2.0-dev"},{"id":"wellmanifest/logs","revision":"48c284ef7a069055c0bcb6b900147ce5e65f8b43","version":"0.3.0"}],"ticket_ref":"ticket-005"}
<svg xmlns="http://www.w3.org/2000/svg" width="128" height="128" viewBox="0 0 128 128" role="img"><title>ticket-005: ticket-005: optimize AST module analysis, ignore pattern matching, and file collection in sumd</title><rect width="128" height="128" rx="12" fill="#f8fafc"/><g stroke-width="1"><polygon points="64,55 72,61 69,71 59,71 56,61" fill="none" stroke="#d7dde5"/><polygon points="64,47 80,59 74,78 54,78 48,59" fill="none" stroke="#d7dde5"/><polygon points="64,38 89,56 79,85 49,85 39,56" fill="none" stroke="#d7dde5"/><polygon points="64,30 97,53 84,92 44,92 31,53" fill="none" stroke="#d7dde5"/><polygon points="64,21 105,51 89,99 39,99 23,51" fill="none" stroke="#d7dde5"/><line x1="64" y1="64" x2="64" y2="21" stroke="#aab4c0"/><line x1="64" y1="64" x2="105" y2="51" stroke="#aab4c0"/><line x1="64" y1="64" x2="89" y2="99" stroke="#aab4c0"/><line x1="64" y1="64" x2="39" y2="99" stroke="#aab4c0"/><line x1="64" y1="64" x2="23" y2="51" stroke="#aab4c0"/></g><polygon points="64,47 80,59 79,85 59,71 56,61" fill="#fb923c" fill-opacity="0.45" stroke="#c2410c" stroke-width="2"/><circle cx="64" cy="64" r="3" fill="#c2410c"/><g font-family="sans-serif" font-size="7" fill="#334155"><text x="64" y="11" text-anchor="middle">SCO</text><text x="114" y="48" text-anchor="middle">COU</text><text x="95" y="107" text-anchor="middle">UNC</text><text x="33" y="107" text-anchor="middle">VAL</text><text x="14" y="48" text-anchor="middle">DEL</text></g><text x="64" y="124" text-anchor="middle" font-family="sans-serif" font-size="8" fill="#0f172a">M · 44m</text></svg>
Merge will be attempted after this approval when explicitly authorized. ## Decision record (recomputable)
DECISION D-005-2986
TICKET ticket-005
HEAD_SHA cd3ae3ca6ef285194be5c93710532d9f3391a3b4
CORRELATION_ID local-autogrammar-sumd-pr-10-ticket-005
ACTOR agent:ifuri-validator-agent[bot]
APPLIED_RULE P-CORE-015
INPUT author_login = "tom-sapletta-com"
INPUT observed_checks = ["governance / enforce=PASS","quality=PASS","governance / remote lifecycle=PASS"]
INPUT required_checks = ["quality"]
INPUT required_checks_source = "protected registry (env/request)"
INPUT reviewer_login = "ifuri-validator-agent[bot]"
INPUT semantic_review_assessment = {"schema":"subactor.validator/semantic-review-assessment/v1","subject":{"repository":"autogrammar/sumd","pull_request":10,"head_sha":"cd3ae3ca6ef285194be5c93710532d9f3391a3b4","base_sha":"4072eb290ecceb69c9ad5825c3180c001c0dd416","diff_sha256":"755db1e2d5ffa934821c43cba49f6bebfeac4cd0b93ada47b9287a1faaa1ee63"},"policy":{"policy_schema":"subactor.validator/semantic-review-policy/v1","policy_version":1,"policy_sha256":"676cb4516bbfed2a000e40b9b1b6e4a430ecc761ec546aeb53d721a1905cfdd7","required":false,"critical_paths":[],"observed_paths":["project/TICKETS.md","project/ticket-005/README.md","project/ticket-005/intent.json","sumd/cli_scan.py","sumd/extractor.py"]},"grounding":"full-diff-not-per-finding-proof","execution_authority":false,"status":"not_required","reason":null,"review_sha256":null,"unresolved":[]}
INPUT superseded_checks = []
INPUT ticket_radar_receipt = {"schema":"subactor.ticket-radar/v1","base_sha":"4072eb290ecceb69c9ad5825c3180c001c0dd416","head_sha":"cd3ae3ca6ef285194be5c93710532d9f3391a3b4","change_digest":"18197ea8dccb70bd35381b29d0926b2b7c9ab49f866bbda3a44598de400aa113","score":36,"complexity":"M","estimated_minutes":44,"split_recommended":true,"services":[],"authority":"ADVISORY","promotion":"FORBIDDEN"}
VERDICT APPROVE AUTHORITY DETERMINISTIC
REJECTED REQUEST_CHANGES BECAUSE NO_UNSAFE_CHANGE_REASON_FOUND
ADVISORY llm_verdict = "" MODEL "gemini/gemini-3.8-flash"
ASSERT VERDICT_AUTHORITY != "ADVISORY"

@ifuri-validator-agent
ifuri-validator-agent Bot merged commit 18e73dd into main Oct 13, 2026
3 checks passed
@ifuri-validator-agent
ifuri-validator-agent Bot deleted the ticket/005-optimize-ast-module-analysis-and-ignore-pattern-matching-in-sumd branch October 13, 2026 04:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant