Skip to content

fix(catalog): accept entity ids in texture setup contracts - #243

Merged
Teakowa merged 7 commits into
mainfrom
codex/opy-texture-contract
Sep 20, 2026
Merged

Teakowa merged 7 commits into
mainfrom
codex/opy-texture-contract

Conversation

@e54-bot

@e54-bot e54-bot commented Sep 19, 2026

Copy link
Copy Markdown
Contributor

Summary

  • allow EntityId in Start Forcing Dummy Bot Name and First Of where the pinned OverPy texture setup uses Last Created Entity
  • allow the canonical boolean count form used by String Slice(..., True)
  • add contextual validation coverage and update generated catalog identity/documentation

Context

opy-rs#330 is lowering a pinned OverPy 9.7.10 texture/entity setup. The owner-side catalog previously rejected the pinned Last Created Entity and boolean slice-count forms, preventing native semantic-WIR comparison.

Refs wrightkit/opy-rs#330

@Teakowa Teakowa left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One blocking contract-scope issue.

Comment thread crates/workshop-rs/src/catalog/data/catalog.json Outdated
@e54-bot

e54-bot commented Sep 19, 2026

Copy link
Copy Markdown
Contributor Author

Follow-up for opy-rs#330: the canonical catalog fix now includes EntityId acceptance for Start Forcing Dummy Bot Name, First Of, String Split, and String Replace; Boolean String Slice counts; Boolean Create Dummy Bot slots; and preservation of Empty Array split separators. Owner validation passed full workspace tests, catalog check, fmt, and clippy. Latest owner commit: 8493e8a.

@Teakowa Teakowa left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Previous blocking finding remains unresolved: the latest patch still widens String Replace Search to EntityId and the regression still invents an EntityId Search value. The two new follow-up changes (boolean Create Dummy Bot slot and preserving Empty Array as the split separator) are consistent with the pinned OverPy output and do not add another blocker. Please either provide an independent Workshop/reference case for EntityId Search or revert only that Search widening and make the regression match the pinned output.

Keep EntityId support limited to the replacement value and align the regression with the pinned Workshop shape.
…tract

# Conflicts:
#	crates/workshop-rs/src/catalog/data/catalog.json
#	crates/workshop-rs/tests/identity.rs
@e54-bot

e54-bot commented Sep 20, 2026

Copy link
Copy Markdown
Contributor Author

Addressed the blocking review finding in 2a28990 and pushed with merge-base update 60d6d8a.

  • Restored String Replace Search to String|Array; EntityId remains only on Replacement.
  • Updated the contextual regression to use String Split(...) as the Search array and First Of(Last Created Entity) as Replacement.
  • Regenerated the catalog digest and kept the refactor: adopt tests-first Workshop verification #242 provenance updates while resolving the branch conflict.
  • Local verification: fmt, clippy, catalog check, and cargo test --workspace --all-targets (329 passed, 3 ignored).

Ready for re-review.

@Teakowa Teakowa left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@Teakowa
Teakowa merged commit a104cf7 into main Sep 20, 2026
5 checks passed
@Teakowa
Teakowa deleted the codex/opy-texture-contract branch September 20, 2026 05:03
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants