Skip to content

fix(slides): restore update-slide skill guidance - #2227

Merged
fangshuyu-768 merged 1 commit into
mainfrom
codex/slides-update-skill-restore
Aug 7, 2026
Merged

fix(slides): restore update-slide skill guidance#2227
fangshuyu-768 merged 1 commit into
mainfrom
codex/slides-update-skill-restore

Conversation

@tianyouskrrr

@tianyouskrrr tianyouskrrr commented Aug 7, 2026

Copy link
Copy Markdown
Collaborator

Summary

Restore the lark-slides skill's whole-page editing route from the deprecated +replace-pages workflow to +update-slide now that the in-place update path is available. The guidance now makes page and element ID preservation, omitted-element deletion, and the safe read-modify-write workflow explicit for AI agents.

Changes

  • Route whole-page restyling, background changes, element deletion, and multi-page rebuilds through slides +update-slide, while retaining +replace-slide for targeted block edits.
  • Replace the temporary lark-slides-replace-pages.md rollout guidance with a complete lark-slides-update-slide.md reference covering flags, aliases, overwrite semantics, validation, and common errors.
  • Update the edit workflow and main skill routing tables to warn that omitted elements are deleted and to preserve existing IDs when reading and writing a page back.

Test Plan

  • make unit-test
  • git diff --check
  • Cross-checked the documented +update-slide behavior and flags against the existing shortcut implementation and tests.

Related Issues

  • None

Summary by CodeRabbit

  • New Features
    • Added full-page slide updates that preserve slide order and IDs while removing omitted elements.
    • Added support for file, standard input, literal, and wiki-based slide content.
  • Bug Fixes
    • Improved error guidance by distinguishing missing presentations or slides from malformed slide content.
  • Documentation
    • Updated slide-editing workflows, validation guidance, multi-page instructions, previews, versioning, and element ID behavior.
    • Removed outdated full-page replacement guidance.

@github-actions github-actions Bot added the size/M Single-domain feat or fix with limited business impact label Aug 7, 2026
@coderabbitai

coderabbitai Bot commented Aug 7, 2026

Copy link
Copy Markdown

Review Change Stack

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

The Slides workflow replaces full-page +replace-pages guidance with per-page +update-slide calls. It adds command documentation, defines page and element ID behavior, refines error hints, and adds live readback verification.

Changes

Slides full-page editing workflow

Layer / File(s) Summary
Document +update-slide behavior
skills/lark-slides/references/lark-slides-update-slide.md
Adds usage, input methods, replacement semantics, validation, ID handling, linting, responses, and error guidance.
Route editing guidance
skills/lark-slides/SKILL.md, skills/lark-slides/references/lark-slides-edit-workflows.md
Routes broad and multi-page edits to per-page +update-slide calls, updates examples and links, and removes the former +replace-pages workflow.
Refine validation hints
shortcuts/slides/slides_update_slide.go, shortcuts/slides/slides_update_slide_test.go
Distinguishes missing-slide errors from malformed-content errors and adds separate recovery assertions.
Add live update verification
tests/cli_e2e/slides/slides_update_slide_workflow_test.go, tests/cli_e2e/slides/coverage.md
Adds default live coverage for in-place updates, preserved slide IDs, XML readback, and marker replacement.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Possibly related PRs

  • larksuite/cli#2131: Introduces the +update-slide functionality refined by this PR.
  • larksuite/cli#2143: Updates the same command behavior, validation hints, tests, and migration guidance.
  • larksuite/cli#2181: Also transitions Slides documentation from +replace-pages to +update-slide.

Suggested reviewers: ethan-zhx

Sequence Diagram(s)

sequenceDiagram
    participant Test as Live E2E test
    participant CLI as slides +update-slide
    participant Slides as Slides backend
    participant Read as slides +xml-get
    participant Drive as drive +delete

    Test->>CLI: Submit updated slide XML
    CLI->>Slides: Update slide in place
    Slides-->>CLI: Return preserved slide ID
    Test->>Read: Read presentation and slide XML
    Read-->>Test: Return updated markers
    Test->>Drive: Delete test presentation
