unoverse 0.1.185 → 0.1.186
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/operator/lib/deploy.sh +19 -3
- package/package.json +1 -1
package/operator/lib/deploy.sh
CHANGED
|
@@ -1034,9 +1034,25 @@ EOF
|
|
|
1034
1034
|
# so a universe that boots "JWT enforced on /mcp" — every Cognito/AWS deployment —
|
|
1035
1035
|
# reported FAIL on a correctly protected endpoint and turned a healthy deploy red.
|
|
1036
1036
|
_smoke "MCP initialize" sh -c "code=\$(curl -s -m 10 -o /dev/null -w '%{http_code}' -X POST '$smoke_api/mcp' -H 'content-type: application/json' -H 'accept: application/json, text/event-stream' -d '{\"jsonrpc\":\"2.0\",\"id\":1,\"method\":\"initialize\",\"params\":{\"protocolVersion\":\"2025-06-18\",\"capabilities\":{},\"clientInfo\":{\"name\":\"smoke\",\"version\":\"0\"}}}'); [ \"\$code\" = 200 ] || [ \"\$code\" = 401 ]"
|
|
1037
|
-
#
|
|
1038
|
-
#
|
|
1039
|
-
|
|
1037
|
+
# THE MARKETPLACE LANE ANSWERS. 200 (auth off), or 401/404 (auth on) — all three
|
|
1038
|
+
# prove the listener is up and routing; a 5xx is a stack that is live and broken.
|
|
1039
|
+
#
|
|
1040
|
+
# RENAMED FROM "engine reaches database" (2026-08-31), because it stopped being able
|
|
1041
|
+
# to prove that and a check that overclaims is worse than one that does less. The
|
|
1042
|
+
# capability gate (server/src/security/gate.ts) refuses an unauthenticated request
|
|
1043
|
+
# with 404 BEFORE the handler runs — deliberately, so a 403 cannot tell an attacker
|
|
1044
|
+
# which routes exist — so on any auth-enabled universe this request never reaches
|
|
1045
|
+
# Postgres at all. It also, until this change, failed every deploy: the check expected
|
|
1046
|
+
# 401, the gate returned 404, and a healthy stack reported FAIL.
|
|
1047
|
+
#
|
|
1048
|
+
# WHAT STILL COVERS THE 2026-08-13 INCIDENT (an engine→Postgres 500 hiding behind a
|
|
1049
|
+
# healthy-looking stack): the wait above. `/health` answers 200 only when isReady(),
|
|
1050
|
+
# and readiness comes after the catalogue has loaded FROM THE DATABASE, so a universe
|
|
1051
|
+
# that cannot reach Postgres never becomes healthy and never gets here. That is
|
|
1052
|
+
# boot-time proof, not live proof. Proving it LIVE needs a probe that reaches a
|
|
1053
|
+
# handler — an authenticated call, or a public deep-health route — and neither exists
|
|
1054
|
+
# yet. Left as a known gap rather than papered over with a check that cannot see it.
|
|
1055
|
+
_smoke "marketplace lane answers" sh -c "code=\$(curl -s -m 10 -o /dev/null -w '%{http_code}' '$smoke_api/marketplace'); [ \"\$code\" = 200 ] || [ \"\$code\" = 401 ] || [ \"\$code\" = 404 ]"
|
|
1040
1056
|
if [ -n "$smoke_canvas" ]; then
|
|
1041
1057
|
# The canvas page and the hashed bundle it names: present, compressed, cacheable.
|
|
1042
1058
|
_smoke "canvas page + compressed bundle" sh -c "asset=\$(curl -sf -m 10 '$smoke_canvas/' | grep -o '/assets/index-[^\"]*\.js' | head -1); [ -n \"\$asset\" ] && curl -sf -m 20 -H 'accept-encoding: gzip' -D - \"$smoke_canvas\$asset\" -o /dev/null | grep -qi '^content-encoding: gzip'"
|
package/package.json
CHANGED