## Why Issues #77 and #78 made `NenjimHub` the owner of runtime composition, process startup, and immutable started-process snapshots, but the existing Process Manager is still disconnected from that runtime. It is neither Hub-managed nor backed by the Hub's truthful process IDs. ## What Changes - Make `NenjimProcessManager` a specialized canonical `NenjimProcess`. - Inject the owning `NenjimHub` into the reference Process Manager. - Construct and register the Process Manager as `nenjim.process-manager.default`, then start it last through the Hub's ordinary process-start mechanism. - Replace the hardcoded JavaFX rows with complete ordered snapshots of `NenjimComponentId.value()` strings from the Hub. - Poll immediately and every three seconds on one daemon background worker, while publishing all JavaFX mutations through the existing runtime helper. - Retain the last successful display after a polling failure and stop the worker cleanly when interrupted. ## Capabilities ### Added Capabilities - `nenjim-process-manager`: define the Hub-managed Process Manager lifecycle, polling, JavaFX publication, failure handling, and displayed-ID semantics. ### Modified Capabilities - `nenjim-component-registry`: extend Hub composition and successful startup order with the Process Manager while preserving the common lifecycle rule. ## Impact Affected code is limited to the Process Manager contract and reference implementation, the Hub composition root, and this active OpenSpec change. Polling is a temporary observation mechanism; no events, controls, health model, metadata, persistence, stop lifecycle, test framework, or deployment change is introduced.