Skip to content

docs(base): refine record cell value guidance#636

Merged
zgz2048 merged 3 commits intolarksuite:mainfrom
zgz2048:codex/refactor-base-cell-docs
Apr 23, 2026
Merged

docs(base): refine record cell value guidance#636
zgz2048 merged 3 commits intolarksuite:mainfrom
zgz2048:codex/refactor-base-cell-docs

Conversation

@zgz2048
Copy link
Copy Markdown
Collaborator

@zgz2048 zgz2048 commented Apr 23, 2026

Summary

Consolidate Base record write guidance around lark-base-cell-value.md as the source of truth for +record-upsert, +record-batch-create, and +record-batch-update.

The CLI keeps using the shared JSON object parsing path for +record-upsert; this PR updates help/docs/tests to prefer top-level Map<FieldNameOrID, CellValue> inputs and removes stale {fields} wrapper guidance from the upsert path.

Changes

  • Add lark-base-cell-value.md and update record command references to reuse it.
  • Update +record-upsert help text and tests to use top-level field-map input.
  • Remove unused record input normalization helper that wrapped records in {fields}.
  • Tighten record docs for select, datetime, user, link, readonly fields, batch limits, and attachment routing.

Test Plan

  • go test ./shortcuts/base
  • make unit-test
  • make build

Agent Regression

  • Built current workspace binary: ./lark-cli version v1.0.12-62-g0c2e3b4.
  • Spawned 4 black-box subagents constrained to current repo ./lark-cli and current skills/lark-base docs only; they did not read old global skills or source code.
  • Covered live record flows: create, update, get, list, search, delete, batch create, batch update, share/read paths where applicable, and attachment upload via +record-upload-attachment.
  • Covered CellValue types: text, phone, url, email, barcode, number, currency, progress/percentage, rating, checkbox, datetime/date, single select, multi select, user single/multi, location, link/关联记录, formula/lookup readonly behavior, created/updated system fields, and attachment upload.
  • Follow-up manual live checks confirmed formula/lookup/system fields return ignored_fields/READONLY instead of being updated, datetime CellValue accepts YYYY-MM-DD HH:mm:ss, and stdin is not documented as a supported interface.
  • Observed platform/CLI-expected behavior: unknown select options may be auto-created, missing field names return not_found with available-field hints, deleting the last table is blocked, and concurrent Base creation can hit API method limiting.
  • Cleanup completed for test records/tables; temporary Bases retain only default/placeholder tables because the CLI has no Base delete command.

Related Issues

  • None

Summary by CodeRabbit

  • Documentation

    • Replaced the old record-value spec with a new CellValue specification; updated all Base command docs, examples, tips, and references to reference CellValue. Standardized CLI examples to use clear placeholders, clarified --json outer-shape rules, attachment/upload flow, read-only/ignored-fields behavior, cell encodings, and lowered documented per-batch limit from 500 to 200.
  • Tests

    • Strengthened tests to assert requests use top-level field mappings (no "fields" wrapper) and added a positive validation case for record upserts.

1. Reject top-level fields wrappers in base +record-upsert input and keep request bodies as field maps.

2. Replace record-upsert tests with Map<FieldNameOrID, CellValue> input and assert the outgoing body has no fields wrapper.

3. Consolidate Base record value documentation around lark-base-cell-value and update record command references.
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Apr 23, 2026

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

This PR replaces the old fields-wrapped record JSON with top-level FieldName->CellValue maps, removes the local record normalizer, updates tests to assert request payload shape, and adds a canonical lark-base-cell-value.md spec while updating many record-related docs and CLI examples.

Changes

Cohort / File(s) Summary
Tests & Assertions
shortcuts/base/base_execute_test.go, shortcuts/base/base_shortcuts_test.go, shortcuts/base/helpers_test.go
Tests register named HTTP stubs, capture/decode outgoing request bodies, assert top-level Name: "Alice" (no fields wrapper), add a positive Validate case, and stop relying on the removed normalizer by passing record maps directly.
Helper Removal
shortcuts/base/helpers.go
Removes the normalizeRecordInputs function that parsed/normalized --records JSON and extracted fields wrappers.
CLI Help / Flag Text
shortcuts/base/record_batch_create.go, shortcuts/base/record_batch_update.go, shortcuts/base/record_upsert.go
Updates Tips and --json flag descriptions to reference lark-base-cell-value.md and describe Map<FieldNameOrID, CellValue> as the expected JSON shape.
New CellValue Spec
skills/lark-base/references/lark-base-cell-value.md
Adds the canonical CellValue specification: top-level shapes for upsert/batch commands, per-field encodings, clearing semantics, read-only-field guidance, attachment handling, and examples.
Record Command Docs & Examples
skills/lark-base/references/...record-*.md (multiple files)
Standardizes CLI examples to use placeholders (<base_token>, <table_id>, <record_id>, etc.), updates --json docs to point to the CellValue spec, condenses guidance, and adjusts batch limits/notes.
Domain & Skill Docs
skill-template/domains/base.md, skills/lark-base/SKILL.md, skills/lark-base/references/lark-base-record.md
Repoints previous record-value references to lark-base-cell-value.md, removes identity-related personnel guidance, and updates workflow/error guidance accordingly.
Deprecated Spec Removal
skills/lark-base/references/lark-base-shortcut-record-value.md
Deletes the legacy record-value spec that described the old fields-wrapped JSON format.
Minor Text Edits
skills/lark-base/references/... (various)
Replace concrete example IDs with placeholders, remove deprecated references, tighten wording, and update per-batch limit messaging.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Suggested reviewers

  • kongenpei
  • zhouyue-bytedance

Poem

🐰 I hopped through tests and docs today,

Top-level maps now lead the way.
CellValue tidy, neat and bright,
No more wrappers in our sight.
Hop — the CLI feels just right!

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.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 directly references the primary change: refining record cell value guidance by consolidating documentation around the new lark-base-cell-value.md source.
Description check ✅ Passed The description includes all required template sections: a clear Summary, comprehensive Changes list with specific file modifications, and a detailed Test Plan with verification steps including unit tests, manual testing, agent regression testing, and edge case coverage.
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.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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 and usage tips.

@github-actions github-actions Bot added domain/base PR touches the base domain size/L Large or sensitive change across domains or core paths labels Apr 23, 2026
1. Remove the dedicated record-upsert parser and restore the shared record JSON object validation path.

2. Keep record-upsert dry-run and execution as raw JSON object passthrough.

3. Drop the test assertion that rejected a top-level fields key for record-upsert.
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 23, 2026

🚀 PR Preview Install Guide

🧰 CLI update

npm i -g https://pkg.pr.new/larksuite/cli/@larksuite/cli@07a97033dc10f8fb82c5c2fa446a55e0f954607f

🧩 Skill update

npx skills add zgz2048/cli#codex/refactor-base-cell-docs -y -g

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🧹 Nitpick comments (2)
shortcuts/base/base_shortcuts_test.go (1)

255-270: Positive-case coverage for field-map input LGTM.

The added assertion validates the new top-level Map<FieldNameOrID, CellValue> contract for +record-upsert. Consider also adding a negative case asserting that a {"fields": {...}} wrapper is rejected (or explicitly accepted as raw JSON per the second commit) to lock in the documented behavior — the PR description mentions the rejection test was later dropped, so a clear positive/negative boundary test would prevent regressions.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@shortcuts/base/base_shortcuts_test.go` around lines 255 - 270, Add a negative
test that ensures the top-level Map<FieldNameOrID, CellValue> contract is
enforced for +record-upsert by calling BaseRecordUpsert.Validate(ctx,
newBaseTestRuntime(...,
map[string]string{"base-token":"b","table-id":"tbl_1","json":`{"fields":{"Name":"Alice"}}`},
nil, nil)) and asserting it returns a non-nil error; place it near the existing
positive-case that uses BaseRecordUpsert.Validate so the suite explicitly
verifies that the wrapped {"fields": {...}} form is rejected (use the same ctx
and test helper newBaseTestRuntime and check err != nil).
skills/lark-base/references/lark-base-record-share-link-create.md (1)

12-20: Inconsistent placeholder style within the multi-record example.

On line 20, --record-ids rec001,rec002,rec003 still uses concrete-looking IDs while the surrounding --base-token/--table-id were normalized to <base_token>/<table_id>. Consider <record_id_1>,<record_id_2>,<record_id_3> for consistency with the rest of the PR's placeholder convention. Minor nit — feel free to skip if the example IDs were kept intentionally to illustrate comma-separated format.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@skills/lark-base/references/lark-base-record-share-link-create.md` around
lines 12 - 20, Update the multi-record example for the lark-cli base
+record-share-link-create command to use placeholder-style record IDs for
consistency: replace the concrete-looking "rec001,rec002,rec003" after the
--record-ids flag with "<record_id_1>,<record_id_2>,<record_id_3>" so it matches
the surrounding "<base_token>" and "<table_id>" placeholders.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@skills/lark-base/references/lark-base-cell-value.md`:
- Around line 23-29: The example JSON in lark-base-cell-value.md uses an invalid
13-digit phone number ("1380000000000"); update the sample to a valid 11-digit
Chinese mobile number (e.g., "13800000000") so downstream agents won't consume
malformed phone data—locate the JSON block in the file and replace the value for
the "联系电话" field accordingly.
- Around line 86-96: Update the "2.7 link" example so the link-field CellValue
uses the correct object shape: replace the array-of-objects example (e.g., [{
"id": "<record_id>" }]) with an object whose key is "link_record_ids" and value
is an array of record_id strings (e.g., { "link_record_ids": ["rec_xxx"] });
ensure both the read and write examples in the "2.7 link" section show this
exact structure and mention that two-way link fields use the same
"link_record_ids" format.

---

Nitpick comments:
In `@shortcuts/base/base_shortcuts_test.go`:
- Around line 255-270: Add a negative test that ensures the top-level
Map<FieldNameOrID, CellValue> contract is enforced for +record-upsert by calling
BaseRecordUpsert.Validate(ctx, newBaseTestRuntime(...,
map[string]string{"base-token":"b","table-id":"tbl_1","json":`{"fields":{"Name":"Alice"}}`},
nil, nil)) and asserting it returns a non-nil error; place it near the existing
positive-case that uses BaseRecordUpsert.Validate so the suite explicitly
verifies that the wrapped {"fields": {...}} form is rejected (use the same ctx
and test helper newBaseTestRuntime and check err != nil).

In `@skills/lark-base/references/lark-base-record-share-link-create.md`:
- Around line 12-20: Update the multi-record example for the lark-cli base
+record-share-link-create command to use placeholder-style record IDs for
consistency: replace the concrete-looking "rec001,rec002,rec003" after the
--record-ids flag with "<record_id_1>,<record_id_2>,<record_id_3>" so it matches
the surrounding "<base_token>" and "<table_id>" placeholders.
🪄 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: defaults

Review profile: CHILL

Plan: Pro

Run ID: 37331722-92bc-484f-9315-84a47f6de61d

📥 Commits

Reviewing files that changed from the base of the PR and between 600fa50 and 0c2e3b4.

📒 Files selected for processing (24)
  • shortcuts/base/base_execute_test.go
  • shortcuts/base/base_shortcuts_test.go
  • shortcuts/base/helpers.go
  • shortcuts/base/helpers_test.go
  • shortcuts/base/record_batch_create.go
  • shortcuts/base/record_batch_update.go
  • shortcuts/base/record_upsert.go
  • skill-template/domains/base.md
  • skills/lark-base/SKILL.md
  • skills/lark-base/references/examples.md
  • skills/lark-base/references/lark-base-cell-value.md
  • skills/lark-base/references/lark-base-data-query.md
  • skills/lark-base/references/lark-base-record-batch-create.md
  • skills/lark-base/references/lark-base-record-batch-update.md
  • skills/lark-base/references/lark-base-record-delete.md
  • skills/lark-base/references/lark-base-record-get.md
  • skills/lark-base/references/lark-base-record-history-list.md
  • skills/lark-base/references/lark-base-record-list.md
  • skills/lark-base/references/lark-base-record-search.md
  • skills/lark-base/references/lark-base-record-share-link-create.md
  • skills/lark-base/references/lark-base-record-upload-attachment.md
  • skills/lark-base/references/lark-base-record-upsert.md
  • skills/lark-base/references/lark-base-record.md
  • skills/lark-base/references/lark-base-shortcut-record-value.md
💤 Files with no reviewable changes (2)
  • skills/lark-base/references/lark-base-shortcut-record-value.md
  • shortcuts/base/helpers.go

Comment thread skills/lark-base/references/lark-base-cell-value.md
Comment thread skills/lark-base/references/lark-base-cell-value.md
@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 23, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 60.65%. Comparing base (4da6d61) to head (07a9703).
⚠️ Report is 12 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #636      +/-   ##
==========================================
+ Coverage   59.96%   60.65%   +0.68%     
==========================================
  Files         405      416      +11     
  Lines       42710    43969    +1259     
==========================================
+ Hits        25611    26669    +1058     
- Misses      15088    15231     +143     
- Partials     2011     2069      +58     

☔ View full report in Codecov by Sentry.
📢 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.

Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

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 the current code and only fix it if needed.

Inline comments:
In `@skills/lark-base/references/lark-base-record-batch-create.md`:
- Around line 50-54: The "+record-batch-update" documentation is missing the
select-option auto-creation warning present in "+record-batch-create" and
"+record-upsert"; update the "坑点" section of the record-batch-update doc to add
this exact warning line: "select 写入未知选项时平台可能自动新增选项;如果不是要新增选项,先确认真实选项名。" so that
the `patch` field (which can contain select cell values) is covered consistently
with `+record-batch-create` and `+record-upsert`.
🪄 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: defaults

Review profile: CHILL

Plan: Pro

Run ID: fb116b55-9a69-46cf-95d9-db70b598af59

📥 Commits

Reviewing files that changed from the base of the PR and between 0c2e3b4 and 1520075.

📒 Files selected for processing (5)
  • skills/lark-base/SKILL.md
  • skills/lark-base/references/lark-base-cell-value.md
  • skills/lark-base/references/lark-base-record-batch-create.md
  • skills/lark-base/references/lark-base-record-batch-update.md
  • skills/lark-base/references/lark-base-record-upsert.md
🚧 Files skipped from review as they are similar to previous changes (2)
  • skills/lark-base/references/lark-base-cell-value.md
  • skills/lark-base/references/lark-base-record-batch-update.md

Comment thread skills/lark-base/references/lark-base-record-batch-create.md
@zgz2048 zgz2048 force-pushed the codex/refactor-base-cell-docs branch from 1520075 to e9735e3 Compare April 23, 2026 10:18
@zgz2048 zgz2048 changed the title refactor(base): enforce field-map record upsert input docs(base): refine record cell value guidance Apr 23, 2026
Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

♻️ Duplicate comments (1)
skills/lark-base/references/lark-base-record-batch-update.md (1)

45-49: ⚠️ Potential issue | 🟡 Minor

补充 select 未知选项自动新增的风险提示。

当前“坑点”缺少与其他 record 写入文档一致的提示:patch 写入 select 字段时,未知选项可能被平台自动新增,容易造成脏数据。建议在 Line 45-Line 49 增加同款警示语,保证三份文档口径一致。

📌 建议补丁
 ## 坑点

 - 这是“同值批量更新”:所有 `record_id_list` 都应用同一份 `patch`。
 - `record_id_list` 最大 200 条,超过会被接口校验拒绝。
 - 命令不会自动做字段/行映射转换,传什么就发什么。
 - 如果 `patch` 包含只读字段,返回里可能出现 `ignored_fields`;这些字段不会被更新。
+- select 写入未知选项时平台可能自动新增选项;如果不是要新增选项,先确认真实选项名。
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@skills/lark-base/references/lark-base-record-batch-update.md` around lines 45
- 49, Add a warning in the "同值批量更新" section explaining that when a patch writes
to select-type fields, unknown options may be automatically created by the
platform (causing dirty data), and recommend validating select values before
sending patches; update the text near the bullets referencing record_id_list and
patch so it matches the same cautionary wording used in other record write docs
(mention select fields, unknown options auto-added, and potential data
pollution).
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Duplicate comments:
In `@skills/lark-base/references/lark-base-record-batch-update.md`:
- Around line 45-49: Add a warning in the "同值批量更新" section explaining that when
a patch writes to select-type fields, unknown options may be automatically
created by the platform (causing dirty data), and recommend validating select
values before sending patches; update the text near the bullets referencing
record_id_list and patch so it matches the same cautionary wording used in other
record write docs (mention select fields, unknown options auto-added, and
potential data pollution).

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 59092bf6-088c-4649-a8f3-5c5efe888852

