feat(web): complete Blender route runtime execution
Some checks failed
M6 deployable RC / quick (push) Has been cancelled
M6 deployable RC / chromium (push) Has been cancelled
M6 deployable RC / release (push) Has been cancelled

This commit is contained in:
mes123456
2026-09-07 00:12:32 +08:00
parent e2e81c7c00
commit e9bfef0c5a
35 changed files with 57527 additions and 75 deletions

View File

@@ -29,6 +29,11 @@ export interface BlenderOperatorDescriptor {
properties: BlenderOperatorPropertySpec[];
}
export interface BlenderServerOperatorSchema {
operator: BlenderOperatorDescriptor;
blenderBuild: { version: string; buildSha256: string };
}
export interface BlenderOperatorInvocation {
operator: string;
properties?: Record<string, BlenderOperatorPropertyValue>;
@@ -37,6 +42,22 @@ export interface BlenderOperatorInvocation {
export type BlenderFeatureRoute = "WEB_MAIN" | "SERVER_NATIVE" | "BROWSER_EQUIVALENT" | "UNAVAILABLE";
/** Browser-owned replacements for desktop context/window operators. */
export type BlenderBrowserActionGroup = "OPEN" | "SAVE" | "WORKSPACE" | "SELECTION" | "VIEW" | "EDITOR";
export interface BlenderBrowserEquivalentInvocation {
command: "invokeBrowserEquivalent";
route: string;
actionGroup: BlenderBrowserActionGroup;
browserCommand: string;
}
export interface BlenderFeatureRouteRuntimeAudit {
command: "featureRouteRuntimeAudit";
status: "PASS" | "FAILED" | "STATIC_DECLARATION";
behavioralEvidence: { separate: true };
}
export interface BlenderFeatureRouteLocation {
path: string;
line?: number;
@@ -51,6 +72,10 @@ export interface BlenderFeatureRouteEntry {
family: string;
route: BlenderFeatureRoute;
reason: string;
/** HTTP provider used by SERVER_NATIVE routes. */
httpRoute?: string;
/** Existing browser workflow used by BROWSER_EQUIVALENT routes. */
browserActionGroup?: BlenderBrowserActionGroup;
label?: string;
description?: string;
properties?: BlenderOperatorPropertySpec[];