You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
cloud: the AI tool name action_<bare> carries no object, so two packages' same-named object-bound actions collide (bare-name phase 3, item 14 condition) #31515
Filing gate: ② execution of a maintainer ruling. This is item 14 of the bare-name phase 3 evaluation (#30806). The maintainer exempted object-bound actions and hooks from the namespace-prefix rule, with the condition that this one measured clash is fixed on the cloud side. ⛔ Not a claim.
Reader: the domain:cloud lane (repo cloud). Parked per the 2026-10-26 ruling for cloud-side cards filed from this repo.
Dedupe (open AND closed): action_ tool name object, AI tool name action bare → #30806 only.
reach: every hosted environment whose AI tool list includes two packages' object-bound actions that share a short name on different objects.
class: a · type: Bug
Grade: p2, self-graded by the server seat (Ruling-ref: 「定级你可以自己决定」). It is the condition attached to a maintainer exemption.
What is wrong (measured by the #30806 plan review, cloud side, read not run here)
Cloud's AI tool name for an action is action_ plus the bare action name. Two object-bound actions with the same short name on different objects (for example convert_lead on two packages' objects) produce one tool name.
Expected
The tool name carries the object, for example action_OBJECT_NAME or an equivalent stable spelling. Two same-named object-bound actions on different objects produce two tools.
Pins: two packages, one short action name on two objects, two distinct tools. CONTROL: a top-level action keeps its tool name, or the change of name is named in the changelog.
Ruling-ref: decision card cmsg_01TenzsRopZj4jMbvjX8uz1XSX3HFEWDwB1RTUxK3vFF8J, tapped A at 2026-11-08T12:37:10Z. Related: #30806, #30798.
Re-read against #30806's new direction · 2026-11-08T13:16Z
⛔ Not a claim. Phase 3 now turns to package-scoped addressing (ruling record 6721941146 on #30806, design card #31527). Item 14's exemption is moot because no behavioural name is rewritten. The clash this card names is still real: action_ plus a bare name collides for two packages' same-named actions. The tool name's spelling now follows the address #31527 defines, either (package, name) or the object. The card stays parked until that design lands.
The dispatched thread built it in cloud on this branch, where the name is minted, and did not edit the framework. The seat's ACCEPT is on the PR at head 711427d. The PR is readied and auto-merge is armed. This card closes by hand on merge, because the PR says Refs.
objectstack-ai/cloud PR #3846 merged as 6c67dab19. An object-bound action's AI tool is now action_<object>__<action>, so two packages' same-named actions on different objects give two tools. A top-level action keeps action_<action>. Old names still resolve in skill claims, blockedTopics and stored pending rows. This closes the condition attached to #30806 item 14 (ruling A). Closed by hand because the PR says Refs, and pm:dispatched is dropped. Two follow-ups are unlocked now: #31531 (the framework lint and spec spelling, domain:devx) and objectstack-ai/hotcrm#2422 (docs).
Activity
objectstack-fleet commentedon Nov 8, 2026
domain:server#5 · os-project-manager · session_01FEkQ5o8PE7ZtVjcor51wBZ
Re-read against #30806's new direction · 2026-11-08T13:16Z
⛔ Not a claim. Phase 3 now turns to package-scoped addressing (ruling record 6721941146 on #30806, design card #31527). Item 14's exemption is moot because no behavioural name is rewritten. The clash this card names is still real:
action_plus a bare name collides for two packages' same-named actions. The tool name's spelling now follows the address #31527 defines, either (package, name) or the object. The card stays parked until that design lands.Generated by Claude Code
objectstack-fleet commentedon Nov 8, 2026
repo:cloud#3 · os-zhuang · session_01QUs3BvRcDHXqRU4TSVE4u6
Claim: #31515 · objectstack-ai/cloud branch
claude/project-thread-k06szm· PR objectstack-ai/cloud#3846 · 2026-11-08T13:23ZThe dispatched thread built it in cloud on this branch, where the name is minted, and did not edit the framework. The seat's ACCEPT is on the PR at head
711427d. The PR is readied and auto-merge is armed. This card closes by hand on merge, because the PR saysRefs.objectstack-fleet commentedon Nov 8, 2026
repo:cloud#3 · os-zhuang · session_01QUs3BvRcDHXqRU4TSVE4u6
Landed · 2026-11-08T14:30Z
objectstack-ai/cloud PR #3846 merged as
6c67dab19. An object-bound action's AI tool is nowaction_<object>__<action>, so two packages' same-named actions on different objects give two tools. A top-level action keepsaction_<action>. Old names still resolve in skill claims,blockedTopicsand stored pending rows. This closes the condition attached to #30806 item 14 (ruling A). Closed by hand because the PR saysRefs, andpm:dispatchedis dropped. Two follow-ups are unlocked now: #31531 (the framework lint and spec spelling, domain:devx) and objectstack-ai/hotcrm#2422 (docs).