📥 Commits

Reviewing files that changed from the base of the PR and between 1520075 and e9735e3.

📒 Files selected for processing (6)
  • skill-template/domains/base.md
  • skills/lark-base/SKILL.md
  • skills/lark-base/references/lark-base-cell-value.md
  • skills/lark-base/references/lark-base-record-batch-create.md
  • skills/lark-base/references/lark-base-record-batch-update.md
  • skills/lark-base/references/lark-base-record-upsert.md
🚧 Files skipped from review as they are similar to previous changes (3)
  • skills/lark-base/references/lark-base-cell-value.md
  • skill-template/domains/base.md
  • skills/lark-base/references/lark-base-record-upsert.md

@zgz2048 zgz2048 force-pushed the codex/refactor-base-cell-docs branch from e9735e3 to a2b1f29 Compare April 23, 2026 10:28
Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

♻️ Duplicate comments (1)
skills/lark-base/references/lark-base-record-batch-update.md (1)

45-49: ⚠️ Potential issue | 🟡 Minor

Add select unknown-option warning here for parity with other record-write docs.

patch can include select CellValue, but this pitfalls section omits the auto-create warning already documented in sibling pages. Please re-add the same caution for consistency.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@skills/lark-base/references/lark-base-record-batch-update.md` around lines 45
- 49, The pitfall section for the "同值批量更新" documentation is missing the select
unknown-option auto-create warning; update the paragraph that describes `patch`
and select CellValue to include the same caution used in sibling record-write
docs: explicitly note that if `patch` contains a select option not present in
the schema it may be auto-created (or rejected depending on tenant settings),
and advise callers to validate select option existence before sending updates;
reference `patch`, `select CellValue`, `record_id_list`, and `ignored_fields`
when adding the warning for consistency.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In `@skill-template/domains/base.md`:
- Line 13: The doc contains an inconsistent batch-size statement: change the
line that currently reads "6. **批量上限 500 条/次**" to match the rest of the
document and base record docs by using "200 条/次" (i.e., 200-row limit); update
any nearby phrasing that references "500" (for example the sentence at Line 13
and any duplicate mention around Line 110) so all occurrences and bullet text
reflect the 200-row batch limit.

---

Duplicate comments:
In `@skills/lark-base/references/lark-base-record-batch-update.md`:
- Around line 45-49: The pitfall section for the "同值批量更新" documentation is
missing the select unknown-option auto-create warning; update the paragraph that
describes `patch` and select CellValue to include the same caution used in
sibling record-write docs: explicitly note that if `patch` contains a select
option not present in the schema it may be auto-created (or rejected depending
on tenant settings), and advise callers to validate select option existence
before sending updates; reference `patch`, `select CellValue`, `record_id_list`,
and `ignored_fields` when adding the warning for consistency.
🪄 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: defaults

Review profile: CHILL

Plan: Pro

Run ID: 90cbdb78-e110-4c25-8235-8097b876bc1f

📥 Commits

Reviewing files that changed from the base of the PR and between e9735e3 and a2b1f29.

📒 Files selected for processing (6)
  • skill-template/domains/base.md
  • skills/lark-base/SKILL.md
  • skills/lark-base/references/lark-base-cell-value.md
  • skills/lark-base/references/lark-base-record-batch-create.md
  • skills/lark-base/references/lark-base-record-batch-update.md
  • skills/lark-base/references/lark-base-record-upsert.md
✅ Files skipped from review due to trivial changes (1)
  • skills/lark-base/references/lark-base-cell-value.md
🚧 Files skipped from review as they are similar to previous changes (1)
  • skills/lark-base/references/lark-base-record-upsert.md

Comment thread skill-template/domains/base.md Outdated
Comment thread skill-template/domains/base.md Outdated
1. Align record CellValue examples with live behavior for date, URL, user, link, select, numeric styles, and readonly fields.

2. Remove misleading user_id_type and execution identity prompts from record-writing guidance.

3. Keep record JSON file input guidance generic and avoid documenting environment-specific stdin or path limits.
@zgz2048 zgz2048 force-pushed the codex/refactor-base-cell-docs branch from a2b1f29 to 07a9703 Compare April 23, 2026 11:02
Copy link
Copy Markdown

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

🧹 Nitpick comments (1)
skills/lark-base/SKILL.md (1)

330-330: LGTM! The guidance clarifies readonly field handling.

The updated error recovery instruction clearly states that readonly fields (system fields, formula, lookup) should be removed, and only storage fields should be written. This aligns with the tightened ignored_fields messaging across the PR.

Note: Static analysis suggests a minor grammar refinement ("可被……当成" instead of "被当成"), but the current phrasing is clear and acceptable.

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@skills/lark-base/SKILL.md` at line 330, Update the wording for the
`ignored_fields` / `READONLY` table row: change the phrase "只读字段被当成可写字段" to the
grammatically refined "只读字段可被当成可写字段" (or similar
"只读字段可被当成可写字段,常见于系统字段、formula、lookup") while keeping the rest of the guidance
("移除只读字段,只写存储字段;计算结果交给 formula / lookup / 系统字段自动产出") unchanged so the meaning
remains consistent.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In `@skills/lark-base/SKILL.md`:
- Line 330: Update the wording for the `ignored_fields` / `READONLY` table row:
change the phrase "只读字段被当成可写字段" to the grammatically refined "只读字段可被当成可写字段" (or
similar "只读字段可被当成可写字段,常见于系统字段、formula、lookup") while keeping the rest of the
guidance ("移除只读字段,只写存储字段;计算结果交给 formula / lookup / 系统字段自动产出") unchanged so the
meaning remains consistent.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 39d29355-cfee-482f-94bb-d87e8b6907f4

📥 Commits

Reviewing files that changed from the base of the PR and between a2b1f29 and 07a9703.

📒 Files selected for processing (6)
  • skill-template/domains/base.md
  • skills/lark-base/SKILL.md
  • skills/lark-base/references/lark-base-cell-value.md
  • skills/lark-base/references/lark-base-record-batch-create.md
  • skills/lark-base/references/lark-base-record-batch-update.md
  • skills/lark-base/references/lark-base-record-upsert.md
✅ Files skipped from review due to trivial changes (2)
  • skills/lark-base/references/lark-base-cell-value.md
  • skills/lark-base/references/lark-base-record-batch-update.md
🚧 Files skipped from review as they are similar to previous changes (2)
  • skills/lark-base/references/lark-base-record-upsert.md
  • skills/lark-base/references/lark-base-record-batch-create.md

Copy link
Copy Markdown
Collaborator

@kongenpei kongenpei left a comment

Choose a reason for hiding this comment

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

LGTM

@zgz2048 zgz2048 merged commit f52ea47 into larksuite:main Apr 23, 2026
19 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

domain/base PR touches the base domain 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