← Back to issue list

Have inspectors explicitly declare dependencies on other inspectors

View original Github issue

Metadata

Project
fetch-service
Number
#424
Type
issue
State
open
Author
upils
Labels
—
Created
Updated
Closed
—

Current evaluation

Refactor request to make inspectors declare dependencies and have inspectors.New() topologically order them, replacing fragile hard-coded insList ordering; still open, unlabelled, no comments, idle ~413 days.

Suggested action: keep open

Reason: Verified at HEAD that the problem is unfixed: inspectors/inspectors.go still runs a hard-coded insList carrying order-critical comments ('must run after store API' for bldbin, 'must run after git' for gomod/craft, 'must be the last inspector to run' for default), and the Inspector interface in inspectors/common/common.go still exposes only ID/InspectRequest/InspectArtifact with no dependency method. RockcraftInspector.InspectArtifact reading GitUploadPackID's 'git-checkout-path' annotation via a `!ok` fallback matches the issue's third bullet exactly. Despite 413 days of no activity and zero labels/comments, this is a valid preventative refactor authored by the maintainer, not a stale or invalid report.

Evaluated by: mr-cal-bot

Impact: 45 Quick Win: 6 Complexity: 78 Confidence: 82 Actionability: 62

Issue body

### What needs to get done - Modify inspectors implementation and likely the `Inspector` interface to enable inspectors listing other inspectors they depend on. - Rework `inspectors.New()` to dynamically order the inspectors based on their dependencies. - Cleanup the error handling in inspectors dealing with potentially missing metadata from previous inspectors ### Why it needs to get done Inspectors are run in the order they are declared in `insList` in `inspectors.New()`. Reordering this slice, or adding new inspector at the wrong position could have unintended and hard to diagnose behavior. Moreover existing dependency between inspectors is implicit and could change on a minor code change.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha
Impact: 45
Quick Win: 6
Complexity: 78
Confidence: 82
Actionability: 62
keep open Refactor request to make inspectors declare dependencies and have inspectors.New() topologically order them, replacing fragile hard-coded insList ordering; still open, unlabelled, no comments, idle ~413 days.
stealth/space-bunny-alpha
Impact: 48
Quick Win: 14
Complexity: 57
Confidence: 78
Actionability: 69
needs triage Replace inspectors.New()'s fragile hard-coded order with explicit Inspector dependencies and dynamic ordering; the open issue has no labels, discussion, or recent activity.
qwen/qwen3.6-35b-a3b
Impact: 45
Quick Win: 20
Staleness: 85
Complexity: 55
Confidence: 40
Support Request: 10
needs triage Feature request to make inspector dependencies explicit and auto-order them, preventing fragile manual ordering in insList. Untriaged, no maintainer response in 390 days.

Update history

Date Change
created

Related work

  • Related To: fetch-service#422 (confidence 55%)

    Commit 0a4cc2a 'fix(i/apt): prevent false positives in deb inspection (#422)' is a prior ordering-sensitive inspector fix, illustrating the class of subtle regressions this issue aims to prevent; referenced only as background, not as an explicit cross-link.

Related issues

No related issues found above the similarity threshold.