← Back to issue list

Explicitly separate public and private APIs

View original Github issue

Metadata

Project
craft-application
Number
#386
Type
issue
State
open
Author
lengau
Labels
—
Created
Updated
Closed
—

Current evaluation

API visibility remains undefined: launchpad and remote already expose __all__, but no policy classifies them as public or private and no implementation plan is provided.

Suggested action: needs triage

Reason: The maintainer-authored request has no labels, comments, assignee, or acceptance criteria, so it has not been prioritized. Package initializers, including launchpad and remote, now define __all__, but the repository has no visible policy explaining whether those exports are public or private or how existing consumers would be handled.

Evaluated by: mr-cal-bot

Impact: 58 Quick Win: 6 Complexity: 76 Confidence: 91 Actionability: 46

Issue body

### What needs to get done Right now it's hard to know what's public and what's private. For example, the `launchpad` and `remote` modules are probably mostly private, but it's not explicit. ### Why it needs to get done We want to prevent every change from becoming a breaking change.

Evaluation history

Date Model Scores Action Summary
stealth/space-bunny-alpha
Impact: 58
Quick Win: 6
Complexity: 76
Confidence: 91
Actionability: 46
needs triage API visibility remains undefined: launchpad and remote already expose __all__, but no policy classifies them as public or private and no implementation plan is provided.
qwen/qwen3.6-35b-a3b
Impact: 55
Quick Win: 16
Complexity: 40
Confidence: 70
Actionability: 50
keep open Maintainer request to establish clear public vs private API boundaries using __all__ and naming conventions to prevent breaking changes.
qwen/qwen3.8-27b
Impact: 60
Quick Win: 15
Staleness: 70
Complexity: 75
Confidence: 75
Support Request: 0
needs triage Feature request to explicitly separate public and private APIs in craft-application (e.g. launchpad, remote modules) to prevent every change from becoming a breaking change. No labels, no comments, no assignee; last activity 465 days ago.
qwen/qwen3.6-35b-a3b
Staleness: 85
Complexity: 60
Confidence: 75
Support Request: 10
needs triage Issue proposes explicitly separating public and private APIs to prevent breaking changes. No maintainer response or labels. Inactive for over a year.
qwen3.6-35b-a3b-mtp-q6
Staleness: 90
Complexity: 60
Confidence: 85
Support Request: 10
needs triage Proposes explicitly marking public vs private APIs to prevent breaking changes. Unlabelled, zero comments, and inactive for over two years, awaiting maintainer assessment.

Update history

No update history recorded yet.

Related issues

No related issues found above the similarity threshold.