Skip to content

Conversation

@yuyutaotao
Copy link
Collaborator

No description provided.

@yuyutaotao yuyutaotao requested a review from quanru November 5, 2025 01:54
@netlify
Copy link

netlify bot commented Nov 5, 2025

Deploy Preview for midscene ready!

Name Link
🔨 Latest commit 1288300
🔍 Latest deploy log https://app.netlify.com/projects/midscene/deploys/690d88434194373454005dc1
😎 Deploy Preview https://deploy-preview-1423--midscene.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@CLAassistant
Copy link

CLAassistant commented Nov 5, 2025

CLA assistant check
All committers have signed the CLA.

@yuyutaotao yuyutaotao changed the base branch from main to 1.0 November 5, 2025 01:55
@yuyutaotao yuyutaotao marked this pull request as draft November 5, 2025 01:55
@chatgpt-codex-connector
Copy link

💡 Codex Review

AndroidBackButton: defineAction({
name: 'AndroidBackButton',
description: 'Trigger the system "back" operation on Android devices',
paramSchema: z.void().describe('No parameters required'),
call: async () => {
await device.back();
},
}),
AndroidHomeButton: defineAction({
name: 'AndroidHomeButton',
description: 'Trigger the system "home" operation on Android devices',
paramSchema: z.void().describe('No parameters required'),
call: async () => {
await device.home();
},
}),
AndroidRecentAppsButton: defineAction({
name: 'AndroidRecentAppsButton',
description:
'Trigger the system "recent apps" operation on Android devices',
paramSchema: z.void().describe('No parameters required'),

P1 Badge System navigation actions now reject empty params on Android

The Android system navigation actions were changed to use z.void() schemas. However the execution pipeline still passes {} for actions that have no parameters (see TaskBuilder.handleActionPlan which feeds plan.param through parseActionParam). z.void() rejects {}, so a plan that emits "AndroidBackButton": {} or any existing YAML using {} will now fail schema validation before the action runs, aborting the task. The previous z.object({}) schema accepted empty objects and matched current callers; this change makes the action unusable unless every caller is updated to pass undefined.


IOSHomeButton: defineAction({
name: 'IOSHomeButton',
description: 'Trigger the system "home" operation on iOS devices',
paramSchema: z.void().describe('No parameters required'),
call: async () => {
await device.home();
},
}),
IOSAppSwitcher: defineAction({
name: 'IOSAppSwitcher',
description: 'Trigger the system "app switcher" operation on iOS devices',
paramSchema: z.void().describe('No parameters required'),
call: async () => {

P1 Badge iOS system button actions break when called with default {} payloads

Similar to Android, the iOS IOSHomeButton and IOSAppSwitcher actions now declare paramSchema: z.void(). The planner and YAML runner send {} for parameter-less actions, and TaskBuilder validates those payloads via parseActionParam. With a z.void() schema this produces a Zod error (Expected undefined, received object) and the navigation action never executes. Keeping the schema as an empty object maintains backward compatibility with existing callers and avoids blocking these actions at runtime.

ℹ️ 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".

@yuyutaotao yuyutaotao marked this pull request as ready for review November 7, 2025 05:51
@quanru quanru merged commit 8378dae into 1.0 Nov 7, 2025
10 checks passed
@quanru quanru deleted the docs/1.0 branch November 7, 2025 07:53
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants