docs(runbook): ADDITIONS-LOCK style-pass clause (#1542)#1549
Conversation
STRUCTURE-LOCK protects authored structure but never forbade INVENTING new objects — the tavern style pass painted benches with no authored cells, so players walked through solid-looking furniture (owner playtest #8). Every style-pass prompt now carries the additions-lock; enforcement lands with the visual journey's inverse-coherence gate (#1540).
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
📜 Recent review details⏰ Context from checks skipped due to timeout. (7)
🧰 Additional context used📓 Path-based instructions (1)**/*📄 CodeRabbit inference engine (AGENTS.md)
Files:
🔇 Additional comments (1)
📝 WalkthroughPriority Level: P4/NIT No merge-blocking issues found. The documentation-only change accurately defines ADDITIONS-LOCK and distinguishes current inverse-coherence/CLEAN% enforcement from future hard no-promote integration. Optional: retain the explicit tracking references for the hard no-promote wiring so readers do not interpret the current checks as automatic promotion enforcement. Not required for merge. WalkthroughThe room pipeline runbook adds a mandatory ChangesStyle-pass prompt restrictions
Estimated code review effort: 1 (Trivial) | ~3 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
evaOS review status: completedPR: #1549 - docs(runbook): ADDITIONS-LOCK style-pass clause (#1542) evaOS review completed for this PR head. Automation note: agents should wait for this comment to reach PR URL: #1549 Review URL: #1549 (review) |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In `@docs/ROOM-PIPELINE-RUNBOOK.md`:
- Around line 221-227: The ADDITIONS-LOCK requirement is not enforced for
unmanifested painted objects. Extend qa/check_grid_paint_coherence.py and the
gate_room_recipes() path to detect plate-wide furniture or object additions on
authored-walkable cells, not only entries in manifest["props"], and flag them as
non-promotable; otherwise revise the runbook wording to claim only authored-prop
coherence.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: ASSERTIVE
Plan: Pro Plus
Run ID: 799ae2a6-0908-459e-a525-07931cd42978
📒 Files selected for processing (1)
docs/ROOM-PIPELINE-RUNBOOK.md
📜 Review details
⏰ Context from checks skipped due to timeout. (12)
- GitHub Check: CodeRabbit
- GitHub Check: Analyze (python)
- GitHub Check: Analyze (actions)
- GitHub Check: Analyze (javascript-typescript)
- GitHub Check: test
- GitHub Check: viewer-tests
- GitHub Check: qa-release-gate-tests
- GitHub Check: Analyze (csharp)
- GitHub Check: Analyze (python)
- GitHub Check: Analyze (javascript-typescript)
- GitHub Check: viewer-tests
- GitHub Check: test
🧰 Additional context used
📓 Path-based instructions (1)
**/*
📄 CodeRabbit inference engine (AGENTS.md)
**/*: Treat/Users/lume/WorldOSas the canonical local Mac app/private-art checkout for WorldOS GUI and native-app testing.
Use/Volumes/LEXAR/Codexfor Codex artifacts, scratch files, screenshots, reports, and downloaded CI/VM artifacts.
Before install, build, or test commands, verifypwd; GUI/native app runs must use/Users/lume/WorldOSor an approved same-disk worktree configuration.
Use thecodex/prefix for new branches unless instructed otherwise.
Files:
docs/ROOM-PIPELINE-RUNBOOK.md
| - **ADDITIONS-LOCK (#1542, owner playtest #8)** — "add NO new furniture, props, objects, walls, | ||
| or blocking elements of any kind; enrich only the SURFACES of what already exists (materials, | ||
| wear, lighting, small loose scatter like straw/pebbles that no one could collide with)". | ||
| STRUCTURE-LOCK protects what's authored; it never forbade *inventing* — the tavern's painted | ||
| benches had no cells, so players walked through solid-looking furniture. Every style-pass prompt | ||
| MUST carry this clause; the visual journey's inverse-coherence check (#1540) is the enforcement | ||
| gate (painted-object edges on authored-walkable cells ⇒ FLAG, no promote). |
There was a problem hiding this comment.
🗄️ Data Integrity & Integration | 🟠 Major | 🏗️ Heavy lift
🧩 Analysis chain
🏁 Script executed:
#!/bin/bash
rg -n -C4 \
'1540|inverse.?coherence|unmanifest|painted.?object|walkable cells|no.?promote' \
qa extensions docsRepository: electricsheephq/WorldOS
Length of output: 9424
🏁 Script executed:
#!/bin/bash
set -euo pipefail
pwd
printf '\n== Files ==\n'
git ls-files | rg '^(qa/|docs/|extensions/|servers/)' | rg '1540|coherence|paint|grid|manifest|room|pipeline|runbook|journey|sweep|walk'
printf '\n== Search for detector/gate symbols ==\n'
rg -n -C4 \
'1540|inverse.?coherence|painted.?object|unmanifest|manifest\["props"\]|gate_room_recipes|grid_paint_coherence|no.?promote|FLAG' \
qa docs extensions servers
printf '\n== Candidate implementation file sizes ==\n'
for f in qa/check_grid_paint_coherence.py qa/journey_click_sweep.py qa/gate_room_recipes.py; do
if [ -f "$f" ]; then wc -l "$f"; fi
doneRepository: electricsheephq/WorldOS
Length of output: 50382
🏁 Script executed:
#!/bin/bash
set -euo pipefail
pwd
printf '\n== check_grid_paint_coherence.py ==\n'
wc -l qa/check_grid_paint_coherence.py
sed -n '1,260p' qa/check_grid_paint_coherence.py
printf '\n== tests for grid paint coherence ==\n'
wc -l qa/test_grid_paint_coherence.py
sed -n '1,260p' qa/test_grid_paint_coherence.py
printf '\n== promote / gate usages ==\n'
rg -n -C3 'check_grid_paint_coherence|gate_room_recipes|grid_paint_coherence|inverse.?coherence|no.?promote|FLAG' qa docs extensions serversRepository: electricsheephq/WorldOS
Length of output: 50382
ADDITIONS-LOCK is not enforced here — qa/check_grid_paint_coherence.py only localizes props already listed in manifest["props"] against the plate; gate_room_recipes() reuses that same per-manifest check. It never scans for extra painted furniture/objects that are absent from the manifest, so the tavern-bench case can still slip through while the runbook says “no promote.” Either wire in a plate-wide detector for unmanifested objects on authored-walkable cells, or narrow the wording to “authored-prop coherence only.” Confidence: 95%.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
In `@docs/ROOM-PIPELINE-RUNBOOK.md` around lines 221 - 227, The ADDITIONS-LOCK
requirement is not enforced for unmanifested painted objects. Extend
qa/check_grid_paint_coherence.py and the gate_room_recipes() path to detect
plate-wide furniture or object additions on authored-walkable cells, not only
entries in manifest["props"], and flag them as non-promotable; otherwise revise
the runbook wording to claim only authored-prop coherence.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 18001146df
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| MUST carry this clause; the visual journey's inverse-coherence check (#1540) is the enforcement | ||
| gate (painted-object edges on authored-walkable cells ⇒ FLAG, no promote). |
There was a problem hiding this comment.
Mark the inverse-coherence gate as pending until it exists
This runbook now treats the visual journey inverse-coherence check as an enforcement gate, but in this checkout a repo-wide search for inverse[-_ ]coherence, painted-object edges, and authored-walkable only finds this new paragraph, and qa/journey_eval.py only runs VQA over captured frames rather than checking painted-object edges on walkable cells. Since this is the promotion recipe, readers can believe ADDITIONS-LOCK is mechanically gated and promote with no such check; either mark this as a pending #1540 follow-up or add the actual command before making FLAG, no promote normative.
Useful? React with 👍 / 👎.
| benches had no cells, so players walked through solid-looking furniture. Every style-pass prompt | ||
| MUST carry this clause; the visual journey's inverse-coherence check (#1540) is the enforcement |
There was a problem hiding this comment.
Update the canonical prompt source before requiring this clause
This says every style-pass prompt must carry ADDITIONS-LOCK, but the same step still tells operators to reproduce the run by submitting qa/evidence/plate-sprint/camp-armB/style_pass_prompt_winning.txt with only STRUCTURE-LOCK + DIMETRIC-LOCK intact, and the machine-readable style-pass record in extensions/renderers/shared/room_recipes.json still exposes only those two clauses. In the common path where someone copies the cited prompt/recipe rather than manually composing from this paragraph, the new anti-furniture guard is omitted, so the playtest #8 regression can recur despite following the runbook.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Walkthrough
PR: #1549 - docs(runbook): ADDITIONS-LOCK style-pass clause (#1542)
Head: 18001146df8101675c27a0a883cc2bc348c37175 into main. Review event: COMMENT.
Provider: GLM/Z.ai through ZCode (zcode-glm, zcode, model GLM-5.2).
Estimated review effort: 1/5 (~10 min)
Changed Files
| File | Status | Churn | Purpose | Risk |
|---|
Review Signal
No validated inline findings.
Dropped findings before posting: 1. High-severity findings: 0.
Risk Taxonomy
No finding categories.
Validation and Proof
Documentation-only changed surface; runtime execution proof is not required by default.
- recommended: Docs/readme review - All reviewed files are documentation paths. Proof: PR description notes the docs intent.
- not_applicable: Unity editor or Play Mode smoke - WorldOS repo profile implies Unity runtime risk. Proof: Unity editor smoke; Play Mode log; scene/prefab screenshot or recording.
Proof status: not_applicable - No required behavior proof selected for this changed surface.
Profile validation hints: Prefer correctness, persistence, CI, release, and regression findings over style-only feedback.
Profile proof expectations: Look for Unity editor, play-mode, fixture, or focused smoke evidence when runtime behavior changes.
Related Context
Related issues/PRs: #1542, #1540, #8.
Suggested labels: none.
Suggested reviewers: none from current metadata.
Review Settings Preview
- Profile: assertive
- Enabled sections: Review summary (inline_review); Walkthrough (inline_review); Changed-files table (walkthrough); Effort estimate (walkthrough); Related issues/PRs (walkthrough); Suggested labels (suggestion_only); Review status comment (sticky_status)
- Path instructions:
Assets/**- Prioritize scene, prefab, save-state, asset-reference, and gameplay regressions. - Path instructions:
ProjectSettings/**- Treat build, platform, input, graphics, and release behavior changes as high risk. - Label suggestions: unity, gameplay, regression-hardening
- Reviewer suggestions: none
- Suggestion behavior: suggestions only; labels and reviewers are not auto-applied.
- Roadmap-only settings: auto-apply labels; auto-request reviewers; required status checks
Pre-merge checklist
- Inline comments target current RIGHT-side diff lines.
- No secret-like content survived into posted inline comments.
- REQUEST_CHANGES is only used when eligible P0/P1 findings survive validation.
- Required behavior proof is present or not applicable.
- Labels and reviewers are suggestions only; the bot did not auto-apply them.
|
@coderabbitai review — reworded: the inverse-coherence check flags + counts against CLEAN% today; the hard promote.py no-promote wiring is explicitly tracked on #1542/#1553 rather than claimed as existing. |
🧩 Analysis chain🏁 Script executed: #!/bin/bash
fd ROOM-PIPELINE-RUNBOOK.md
echo "---"
fd ROOM-PIPELINE-RUNBOOK.md --exec sed -n '1,400p' {}Length of output: 27270
The reworded clause checks out against the rest of the runbook — no overclaim, no internal contradiction:
No implementation-path defects to flag — this is a documentation-only change (+7/-0) and the text is internally consistent with the rest of the runbook's described mechanisms. Good to go. ✅ Action performedReview finished.
|
evaOS review status: completedPR: #1549 - docs(runbook): ADDITIONS-LOCK style-pass clause (#1542) evaOS review completed for this PR head. Automation note: agents should wait for this comment to reach PR URL: #1549 Review URL: #1549 (review) |
There was a problem hiding this comment.
Walkthrough
PR: #1549 - docs(runbook): ADDITIONS-LOCK style-pass clause (#1542)
Head: c9d384d085eba203abb0e30aa176640948bc9bb9 into main. Review event: COMMENT.
Provider: GLM/Z.ai through ZCode (zcode-glm, zcode, model GLM-5.2).
Estimated review effort: 1/5 (~10 min)
Changed Files
| File | Status | Churn | Purpose | Risk |
|---|
Review Signal
No validated inline findings.
Dropped findings before posting: 0. High-severity findings: 0.
Risk Taxonomy
No finding categories.
Validation and Proof
Documentation-only changed surface; runtime execution proof is not required by default.
- recommended: Docs/readme review - All reviewed files are documentation paths. Proof: PR description notes the docs intent.
- not_applicable: Unity editor or Play Mode smoke - WorldOS repo profile implies Unity runtime risk. Proof: Unity editor smoke; Play Mode log; scene/prefab screenshot or recording.
Proof status: not_applicable - No required behavior proof selected for this changed surface.
Profile validation hints: Prefer correctness, persistence, CI, release, and regression findings over style-only feedback.
Profile proof expectations: Look for Unity editor, play-mode, fixture, or focused smoke evidence when runtime behavior changes.
Related Context
Related issues/PRs: #1542, #1540, #8.
Suggested labels: none.
Suggested reviewers: none from current metadata.
Review Settings Preview
- Profile: assertive
- Enabled sections: Review summary (inline_review); Walkthrough (inline_review); Changed-files table (walkthrough); Effort estimate (walkthrough); Related issues/PRs (walkthrough); Suggested labels (suggestion_only); Review status comment (sticky_status)
- Path instructions:
Assets/**- Prioritize scene, prefab, save-state, asset-reference, and gameplay regressions. - Path instructions:
ProjectSettings/**- Treat build, platform, input, graphics, and release behavior changes as high risk. - Label suggestions: unity, gameplay, regression-hardening
- Reviewer suggestions: none
- Suggestion behavior: suggestions only; labels and reviewers are not auto-applied.
- Roadmap-only settings: auto-apply labels; auto-request reviewers; required status checks
Pre-merge checklist
- Inline comments target current RIGHT-side diff lines.
- No secret-like content survived into posted inline comments.
- REQUEST_CHANGES is only used when eligible P0/P1 findings survive validation.
- Required behavior proof is present or not applicable.
- Labels and reviewers are suggestions only; the bot did not auto-apply them.
First half of #1542 (recipe law; the enforcement gate rides #1540's inverse-coherence check). Root cause from playtest #8: the style pass INVENTED benches/furniture with no authored cells — STRUCTURE-LOCK guards what exists, it never forbade additions. The clause forbids new objects of any kind; surface enrichment only. Docs-only — the defect frames live on the M-ALIGN issues.