michaaels opened a new pull request, #8788:
URL: https://github.com/apache/hop/pull/8788

   Adds a Watch Files source for directory arrivals and changes, with 
AUTO/NATIVE/POLLING detection, stable-file checks, persistent checkpoints and 
reconciliation. It emits CREATED/MODIFIED/DELETED metadata for existing Hop 
readers. The GUI has General, Advanced and Maintenance tabs, wildcard filters, 
automatic state identity and an optional runtime in minutes/hours; blank keeps 
monitoring continuously.
   
   Implemented with Codex (high reasoning setting). Extensive tests cover 
Windows/Linux, real pipeline restarts, overflow, checkpoint/crash recovery, 
SFTP, ENOSPC and GUI behavior. State represents source observations, 
independently of downstream completion; support is limited to the normal Local 
Hop Engine.
   
   - Latest validation: Windows 80 passed (15 environment/opt-in skips); Linux 
84 headless + 10 isolated GUI passed (10 environment skips); packaged HopRun 
timeout/restart smoke passed. Checkstyle, Spotless and RAT passed.
   - Historical 24-hour Linux soak: 187,000 events, zero duplicates/unexpected 
rows. Later UX/pattern/timeout changes have separate regressions. SFTP/ENOSPC 
were validated separately and were not enabled in the latest run.
   - [Testing 
instructions](https://github.com/michaaels/hop/blob/539f1d9e8251b564fed8c76870b756d10e770a3b/plugins/transforms/watchfiles/TESTING.md).
 Full reactor CI remains the merge gate.
   
   General (optional timeout):
   
   ![Watch Files 
General](https://raw.githubusercontent.com/michaaels/hop/539f1d9e8251b564fed8c76870b756d10e770a3b/docs/hop-user-manual/modules/ROOT/assets/images/transforms/watchfiles-general.png)
   
   Maintenance:
   
   ![Watch Files 
Maintenance](https://raw.githubusercontent.com/michaaels/hop/539f1d9e8251b564fed8c76870b756d10e770a3b/docs/hop-user-manual/modules/ROOT/assets/images/transforms/watchfiles-maintenance.png)
   
   - [x] One commit; module clean install and license/format checks passed.
   - [ ] Full reactor CI passed.
   - [x] This contribution is licensed under the Apache License, Version 2.0.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to