Loading
🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the main change: restoring +update-slide guidance for Slides.
Description check ✅ Passed The description covers the summary, changes, test plan, and related issues with specific implementation and verification details.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch codex/slides-update-skill-restore

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

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 `@skills/lark-slides/references/lark-slides-update-slide.md`:
- Around line 103-117: Update the 成功输出 example in the update-slide documentation
to match the CLI response shape consumed by the E2E: either wrap the fields in
the full data envelope or explicitly label the JSON as the data payload. Ensure
callers can locate slide_id and revision_id under data.
🪄 Autofix

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: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 22a43a0d-d959-49e3-b13a-3975dbf9bc3a

📥 Commits

Reviewing files that changed from the base of the PR and between be2a96f and be62cfd.

📒 Files selected for processing (4)
  • skills/lark-slides/SKILL.md
  • skills/lark-slides/references/lark-slides-edit-workflows.md
  • skills/lark-slides/references/lark-slides-replace-pages.md
  • skills/lark-slides/references/lark-slides-update-slide.md
💤 Files with no reviewable changes (1)
  • skills/lark-slides/references/lark-slides-replace-pages.md

Comment thread skills/lark-slides/references/lark-slides-update-slide.md
@tianyouskrrr tianyouskrrr self-assigned this Aug 7, 2026
@tianyouskrrr
tianyouskrrr requested review from 1uckypeach and ethan-zhx and removed request for 1uckypeach August 7, 2026 03:55
@github-actions

github-actions Bot commented Aug 7, 2026

Copy link
Copy Markdown

🚀 PR Preview Install Guide

🧰 CLI update

npm i -g https://pkg.pr.new/larksuite/cli/@larksuite/cli@4e7d1ffe0923f2f6632ab94e43583e894498438a

🧩 Skill update

npx skills add larksuite/cli#codex/slides-update-skill-restore -y -g

@codecov

codecov Bot commented Aug 7, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 76.35%. Comparing base (be2a96f) to head (4e7d1ff).
⚠️ Report is 4 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2227   +/-   ##
=======================================
  Coverage   76.34%   76.35%           
=======================================
  Files         991      991           
  Lines      106019   106037   +18     
=======================================
+ Hits        80940    80960   +20     
+ Misses      18944    18942    -2     
  Partials     6135     6135           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@tianyouskrrr
tianyouskrrr force-pushed the codex/slides-update-skill-restore branch from be62cfd to 86be67c Compare August 7, 2026 04:07
@tianyouskrrr tianyouskrrr changed the title docs(slides): restore update-slide skill guidance fix(slides): restore update-slide skill guidance Aug 7, 2026
@coderabbitai

coderabbitai Bot commented Aug 7, 2026

Copy link
Copy Markdown

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 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 `@shortcuts/slides/slides_update_slide.go`:
- Around line 202-206: Update updateSlideInvalidParamHint in
shortcuts/slides/slides_update_slide.go:202-206 to remove the claim that
block_id is never missing and instruct callers to verify --presentation and
--slide-id for missing-page errors. Update the corresponding failed-reason
expectation in shortcuts/slides/slides_update_slide_test.go:191-195 and
invalid-parameter expectation at
shortcuts/slides/slides_update_slide_test.go:508-512 to match the revised hint.

In `@skills/lark-slides/references/lark-slides-update-slide.md`:
- Around line 93-101: Extend the “提交前的版式检查” guidance in the +update-slide
workflow to document post-write validation after a successful full-page rewrite:
read back the full XML, verify the page count and key elements, and execute the
validation checklist defined in the loaded lark-slides/SKILL.md. Keep the
existing preflight lint and warning screenshot guidance unchanged.
🪄 Autofix

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: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 8371dc56-1225-46c1-b59b-c9d3d6deecd2

📥 Commits

Reviewing files that changed from the base of the PR and between be2a96f and 86be67c.

📒 Files selected for processing (7)
  • shortcuts/slides/slides_update_slide.go
  • shortcuts/slides/slides_update_slide_test.go
  • skills/lark-slides/SKILL.md
  • skills/lark-slides/references/lark-slides-edit-workflows.md
  • skills/lark-slides/references/lark-slides-replace-pages.md
  • skills/lark-slides/references/lark-slides-update-slide.md
  • tests/cli_e2e/slides/coverage.md
💤 Files with no reviewable changes (1)
  • skills/lark-slides/references/lark-slides-replace-pages.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • skills/lark-slides/references/lark-slides-edit-workflows.md

