Skip to content

docs: sync specs to implemented state, remove max_startup_latency_seconds - #116

Merged
mohammadp1001 merged 1 commit into
mainfrom
chore/spec-doc-sync
Jul 20, 2026
Merged

docs: sync specs to implemented state, remove max_startup_latency_seconds#116
mohammadp1001 merged 1 commit into
mainfrom
chore/spec-doc-sync

Conversation

@mohammadp1001

Copy link
Copy Markdown
Owner

Summary

  • Removes the max_startup_latency_seconds config field entirely (it only gated a warning during candle-boundary alignment; never blocked or skipped a session) from AlphorynConfig, Scheduler.wait_for_candle_close, config.json.example, and tests.
  • Brings specs/001-etf-paper-trading-agent/ back in line with the actual implemented codebase, which had drifted in several places:
    • Finishes the ETF → ticker terminology rename in contracts/agents.md, contracts/report-context.md, and research.md (PR Generalise ETF terminology to ticker/asset throughout codebase #99 covered the codebase but missed these three spec docs — checklists/requirements.md had a stale claim that this was already done).
    • Corrects data-model.md's Session table and SignalSnapshot to match the real generalized N-ticker schema (ticker_decisions JSON blob, signals: dict[str, AssetSignals]) instead of stale fixed ticker1_*/ticker2_* fields.
    • Corrects contracts/agents.md to the real AssetDecision/SessionDecision dataclasses and execution/telemetry behavior.
    • Corrects contracts/cli.md and quickstart.md to the real --tickers flag (was documented as --etf1/--etf2).
    • Corrects contracts/config-schema.md to the real tickers: list[str] config shape.
    • Corrects research.md's telemetry event table to match what's actually emitted, flagging known implementation gaps (execution/agent.py has no TelemetryLogger wired in; EVENT_TYPES is missing EVALUATION_FAILED).
    • Corrects plan.md skill paths to the real hyphenated directory names.
  • tasks.md was deliberately left untouched — it's a completed historical task log with [x] checkboxes, not a living spec.

Test plan

  • ruff check . — all checks passed
  • pytest --cov=alphoryn — 444 passed, 100% coverage

…onds

Removes the max_startup_latency_seconds config field (SC-002's own
description showed it only gated a warning, never blocked or skipped
anything) from AlphorynConfig, scheduler.wait_for_candle_close, the
example config, and tests.

Also brings the specs/ folder back in line with the actual codebase,
which had drifted significantly:
- ETF -> ticker terminology finished in contracts/agents.md,
  contracts/report-context.md, and research.md (PR #99 covered the
  codebase but missed these three spec docs)
- data-model.md's Session table and SignalSnapshot corrected to match
  the real generalized N-ticker schema (ticker_decisions JSON blob,
  signals: dict[str, AssetSignals]) instead of stale fixed
  ticker1_*/ticker2_* fields
- contracts/agents.md corrected to the real AssetDecision/SessionDecision
  dataclasses and execution/telemetry behavior
- contracts/cli.md and quickstart.md corrected to the real --tickers
  flag (was documented as --etf1/--etf2)
- contracts/config-schema.md corrected to the real tickers: list[str]
  config shape
- research.md's telemetry event table corrected to match what's
  actually emitted, with known gaps flagged (execution/agent.py has no
  telemetry wired in; EVENT_TYPES is missing EVALUATION_FAILED)
- plan.md skill paths corrected to match actual hyphenated directories
@mohammadp1001
mohammadp1001 merged commit 5db1161 into main Jul 20, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant