Repository navigation
feat: checked Lark native question forms - #14
Merged
Merged
Conversation
Expose a versioned question-card contract with actual SDK form values and private receipt/account fences, retaining the existing approval contract. Refs: BotHarness/DeepSeekBot#1031 Agent-Task: codex/local/01a1131c-b268-7212-9ac8-d1c7bf9b6e28 Agent-Claim: BotHarness/DeepSeekBot#1031 (comment)
This was referenced Oct 7, 2026
The actual platform rejected max_length 2000 with code 11310 before card creation. Render and validate form fields at 1000, retaining the canonical native owner's independent answer contract and explicit text correlation. Refs: BotHarness/DeepSeekBot#1031 Agent-Task: codex/local/01a1131c-b268-7212-9ac8-d1c7bf9b6e28 Agent-Claim: BotHarness/DeepSeekBot#1031 (comment)
Question namespaces now reach the form parser, so a form-less action refuses rather than being ignored.
Collaborator
Author
|
Synced with latest main at f671b67. Core counterpart is now BotHarness/DeepSeekBot#3314 (replacing closed #1104). |
DoodleBears
marked this pull request as ready for review
November 2, 2026 16:16
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
BotHarness #1031 | Agent claim
Task:
codex/local/01a1131c-b268-7212-9ac8-d1c7bf9b6e28.Why the change
Native Human questions need a checked Lark form and actual SDK answer provenance so the original BotHarness question owner can accept an answer from its paired private DM.
Special things to note
max_length: 2000returned platform error11310before card creation. Sourcea9f6cbcnow renders and validates form fields at 1000 characters; boundary assertions, package verification and all 791 contracts pass. Zero answers were accepted, no uncertain send was replayed, QA authority was revoked and production restored within ten minutes; the Human confirmed normal replies on both platforms. Real Lark form screenshots and SDK callback/final-card qualification still require a new window. Keep draft until they are captured.Change outline
The form submits all one-to-three original questions together, including headers, details and option descriptions. Answered, cancelled, expired and Web-required cards contain no form controls. Approval actions retain their existing namespace and shape.
Each form custom field accepts at most 1000 characters, as enforced by the real platform and the checked SDK callback parser. BotHarness's separate explicit-text/native answer bound remains unchanged.
Runnable review path: install this candidate into an IM-disabled isolated Profile, pair the Human during a newly approved receiver window, grant Answer only, trigger a native two-question request, choose an option and enter free text, then verify the original Session continues and the original card becomes Answered. A separate single-question request exercises an explicit
/answer <reference> <text>reply. Capture the pending/final real cards and restore production before the cutoff; do not reconnect the shared app outside that window.