Comment thread shortcuts/slides/slides_update_slide.go Outdated
Comment thread skills/lark-slides/references/lark-slides-update-slide.md Outdated
@tianyouskrrr
tianyouskrrr force-pushed the codex/slides-update-skill-restore branch from 86be67c to 2e42e80 Compare August 7, 2026 06:14
@coderabbitai

coderabbitai Bot commented Aug 7, 2026

Copy link
Copy Markdown

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

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 `@skills/lark-slides/references/lark-slides-update-slide.md`:
- Around line 35-39: Update the documentation for the read-modify-write flow
around --revision-id and --tid to state that --revision-id only selects the base
snapshot and does not prevent overwriting later edits. Require a server-side
--tid lock check or an equivalent re-read/rebase precondition when writes must
fail after the page changes, and clarify that sending only these query
parameters is insufficient without that validation.
🪄 Autofix

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: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: c023208e-0f0d-42ba-8e70-d65ef265b1e2

📥 Commits

Reviewing files that changed from the base of the PR and between be2a96f and 2e42e80.

📒 Files selected for processing (7)
  • shortcuts/slides/slides_update_slide.go
  • shortcuts/slides/slides_update_slide_test.go
  • skills/lark-slides/SKILL.md
  • skills/lark-slides/references/lark-slides-edit-workflows.md
  • skills/lark-slides/references/lark-slides-replace-pages.md
  • skills/lark-slides/references/lark-slides-update-slide.md
  • tests/cli_e2e/slides/coverage.md
💤 Files with no reviewable changes (1)
  • skills/lark-slides/references/lark-slides-replace-pages.md
🚧 Files skipped from review as they are similar to previous changes (4)
  • tests/cli_e2e/slides/coverage.md
  • shortcuts/slides/slides_update_slide.go
  • shortcuts/slides/slides_update_slide_test.go
  • skills/lark-slides/references/lark-slides-edit-workflows.md

Comment thread skills/lark-slides/references/lark-slides-update-slide.md Outdated
@tianyouskrrr
tianyouskrrr force-pushed the codex/slides-update-skill-restore branch from 2e42e80 to a5b2276 Compare August 7, 2026 06:39
@coderabbitai

coderabbitai Bot commented Aug 7, 2026

Copy link
Copy Markdown

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

Comment thread tests/cli_e2e/slides/coverage.md Outdated
@tianyouskrrr
tianyouskrrr force-pushed the codex/slides-update-skill-restore branch from a5b2276 to 2e63b16 Compare August 7, 2026 07:14
@coderabbitai

coderabbitai Bot commented Aug 7, 2026

Copy link
Copy Markdown

Note

GitHub couldn't provide a complete incremental comparison for this pull request, so CodeRabbit is performing a full review instead. This review may take a little longer.

@github-actions github-actions Bot added size/L Large or sensitive change across domains or core paths and removed size/M Single-domain feat or fix with limited business impact labels Aug 7, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 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 `@skills/lark-slides/references/lark-slides-update-slide.md`:
- Line 85: Align the `<slide/>` guidance with `detect_blank_slide()` and the
`summary.release_ready` error gate: either document a narrowly scoped exception
for the `blank_slide` error or update the allowed-case wording and lint behavior
so an empty self-closing slide has consistent treatment. Ensure the table and
lint requirements no longer contradict each other.

In `@skills/lark-slides/SKILL.md`:
- Line 111: Update the validation requirement in the slide-editing guidance to
apply after every slides +update-slide call, not only after creation or major
rewrites. Require the same full XML readback, page-count and key-element checks,
and xml_text_overlap_lint.py validation for each update-slide operation.
🪄 Autofix

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: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: aeba9c52-3f02-4dfd-9e99-bd469e07cce3

📥 Commits

Reviewing files that changed from the base of the PR and between 6402080 and 2e63b16.

📒 Files selected for processing (8)
  • shortcuts/slides/slides_update_slide.go
  • shortcuts/slides/slides_update_slide_test.go
  • skills/lark-slides/SKILL.md
  • skills/lark-slides/references/lark-slides-edit-workflows.md
  • skills/lark-slides/references/lark-slides-replace-pages.md
  • skills/lark-slides/references/lark-slides-update-slide.md
  • tests/cli_e2e/slides/coverage.md
  • tests/cli_e2e/slides/slides_update_slide_workflow_test.go
💤 Files with no reviewable changes (1)
  • skills/lark-slides/references/lark-slides-replace-pages.md
🚧 Files skipped from review as they are similar to previous changes (2)
  • shortcuts/slides/slides_update_slide_test.go
  • skills/lark-slides/references/lark-slides-edit-workflows.md

Comment thread skills/lark-slides/references/lark-slides-update-slide.md Outdated
Comment thread skills/lark-slides/SKILL.md Outdated
@tianyouskrrr
tianyouskrrr force-pushed the codex/slides-update-skill-restore branch 2 times, most recently from 825ac87 to a7b9a95 Compare August 7, 2026 07:46
Comment thread skills/lark-slides/references/lark-slides-update-slide.md Outdated
@tianyouskrrr
tianyouskrrr force-pushed the codex/slides-update-skill-restore branch from a7b9a95 to 4e7d1ff Compare August 7, 2026 08:13

@fangshuyu-768 fangshuyu-768 left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Re-reviewed at 4e7d1ff. All actionable findings are resolved, the required live update-slide E2E ran successfully, and all checks pass.

@fangshuyu-768
fangshuyu-768 merged commit bc0ba22 into main Aug 7, 2026
29 checks passed
@fangshuyu-768
fangshuyu-768 deleted the codex/slides-update-skill-restore branch August 7, 2026 08:36
@liangshuo-1 liangshuo-1 mentioned this pull request Aug 7, 2026
3 tasks
tianyouskrrr added a commit that referenced this pull request Aug 10, 2026
… changes

Two follow-ups to #2227's restoration of the +update-slide route.

1. Generalize the whole-page validation gate. The validation CRITICAL in
   SKILL.md and the migrated workflow/validation-xml.md are
   command-agnostic quality gates keyed on the "whole-page write-back"
   action, not on any single shortcut. #2227 hardcoded +update-slide
   into them, reintroducing the special-casing that #2143 avoided.
   Rephrase back to the behavior ("整页写回") so the gate stays bound to
   the action rather than the currently-routed command. The lint CRITICAL
   keeps its explicit command list unchanged — it has enumerated the
   whole-page XML entry points since the replace-pages era, so it is not
   the special-case introduced by #2227.

2. Revert two unrelated example edits carried by #2227:
   - SKILL.md changed only the /wiki/ example domain to xxx.feishu.cn
     while the /slides/ row kept example.larkoffice.com, leaving two
     domains in one table. Restore the consistent domain and the
     <wiki_url> placeholder.
   - The +replace-slide batch --parts JSON was collapsed onto one line.
     Restore the multi-line form for readability.

Documentation only; no behavior change.
tianyouskrrr added a commit that referenced this pull request Aug 10, 2026
Generalize the whole-page validation gate so it is keyed on the action,
not on a single shortcut name.

The validation CRITICAL in SKILL.md and the migrated
workflow/validation-xml.md are command-agnostic quality gates: they
apply to the "whole-page write-back" action regardless of which shortcut
performs it. #2227 hardcoded +update-slide into them, reintroducing the
special-casing that #2143 avoided. Rephrase back to the behavior
("整页写回") so the gate stays bound to the action rather than the
currently-routed command.

The lint CRITICAL keeps its explicit command list unchanged — it has
enumerated the whole-page XML entry points since the replace-pages era,
so it is not a special-case introduced by #2227.

The /wiki/ example URL and the +replace-slide single-line --parts JSON
introduced by #2227 are left as-is: the quality-gate harness executes
skill examples under --dry-run, so the placeholder <wiki_url> fails the
wiki token length check and a multi-line single-quoted --parts is not
parseable. Both current forms are required to pass the gate.

Documentation only; no behavior change.
tianyouskrrr added a commit that referenced this pull request Aug 10, 2026
Normalize deterministic +replace-slide part aliases (replace→block_replace,
target_id→block_id, and payload field folding), and reject semantically
different actions up front.

Point whole-page actions at +update-slide now that it is GA:
- page_replace / slide_replace recovery guidance and the reference error
  table now direct callers to `slides +update-slide` (in-place whole-page
  rewrite) instead of the deprecated +replace-pages.
- drop the +replace-pages reference doc, completing the #2227 deprecation
  (the command stays; its deprecation signal is carried by --help and the
  output JSON `deprecated` field).

