← 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

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.

Suggested action: needs triage

Reason: Filed by a maintainer as a clear task with concrete requirements, but has no labels, no assignee, and no human maintainer response (only the Jira sync bot at 465 days). The current resolve_project_file_path() in project.py still only checks one location and raises ProjectDirectoryTypeError for files, confirming the issue remains open and relevant. Needs triage to be prioritized or explicitly deferred.

Impact: 55 Quick Win: 24.75 Staleness: 72 Complexity: 55 Confidence: 78 Support Request: 0

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
qwen/qwen3.8-27b
Impact: 55
Quick Win: 24.75
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.
qwen3.6-35b-a3b-mtp-q6
Staleness: 88
Complexity: 72
Confidence: 85
Support Request: 15
needs triage Redesign _resolve_project_path to search multiple locations and handle files passed as directories. Prevents workarounds and internal errors in dependent apps. Open, inactive for over a year, and synced to Jira as CRAFT-3772.

Update history

No update history recorded yet.

Related work

  • Caused By: canonical/snapcraft#5167 (confidence 80%)

    Referenced in the issue body as the trigger: snapcraft raised an internal error when a file named 'snap' existed, motivating the 'not fail if a directory is actually a file' requirement.

Related issues

No related issues found above the similarity threshold.