2.1 KiB
Proposal
Why
The current Evelyn status-history service is named as if it owns the entire Evelyn system, and its existing reference-price calculation is unavailable to other services. Issue #88 gives Evelyn consumers one authoritative reference price through the existing status service.
What Changes
- BREAKING: Move and rename the public API to
com.r35157.evelyn.service.status.EvelynStatusServiceand its implementation tocom.r35157.evelyn.service.status.impl.ref.EvelynStatusServiceImpl; move the package-private calculator alongside it. - Add
AssetPrice getReferencePrice(Instant timestamp), calculating on demand through the existing curve and returning the service's canonical EVE/USDT trading pair independently of sampling and storage. - BREAKING: Replace
evelyn.service.prod/evelyn.service.testwithevelyn.status.prod/evelyn.status.testin Hub wiring and recognized process IDs. Document the corresponding private deployment configuration edit. - Preserve named Production/Test storage, format/version, history, sampling, lifecycle, Mission Control charts, and inactive legacy rebalancing.
Capabilities
New Capabilities
None.
Modified Capabilities
evelyn-status-index-history: Identify the status-service API and expose the shared reference-price calculation while preserving history and lifecycle behavior.nenjim-hub-configuration: Recognize the renamed status process IDs and preserve the configured selection and dependency order.nenjim-component-registry: Use the renamed IDs in the canonical component-ID contract.
Impact
Affected source is limited to the status API, implementation, calculator, Hub composition, Mission Control's typed dependencies, and directly related documentation/specifications and verification. Other Evelyn packages and EvelynStatusIndexPoint stay in place. Existing deployments must replace only the two old IDs where present in their private NenjimHub.conf, retaining enabled/commented selections and order. No history migration, dependency addition, live financial operation, or commit is required.