Generalize whole-page validation gating to the behavior rather than a
command name (SKILL.md, workflow/validation-xml.md): "整页写回后" instead of
"每次通过 +update-slide 整页写回后". Folds in PR #2255.
tianyouskrrr added a commit that referenced this pull request Aug 10, 2026
Normalize deterministic +replace-slide part aliases (replace→block_replace,
target_id→block_id, and payload field folding), and reject semantically
different actions up front.

Point whole-page actions at +update-slide now that it is GA:
- page_replace / slide_replace recovery guidance and the reference error
  table now direct callers to `slides +update-slide` (in-place whole-page
  rewrite) instead of the deprecated +replace-pages.
- drop the +replace-pages reference doc, completing the #2227 deprecation
  (the command stays; its deprecation signal is carried by --help and the
  output JSON `deprecated` field).

Generalize whole-page validation gating to the behavior rather than a
command name (SKILL.md, workflow/validation-xml.md): "整页写回后" instead of
"每次通过 +update-slide 整页写回后". Folds in PR #2255.
tianyouskrrr added a commit that referenced this pull request Aug 10, 2026
Normalize deterministic +replace-slide part aliases (replace→block_replace,
target_id→block_id, and payload field folding), and reject semantically
different actions up front.

Point whole-page actions at +update-slide now that it is GA:
- page_replace / slide_replace recovery guidance and the reference error
  table now direct callers to `slides +update-slide` (in-place whole-page
  rewrite) instead of the deprecated +replace-pages.
- drop the +replace-pages reference doc, completing the #2227 deprecation
  (the command stays; its deprecation signal is carried by --help and the
  output JSON `deprecated` field).

Generalize whole-page validation gating to the behavior rather than a
command name (SKILL.md, workflow/validation-xml.md): "整页写回后" instead of
"每次通过 +update-slide 整页写回后". Folds in PR #2255.
tianyouskrrr added a commit that referenced this pull request Aug 10, 2026
Normalize deterministic +replace-slide part aliases (replace→block_replace,
target_id→block_id, and payload field folding), and reject semantically
different actions up front.

Point whole-page actions at +update-slide now that it is GA:
- page_replace / slide_replace recovery guidance and the reference error
  table now direct callers to `slides +update-slide` (in-place whole-page
  rewrite) instead of the deprecated +replace-pages.
- drop the +replace-pages reference doc, completing the #2227 deprecation
  (the command stays; its deprecation signal is carried by --help and the
  output JSON `deprecated` field).

Generalize whole-page validation gating to the behavior rather than a
command name (SKILL.md, workflow/validation-xml.md): "整页写回后" instead of
"每次通过 +update-slide 整页写回后". Folds in PR #2255.
tianyouskrrr added a commit that referenced this pull request Aug 10, 2026
Normalize deterministic +replace-slide part aliases (replace→block_replace,
target_id→block_id, and payload field folding), and reject semantically
different actions up front.

Point whole-page actions at +update-slide now that it is GA:
- page_replace / slide_replace recovery guidance and the reference error
  table now direct callers to `slides +update-slide` (in-place whole-page
  rewrite) instead of the deprecated +replace-pages.
- drop the +replace-pages reference doc, completing the #2227 deprecation
  (the command stays; its deprecation signal is carried by --help and the
  output JSON `deprecated` field).

Generalize whole-page validation gating to the behavior rather than a
command name (SKILL.md, workflow/validation-xml.md): "整页写回后" instead of
"每次通过 +update-slide 整页写回后". Folds in PR #2255.
tianyouskrrr added a commit that referenced this pull request Aug 10, 2026
Normalize deterministic +replace-slide part aliases (replace→block_replace,
target_id→block_id, and payload field folding), and reject semantically
different actions up front.

Point whole-page actions at +update-slide now that it is GA:
- page_replace / slide_replace recovery guidance and the reference error
  table now direct callers to `slides +update-slide` (in-place whole-page
  rewrite) instead of the deprecated +replace-pages.
- drop the +replace-pages reference doc, completing the #2227 deprecation
  (the command stays; its deprecation signal is carried by --help and the
  output JSON `deprecated` field).

Generalize whole-page validation gating to the behavior rather than a
command name (SKILL.md, workflow/validation-xml.md): "整页写回后" instead of
"每次通过 +update-slide 整页写回后". Folds in PR #2255.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size/L Large or sensitive change across domains or core paths

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants