Conversation
## MWPW-204909 - Add gen-presentation-v2 / interactive-report / stylize verbs and PDF integrity validation ### Summary Adds support for three new Acrobat verbs and introduces config-driven PDF pre-upload validation — encryption / password-protection, corrupted-file, AcroForm, and scanned-document detection — alongside a generalized word page-count check. Updating pdf-lite library code with latest version 1.14.0 ### Changes **New verbs** - Registered `gen-presentation-v2`, `interactive-report`, and `stylize` across the enabled-features list (`workflow.js`), `LIMITS_MAP` (`action-binder.js`), and the verb config arrays in `target-config.json`. - Added a `page-limit-15` limit (used by `stylize`) in `limits.json`. **Config-driven PDF validation** (`action-binder.js`, `pdflite-validator.js`) - `pdflite-validator.js` now surfaces `isEncrypted`, `isPasswordProtected`, `hasAcroForm`, and `isScanned` from pdflite file details, and flags files as corrupted when `fileDetails` throws. - `filterFilesWithPdflite` runs integrity, AcroForm, scanned, and page-count checks selectively per verb, driven by new config lists: `pdfIntegrityCheckVerbs`, `pdfAcroformCheckVerbs`, `pdfScannedCheckVerbs`, and `wordPageCountVerbs` (the word page-count check is now config-driven instead of hardcoded to `resume-builder`). - The per-check logic is unified behind a single helper to remove duplication across the integrity/AcroForm/scanned checks. - Encrypted / password-protected / corrupted, form-containing, and scanned PDFs are filtered out with error toasts. **Scanned-document detection** - `pdflite`'s scan (`IS_SCANNED_DOCUMENT`) is only computed when `fileDetails` is called with `checkScanned = true`, so `checkScanned` is threaded through `validateFilesWithPdflite` and enabled only for verbs in `pdfScannedCheckVerbs` (currently `stylize`) to avoid the extra OCR cost on other flows. **Corrupted-file handling** - An exception thrown from pdflite's `fileDetails` signifies a corrupted/unreadable PDF; these are now caught and rejected via the existing integrity check (no new error code). **New error codes / messages** - Added `validation_error_password_protected(_multi)`, `validation_error_acroform_not_supported(_multi)`, and `validation_error_scanned_document(_multi)` to the error map and message maps. ### Testing - Added unit tests for `pdflite-validator` covering the new encryption / password-protection / AcroForm fields — passing. - Verified the existing Acrobat action-binder unit suite runs against the updated code (headless CI). - Suggested QA: - Upload flows for `gen-presentation-v2`, `interactive-report`, and `stylize` (page limits, allowed file types). - Upload an encrypted / password-protected PDF, a PDF containing a form, and a corrupted PDF to a verb in `pdfIntegrityCheckVerbs` / `pdfAcroformCheckVerbs` and confirm the correct error toast appears and the file is excluded. - Upload a scanned PDF to `stylize` and confirm the scanned-document error toast fires. - Confirm word page-count validation still fires for `resume-builder` and the newly configured verbs. - All these 3 verbs have the small file optimization enabled too. Please verify that as part of QA. - Validate file upload works for signed in users too for all 3 verbs. Unity integration is not implemented on stage on Unity BE and product side yet, so the end-to-end flow will not work for now. Please test all the client-side validation till then. ### Test URLs - https://mwpw-204909--da-dc--adobecom.aem.page/acrobat/online/test/ruchika/interactive-report?unitylibs=avalon - https://mwpw-204909--da-dc--adobecom.aem.page/acrobat/online/test/ruchika/generate-presentation?unitylibs=avalon - https://mwpw-204909--da-dc--adobecom.aem.page/acrobat/online/test/ruchika/stylize?unitylibs=avalon --------- Co-authored-by: Ruchika Sinha <tek10248@Ruchikas-MacBook-Pro.local>
…teractive report (#878) <!-- Before submitting, please review all open PRs. --> * Update supported file types for gen-presentation and interactive report Resolves: [MWPW-205605](https://jira.corp.adobe.com/browse/MWPW-205605) **Test URLs:** - Before: https://MWPW-205598--da-dc--adobecom.aem.page/acrobat/campaign/interactive-report?unitylibs=stage - After: https://MWPW-205598--da-dc--adobecom.aem.page/acrobat/campaign/interactive-report?unitylibs=MWPW-205605 - Before: https://MWPW-205598--da-dc--adobecom.aem.page/acrobat/campaign/generate-presentation?unitylibs=stage - After: https://MWPW-205598--da-dc--adobecom.aem.page/acrobat/campaign/generate-presentation?unitylibs=MWPW-205605 --------- Co-authored-by: Ruchika Sinha <tek10248@Ruchikas-MacBook-Pro.local>
[MWPW-199553] Unity a11y fixes for prompt bar across unity widgets Resolves: [MWPW-199553](https://jira.corp.adobe.com/browse/MWPW-199553) [MWPW-199555](https://jira.corp.adobe.com/browse/MWPW-199555) [MWPW-199557](https://jira.corp.adobe.com/browse/MWPW-199557) [MWPW-199558](https://jira.corp.adobe.com/browse/MWPW-199558) **Test URLs:** - Before: 1. https://main--da-cc--adobecom.aem.page/products/firefly?unitylibs=stage 2. https://main--da-cc--adobecom.aem.page/products/firefly/features/ai-video-generator?unitylibs=stage 3. https://main--da-cc--adobecom.aem.page/products/firefly/features/ai-art-generator?unitylibs=stage 4. https://main--da-cc--adobecom.aem.page/products/firefly/features/ai-face-generator?unitylibs=stage 5. https://main--da-cc--adobecom.aem.page/products/firefly/features/ai-voice-generator?unitylibs=stage 6. https://main--da-cc--adobecom.aem.page/products/firefly/features/ai-painting-generator?unitylibs=stage - After: 1. https://main--da-cc--adobecom.aem.page/products/firefly?unitylibs=mwpw-199553 2. https://main--da-cc--adobecom.aem.page/products/firefly/features/ai-video-generator?unitylibs=mwpw-199553 3. https://main--da-cc--adobecom.aem.page/products/firefly/features/ai-art-generator?unitylibs=mwpw-199553 4. https://main--da-cc--adobecom.aem.page/products/firefly/features/ai-face-generator?unitylibs=mwpw-199553 5. https://main--da-cc--adobecom.aem.page/products/firefly/features/ai-voice-generator?unitylibs=mwpw-199553 6. https://main--da-cc--adobecom.aem.page/products/firefly/features/ai-painting-generator?unitylibs=mwpw-199553 --------- Co-authored-by: vipulg <vipulg@adobe.com>
…report to pdf only for viewer flow (#880) ## Summary - Restricted `gen-presentation-v2` and `interactive-report` verbs to PDF-only file uploads by replacing `allowed-filetypes-study-spaces` + `allowed-filetypes-eml-msg-images` with `allowed-filetypes-pdf-only` in `action-binder.js` - Removed both verbs from `nonpdfSfuProductScreen` in `target-config.json` (non-PDF product screen is irrelevant when only PDF is accepted) - Removed both verbs from `wordPageCountVerbs` in `target-config.json` (Word page count validation is no longer needed) - Deleted the `allowed-filetypes-eml-msg-images` entry from `limits.json` as it was exclusively used by these two verbs and is now dead config ## Test plan - [ ] Upload a PDF to `gen-presentation-v2` — should proceed normally - [ ] Upload a PDF to `interactive-report` — should proceed normally - [ ] Upload a non-PDF file (e.g. `.docx`, `.pptx`, `.jpg`) to either verb — should be rejected with a file type validation error - [ ] Verify no regressions on other verbs that use `allowed-filetypes-study-spaces` (`quiz-maker`, `flashcard-maker`, `mindmap-maker`) Test Url: **Stage:** https://stage--da-dc--adobecom.aem.page/acrobat/campaign/generate-presentation?unitylibs=stage **Branch:** https://mwpw-206115--da-dc--adobecom.aem.page/acrobat/campaign/generate-presentation?unitylibs=MWPW-206112 **Stage:** https://stage--da-dc--adobecom.aem.page/acrobat/campaign/interactive-report?unitylibs=stage **Branch:** https://mwpw-206115--da-dc--adobecom.aem.page/acrobat/campaign/interactive-report?unitylibs=MWPW-206112 Co-authored-by: Ruchika Sinha <tek10248@Ruchikas-MacBook-Pro.local>
… remaining acrobat verbs (#879) <!-- Before submitting, please review all open PRs. --> * As part of batch 3 enable small file optimization for all acrobat verbs for file size less than 1 MB * Since we are enabling it for all existing verbs removed directUploadVerbs from target config * With this change any future acrobat verb will automatically inherit small file upload optimization Resolves: [MWPW-205562](https://jira.corp.adobe.com/browse/MWPW-205562) **Test URLs:** - Before: https://stage--da-dc--adobecom.aem.page/acrobat/online/ai-summary-generator?unitylibs=stage - After: https://stage--da-dc--adobecom.aem.page/acrobat/online/ai-summary-generator?unitylibs=MWPW-205562 - Before: https://stage--da-dc--adobecom.aem.page/acrobat/online/word-to-pdf?unitylibs=stage - After: https://stage--da-dc--adobecom.aem.page/acrobat/online/word-to-pdf?unitylibs=MWPW-205562 - Before: https://stage--da-dc--adobecom.aem.page/acrobat/campaign/generate-presentation?unitylibs=stage - After: https://stage--da-dc--adobecom.aem.page/acrobat/campaign/generate-presentation?unitylibs=MWPW-205562 **Testing Note:** * Test across existing acrobat verbs for small file and make sure upload works as expected with just one Upload api call * For files greater than 1MB it should have finalize calls and have existing flow across verbs Co-authored-by: Ruchika Sinha <tek10248@Ruchikas-MacBook-Pro.local>
|
Hello, I'm the AEM Code Sync Bot and I will run some actions to deploy your branch and validate page speed.
|
sanjayms01
approved these changes
Sep 4, 2026
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.
PRs
Test URLs:
Before: https://main--da-dc--adobecom.aem.page/acrobat/campaign/generate-presentation?unitylibs=main
After: https://main--da-dc--adobecom.aem.page/acrobat/campaign/generate-presentation?unitylibs=stage
Before: https://main--da-dc--adobecom.aem.page/acrobat/campaign/interactive-report?unitylibs=main
After: https://main--da-dc--adobecom.aem.page/acrobat/campaign/interactive-report?unitylibs=stage
Before: https://main--da-dc--adobecom.aem.page/acrobat/campaign/stylize?unitylibs=main
After: https://main--da-dc--adobecom.aem.page/acrobat/campaign/stylize?unitylibs=stage