feat: add App Use control framework#439
Draft
hiqiancheng wants to merge 6 commits into
Draft
Conversation
|
Important Review skippedDraft detected. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
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.
Summary
app_session,app_observe, andapp_actwith strict schemas,create_owned_target, shared config, native bridge wiring, and disabled-by-default seed entries.Related issue or RFC
AI assistance disclosure
Testing evidence
Local commands run and observed passing:
Coverage evidence for new App Use frontend code:
Real WPS acceptance:
The smoke used production
app_use_session(create_owned_target)to create a signed TouchAI-owned.xlsx, then authorized and ranapp_act(write_cells)against WPS Spreadsheet, thenapp_use_observeread back the sentinel,42, andokfrom the created workbook. It only touched its own temp owned workbook and did not kill existing WPS processes.CI checks for head
1663bb5:Notes:
pnpm test:unitfirst hit one unrelated Settings General test timeout under default parallelism; rerunning that file passed 11/11, and rerunning full unit with--maxWorkers=50%passed 140 files / 820 tests.pnpm test:coverage:rustwas not run locally because cargo-tarpaulin is not available in this Windows workspace; Rust behavior is covered by targeted Rust tests and CI Rust Checks.Risk notes
AgentService, runtime, MCP, or schema impact: adds a new built-in tool group and schema surface for App Use; model-facing requests reject raw script, macro, COM, UXP, batchPlay, and hidden raw automation payloads.app_session,app_observe, andapp_actseed entries with conservative read-only default config.zipfor minimal OpenXML owned-target package generation.Screenshots or recordings
Not attached. The App Use settings surface is covered by component tests; real WPS behavior is covered by the ignored smoke run above and CI Desktop E2E covers desktop smoke.
Checklist
[WIP]or similar title prefixes.AgentService, runtime, MCP, or schema boundaries, there is an accepted RFC or tracking issue.pnpm test:prfor this code PR, or documented the local blocker and equivalent command evidence.pnpm test:coverage:rustor relied on CI coverage evidence.pnpm test:e2elocally or documented why CI is the first valid proof.