Skip to content

Managed startup profile rejects schema-owned messaging placeholder fields #9355

Description

@ericksoa

Investigation Summary

  • The unfiltered E2E run at eb560abae63f89183406b3cc273ecb8bf12ccfd2 reached the managed startup profile validator.
  • Five messaging jobs rejected valid hydrated plan fields before sandbox startup.
  • Boolean messaging.plan.buildSteps[*].value.pin fields are package-install metadata, not credentials.
  • Canonical UPPER_ENV_KEY=<credential-placeholder> values in messaging.plan.agentRender[*].lines[*] contain placeholders, not credential material.
  • No existing issue matches these failure signatures.

Description

Stock managed onboarding carries the hydrated messaging plan in the managed startup profile. The generic credential-shape scanner rejects schema-owned fields that contain only a boolean package pin or a canonical OpenShell credential placeholder.

Expected behavior: the validator accepts these exact schema forms and continues to reject raw credentials or placeholder-shaped data at any other path.

Actual behavior: onboarding fails with Invalid managed startup profile before the sandbox starts.

Reproduction Steps

  1. Dispatch the E2E workflow at eb560abae63f89183406b3cc273ecb8bf12ccfd2 with empty jobs and targets.
  2. Run the managed messaging targets.
  3. Observe one of these failures:
    • messaging.plan.buildSteps[*].value.pin has a credential-shaped field name
    • messaging.plan.agentRender[*].lines[*] contains credential-shaped string data

Environment

  • Workflow: unfiltered E2E run 32068537791
  • Runner: GitHub-hosted Ubuntu
  • Runtime: OpenShell Docker driver with the published managed-image cohort
  • Candidate commit: eb560abae63f89183406b3cc273ecb8bf12ccfd2

Failure Evidence

Acceptance Criteria

  • The validator accepts a boolean only at messaging.plan.buildSteps[*].value.pin.
  • The validator accepts a single canonical environment assignment only at messaging.plan.agentRender[*].lines[*] when the right-hand side is an approved credential placeholder.
  • Raw credential values, malformed assignments, and the same values at other paths still fail closed.
  • All five affected targets pass in the complete unfiltered E2E run.

Relationship

Prerequisite for #9140. Related epic: #7744.

Metadata

Metadata

Assignees

Labels

area: e2eEnd-to-end tests, nightly failures, or validation infrastructurearea: messagingMessaging channels, bridges, manifests, or channel lifecyclearea: onboardingOnboarding FSM, provider setup, sandbox launch, or first-run flowarea: sandboxOpenShell sandbox lifecycle, runtime, config, or recoveryarea: securitySecurity controls, permissions, secrets, or hardeningbugintegration: hermesHermes integration behaviorintegration: openclawOpenClaw integration behavior

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions