Skip to content

Proposal: Explicit FIX session state model for clearer protocol enforcement #141

@shan305

Description

@shan305

While working with fixio, I noticed that FIX session state (before logon,
during logon, and after logon) is handled implicitly and spread across
different handlers.

Right now, the code mostly uses the presence of a FixSession object
(FixSession != null) to decide whether a session is “established”, even
though connection setup and logon exchange are still in progress.

I’d like to propose making the FIX session state explicit (for example,
using a small internal enum and clear state transitions), without
changing current behavior or adding new features.

The goal would be to:

  • make the session lifecycle easier to understand
  • avoid mixing connection, logon, and established states
  • improve debugging and protocol correctness
  • keep the current performance characteristics

This would be an internal change only and opt-in at first.

Before starting any implementation, I wanted to ask if this direction
fits the project’s goals.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions