# UnifiedSlide alpha36 Script / PPTM Core Status

## Purpose

alpha36 introduces the browser-safe UnifiedSlide Script foundation and the first PPTM/VBA compatibility services.

UnifiedSlide does **not** try to emulate Host OS / native Office runtime features. The following VBA-related technologies are permanently out of scope, not merely delayed:

- FileSystemObject
- Shell
- external DLL / Win32 API calls
- ActiveX
- COM automation
- external Office application automation
- direct local file-system access from imported macros

These constructs belong to the Host OS / native Office environment and have no meaningful place inside a browser-based Host-embeddable UnifiedSlide Control.

## Added runtime services

- `scripts/services/script/script_runtime.js`
- `scripts/services/script/script_sandbox.js`
- `scripts/services/script/script_permission_manager.js`
- `scripts/services/script/unified_slide_script_api.js`
- `scripts/services/script/power_point_vba_compatibility_api.js`
- `scripts/services/script/vba_analyzer.js`
- `scripts/services/script/vba_to_js_converter.js`
- `scripts/services/script/vba_project_preserver.js`
- `scripts/services/script/script_compatibility_report.js`

## Control commands

- `script.run`
- `script.analyzeVba`
- `script.convertVba`
- `script.policy`

## PPTM preservation

`VbaProjectPreserver` detects and preserves macro-enabled OOXML parts such as:

- `ppt/vbaProject.bin`
- `ppt/vbaData.xml`
- `ppt/_rels/vbaProject.bin.rels`
- `customUI/*`

The first target is PPTM round-trip preservation. Imported VBA is never executed automatically.

## VBA conversion scope

The converter targets a practical PowerPoint document-model subset:

- `Presentation`
- `Slides`
- `Shapes`
- `TextFrame` / `TextRange`
- `Fill` / `Line`
- `Picture`
- `Table`
- `Theme` / `Layout`
- `SlideShow`

Unsupported language constructs are reported. Permanently out-of-scope OS/COM constructs block conversion.

## Demo surface

The Basic Demo adds a Script Console under Tools. It can:

- run UnifiedSlide Script through the safe API;
- analyze VBA source;
- convert supported VBA subset into UnifiedSlide Script;
- display compatibility reports.
