Skip to content

cloud: check that objectos-runtime serves the Console and GET /api/v1/runtime/config with the same OS_CONSOLE_MAP_STYLE_URL, and list the variable in cloud's deployment env reference (the cloud half of #26001) #26164

Closed

Description

@objectstack-fleet

Filed by the domain:server seat 1 (session_01R1q2xdtYgU6FKrZ7LgjPCC) on the maintainer's direct word, verbatim: 「需要转给 cloud的,应该立 cloud 车道卡」 and 「开发中涉及 cloud 车道的,也应该转给 cloud」. Parked here with domain:cloud + status:parked until the cloud PM moves it, as pm-dispatch's domain:cloud row says. ⛔ Not a claim; this repository does not dispatch it.

Origin: #26001, ruling 6413991421 (letter A, operator env only). Its in-repo half is PR #26162. Open question kind: cloud comes from the dev report, 6418186488.

What #26162 does: one operator environment variable, OS_CONSOLE_MAP_STYLE_URL, is read in two places:

  • by RuntimeConfigPlugin (@objectstack/cloud-connection), which serves it as mapStyleUrl in GET /api/v1/runtime/config;
  • by the Console mount (@objectstack/cli/console), which adds its origin to the Console CSP connect-src at boot.

A parity test pins that the two readers agree on the same env.

What cloud should check:

  • Whether cloud's objectos-runtime, the consumer of @objectstack/cli/console, serves the Console document and the runtime-config route from one process env.
  • If a cloud deployment splits them across processes, the variable must be set on both. Otherwise the served mapStyleUrl and the CSP disagree, and the map stays grey because the CSP blocks it.
  • Cloud's deployment env reference should list OS_CONSOLE_MAP_STYLE_URL beside OS_CONSOLE_CSP_CONNECT_SRC.

Done when:

  • A cloud deployment that sets OS_CONSOLE_MAP_STYLE_URL serves it in runtime-config and allows its origin in the Console CSP.
  • The variable is documented for cloud operators.

Blocked-by: #26001 (the variable exists once PR #26162 lands and cloud takes the release that carries it).


Generated by Claude Code

Activity

  1. added
    enhancementNew feature or request
    status:parkedParked — exempt from the PM sweep and half-state patrol until its owner migrates it (e.g. cloud PM)
    repo:cloudCard routed whole to the cloud PM: needs cloud code, a producer or a fact (cloud owns it to closure)
    domain:cloudTouches cloud: the whole card is the cloud PM's (repo:cloud seat); no objectstack lane claims it
    area:recordsBusiness objects, records, the views that show data, usable forms, search
    on Oct 26, 2026
  2. objectstack-fleet commented on Oct 28, 2026

    @objectstack-fleet
    ContributorAuthor

    Cloud answer (cloud#3334 item 4): one process, one env — documented

    Premise: 21075ce614 (PR #26162) is an ancestor of cloud's pin 6390fe52.

    • objectos serves the Console document and GET /api/v1/runtime/config from the same container process: mountConsoleStatic is called on the host app in apps/objectos/server/index.ts:382, and the stack's RuntimeConfigPlugin (the cloud subclass of the open one, which does not touch mapStyleUrl) is mounted in the same process at packages/objectos-runtime/src/objectos-stack.ts:701. Both read process.env, and the Worker forwards every OS_* name to the container (FORWARD_PREFIXES, packages/cloudflare-shared/cloudflare/config-guard.ts:12). No split deployment exists, so the two readers agree.
    • Documented (objectstack-ai/cloud#3339): apps/objectos/README.md:252 gains a Console table listing OS_DISABLE_CONSOLE, OS_CONSOLE_MAP_STYLE_URL and OS_CONSOLE_CSP_CONNECT_SRC.

    Neither plane sets OS_CONSOLE_MAP_STYLE_URL in any repo file today, so the hosted check (served in runtime-config and allowed in the CSP) applies the first time an operator sets it.


    Generated by Claude Code

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:recordsBusiness objects, records, the views that show data, usable forms, searchdomain:cloudTouches cloud: the whole card is the cloud PM's (repo:cloud seat); no objectstack lane claims itenhancementNew feature or requestpriority:p2Medium: important, M3repo:cloudCard routed whole to the cloud PM: needs cloud code, a producer or a fact (cloud owns it to closure)status:parkedParked — exempt from the PM sweep and half-state patrol until its owner migrates it (e.g. cloud PM)

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions