← Back to issue list

Redesign project file resolver

View original Github issue

Metadata

Project
craft-application
Number
#583
Type
issue
State
open
Author
mr-cal
Labels
—
Created
Updated
Closed
—

Current evaluation

Redesign project file resolver to search multiple locations and skip non-directory candidates. Current resolver only checks one app-named YAML and errors on a file path; multi-location search remains unimplemented.

Suggested action: keep open

Reason: Maintainer-authored design issue with clear goals and an internal Jira ticket (CRAFT-3772). Current `resolve_project_file_path()` still only checks `self._project_dir / self.project_file_name`, so the requested multi-location resolver is not implemented; the file-vs-directory case now raises `ProjectDirectoryTypeError` rather than an internal error.

Evaluated by: mr-cal-bot

Impact: 50 Quick Win: 14 Complexity: 55 Confidence: 68 Actionability: 60

Issue body

### What needs to get done `_resolve_project_path()` 1. should find a project file in multiple locations. 2. not fail if a directory is actually a file ### Why it needs to get done 1. Applications have to hack around this (https://github.com/canonical/snapcraft/blob/5317dbebac1c953192ff38e4c6fddd294f979cb1/snapcraft/application.py#L154-L165) 2. craft-application raises an internal error (https://github.com/canonical/snapcraft/issues/5167)

Evaluation history

Date Model Scores Action Summary
~deepseek/deepseek-pro-latest
Impact: 50
Quick Win: 14
Complexity: 55
Confidence: 68
Actionability: 60
keep open Redesign project file resolver to search multiple locations and skip non-directory candidates. Current resolver only checks one app-named YAML and errors on a file path; multi-location search remains unimplemented.
~deepseek/deepseek-pro-latest
Impact: 60
Quick Win: 19
Complexity: 55
Confidence: 75
Actionability: 70
keep open Project file resolver still checks only one app-named YAML and errors when project_dir is a file; multi-location redesign remains open.
stealth/space-bunny-alpha
Impact: 50
Quick Win: 12
Complexity: 58
Confidence: 87
Actionability: 56
needs triage Project file resolution still checks only one app-named YAML file and errors when the project path is a file; the multi-location redesign remains open and needs triage.
qwen/qwen3.6-35b-a3b
Impact: 65
Quick Win: 25
Complexity: 45
Confidence: 75
Actionability: 70
keep open Feature request to redesign project file resolver to search multiple locations and handle directory-as-file case. Current implementation only checks single location.
qwen/qwen3.8-27b
Impact: 55
Quick Win: 25
Staleness: 72
Complexity: 55
Confidence: 78
Support Request: 0
needs triage Task to redesign project file resolver to search multiple locations and handle file-vs-directory edge cases. Still unimplemented in current code; no labels, no assignee, no maintainer engagement beyond auto Jira sync.
qwen/qwen3.6-35b-a3b
Staleness: 85
Complexity: 75
Confidence: 70
Support Request: 10
needs triage Request to redesign _resolve_project_path() to search multiple locations and handle files passed as directories. Unlabelled, no maintainer response, inactive for over a year.
qwen3.6-35b-a3b-mtp-q6
Staleness: 95
Complexity: 75
Confidence: 70
Support Request: 10
needs triage Issue requests redesigning _resolve_project_path() to search multiple locations and avoid failing when a file is passed as a directory. Unlabelled and inactive for over a year.

Update history

No update history recorded yet.

Related work

  • Related To: canonical/snapcraft#5167 (confidence 90%)

    Referenced in the issue body as the internal-error symptom; fixed in snapcraft by PR #5512, but the craft-application resolver redesign remains open.

Related issues

No related issues found above the similarity threshold.