@@ -16,13 +16,15 @@ one server or many, preserving their folder tree, and recording the scheduled
1616tasks that run them.
1717
1818It creates one local audit bundle containing copied scripts, CSV inventories,
19- task actions, triggers, conditions, hashes and collection errors. It is designed
20- for server estate discovery, SCCM deployment and the first stage of a controlled
21- PowerShell audit.
19+ task actions, triggers, conditions, hashes, collection errors and one hour of
20+ local Task Scheduler outcome evidence. It is designed for server estate
21+ discovery, SCCM deployment and the first stage of a controlled PowerShell audit.
2222
2323The collector is public. The bundle it creates is not. Generated bundles can
24- contain source code and infrastructure metadata, so the tool never initialises
25- Git, pushes a repository, uploads to At0mFlow or sends telemetry.
24+ contain source code and infrastructure metadata. By default the tool performs
25+ no Git operation. An explicit ` -GitSync ` option can update a preconfigured
26+ private Git working tree, but it never initialises Git, creates a remote, stores
27+ credentials, uploads to At0mFlow or sends telemetry.
2628
2729## Quick start
2830
@@ -75,6 +77,8 @@ Computers: 2
7577Scripts found: 47
7678Scripts copied: 47
7779PowerShell task actions: 18
80+ Execution evidence: 12
81+ Execution failures: 1
7882Collection errors: 1
7983Bundle: D:\Audit\At0mFlow-ScriptAudit-20260827
8084```
@@ -127,6 +131,7 @@ At0mFlow-ScriptAudit-20260827/
127131 manifests/
128132 script-inventory.csv
129133 scheduled-tasks.csv
134+ script-run-evidence.csv
130135 collection-errors.csv
131136 summary.json
132137 TREE.txt
@@ -142,6 +147,12 @@ records include the principal, run level, logon type, action, arguments,
142147working directory, script references, trigger summary, conditions, run times
143148and last result.
144149
150+ ` script-run-evidence.csv ` looks back exactly one hour in the local Windows Task
151+ Scheduler Operational log. A script is marked successful or failed only when a
152+ matching event provides that evidence. Missing, disabled or inaccessible logs
153+ remain explicitly unknown. The collector never runs a discovered script to
154+ test it.
155+
145156See the complete [ output schema] ( docs/output-schema.md ) and the checked-in
146157[ synthetic examples] ( examples/ ) .
147158
@@ -173,9 +184,30 @@ This writes manifests and task context without copying source files.
173184
174185## Private Git hand-off
175186
176- The collector does not run Git. If version control is approved after review,
177- use a private repository and scan the collected scripts for credentials first.
178- See [ safe Git hand-off] ( docs/safe-git-handoff.md ) .
187+ The default collector does not run Git. If version control is approved after
188+ review, use a private repository and scan the collected scripts for credentials
189+ first. See [ safe Git hand-off] ( docs/safe-git-handoff.md ) .
190+
191+ ## Recurring private repository refresh
192+
193+ For an approved, existing private Git checkout, the collector can refresh its
194+ stable folder tree and push only collector-owned paths:
195+
196+ ``` powershell
197+ ./src/Invoke-At0mFlowScriptAudit.ps1 `
198+ -SearchPath C:\Scripts, D:\Automation `
199+ -OutputPath D:\PrivateGit\PowerShell-Estate `
200+ -Force `
201+ -GitSync `
202+ -Quiet `
203+ -FailOnCollectionError
204+ ```
205+
206+ Configure the Git remote, upstream branch, author and non-interactive
207+ authentication before scheduling the command. The tool does not create or
208+ store those settings. It commits only ` scripts/ ` , ` manifests/ ` and the bundle
209+ ` README.txt ` , so unrelated repository content and staged work stay outside the
210+ collector commit. See [ recurring private repository refresh] ( docs/recurring-private-repository.md ) .
179211
180212## Take the estate further with At0mFlow
181213
@@ -210,6 +242,7 @@ At0mFlow product code.
210242- [ SCCM deployment] ( docs/sccm.md )
211243- [ Output schema] ( docs/output-schema.md )
212244- [ Safe Git hand-off] ( docs/safe-git-handoff.md )
245+ - [ Recurring private repository refresh] ( docs/recurring-private-repository.md )
213246
214247## Contributing
215248
0 commit comments