# Integration review The original supplied archive files are retained separately under references/public-source/fml-public-powershell-8-tools. This distribution keeps the supplied MIT license and does not inherit the website/template's restrictive evaluation license. ## Distributed changes * Script 01 uses sourceDirectory instead of PowerShell's automatic input variable. * Scripts 07/08 disable HTTP redirects and accept only literal loopback hosts. User info, query, fragment and paths other than the optional /v1 are rejected. This closes an initial-URL-only validation gap, but is not an isolation guarantee: an authorized local server can proxy traffic, and host proxy settings must be reviewed independently. * Scripts 02/04 refuse existing report paths, including input paths. Script 05 refuses existing inventory/summary outputs. * This README adds current distribution scope. Author-facing PORTFOLIO_NOTES.md is retained in references but excluded from the download. ## Read before use The eight workflows complement, rather than replace, the separately authored twelve-tool kit. These scripts can create actual OCR outputs, inventory reports, source packets and model reports when you run them. Poppler/Tesseract and a local model are separate requirements; no executables, documents, model files or client data are bundled. Source inspection identified remaining prototype limitations: * The repository inventory and packet scripts filter excluded paths after recursive enumeration; they do not prune traversal first. Their output caps do not bound total enumeration. Restrict input directories and avoid whole-system roots. * These scripts are not hardened against linked roots, filesystem races or hostile concurrent modifications. * Native OCR fallback errors in script 01 can discard a short embedded-text result for that page. No perfect recovery or OCR accuracy is promised. * Script 03 expects source-grouped, page-ordered records, resets chunk numbers per source, and emits a reason for the boundary closing a chunk. Do not assume globally unique chunk IDs, formal discourse parsing or the exact semantics of the TypeScript narrative example. * Corpus schemas differ from the twelve-tool kit and browser workshop example. Do not pipe records across packages without an explicit field mapping. * Use fresh, separate output folders and retain your own backups. The distributed report writers reject existing named outputs; this is not transaction-wide rollback after an interrupted run. * A second prompt to the same model is a challenge pass, not independent verification. Model responses and packet/report files can contain source text and sensitive metadata. No scripts, model calls, tests, builds or parser checks were run during this integration. The supplied compatibility claims are not independently validated. Review source before running; use only authorized inputs.