Surface the app's source (image/dockerfile/stack) in app status
Once an app is deployed, its source is invisible. miren app status shows no source line, while miren deploy --analyze only reports it during deployment.
Persist the source kind and configured value on each app version, then show it in app status and deploy --analyze:
Source: image docker.io/library/nginx:alpine
Source: dockerfile
Source: stack python
For an image source, show the normalized reference the user configured. Do not present it as a digest unless the user actually configured a digest. The resolved runtime image is a separate artifact and may differ after a mutable tag is resolved by MIR-1696.
Include the same source information in JSON output as a structured object with kind and value. Keep miren app list unchanged.
Out of scope:
- Inspecting or displaying effective entrypoint, arguments, working directory, or exposed ports.
- Upstream-image freshness or “update available” reporting.
- Resolving mutable tags, which belongs to MIR-1696.
Ref: RFD-91, “Surfacing the source in the CLI.”