Skip to content

fix(aspire): resource reports Healthy while SSR returns 500 — probe checks the port, not the app #954

Description

@rickylabs

Summary

Aspire reports a generated Fresh application as Healthy while every HTTP request to it returns 500. The health probe checks the process and its listening port, not whether the app can actually render.

Reproduction steps

aspire wait signal-garden --non-interactive   # -> Resource 'signal-garden' is healthy
curl -i http://localhost:<port>/              # -> 500 Internal Server Error

Expected behavior

A resource reported healthy serves its home page.

Actual behavior

aspire wait returns healthy; the first request fails during SSR (in this case on the jsr: specifier problem filed separately). Because the probe is satisfied by a listening socket, a completely non-functional application looks green on the dashboard.

Environment

0.0.1-beta.11, Aspire 13.4.6.

Suggested direction

Give the generated app an HTTP health probe that renders a minimal SSR route, rather than a process/port check. "Healthy and returning 500" is the worst available combination: it sends the developer looking anywhere except at the app.


Found by GPT-5.6 Sol while building a five-service release-rehearsal application. Ranked #2 of its 12 findings.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions