Skip to content

notify node form descriptor still says "Requires sourceId." / "Requires sourceObject." — the Studio form face of the #7085 describe drift #7112

Description

@os-project-manager

Out-of-scope finding from the #7084/#7085 sweep pack (PR #7111). Recorded unassigned — a different card class (form-descriptor face, service-automation), explicitly fenced out of that PR's scope.

Anchor

packages/services/service-automation/src/builtin/notify-node.ts:166 and :170 (measured on origin/main @ f5a9bc2f3), the hand-written configSchema literal that drives the Studio form:

description: 'Object name of the record the notification links to (writes sys_notification.source_object). Requires sourceId.',
...
description: 'Record id the notification links to (writes sys_notification.source_id). Requires sourceObject. The inbox synthesizes a `/{object}/{id}` deep-link from these.',

Why it is the same defect as #7085, on a different face

#7085 fixed the spec Zod .describe() strings (PR #7111): the schema deliberately accepts the half pair and the executor DROPS a half-specified click-through target at execute time (the module JSDoc's recorded contract in io-node-config.zod.ts), so "Requires ..." was a phantom requirement. The descriptor literal carries the same phantom "Requires ..." wording and reaches a different reader — the Studio form author — where it is just as wrong: a half pair saves green, publishes green, and the link silently never renders (#2675's invisible-failure shape).

Why PR #7111 did not sweep it

Suggested shape

Align the two descriptor description strings with the vocabulary PR #7111 borrowed from the module JSDoc ("Only takes effect together with sourceId — a half-specified click-through target is dropped at execute time, so the inbox never renders a dead link."), keeping the descriptor's extra deep-link sentence if wanted. String-only; no key/type/required change, so the form-Zod key-set ledger is untouched.

Refs

#7085 (the spec-face fix, PR #7111), #6762 (class specimen), #2675 (pair-only click-through), #4045 (form/Zod provenance split).

Activity

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

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions