You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
With v0.5.1 released, Smocket is in final stabilization for its first stable release.
The latest public version is still v0.5.1. v1.0.0 has not been tagged, published to npm, or published as a GitHub Release. This issue remains the living tracker for the work that must finish before that changes. Discussion #219 preserves the direction and priorities as they were introduced.
The goal is to keep the reasoning behind the roadmap visible, gather real-world use cases and concerns, and publish a clear account of what Smocket values on the way to v1.0.0.
Lenses under consideration
These lenses now guide development and review. They are not a second issue taxonomy and are not necessarily equally weighted.
Lens
Question
Fidelity
Does Smocket reproduce the same observable results as real Socket.IO?
Extensibility
Can Smocket grow without breaking that fidelity?
Reliability
Are those results continuously verified as Socket.IO and Smocket change?
Productivity
Does Smocket reduce the cost of writing and maintaining Socket.IO tests?
Sustainability
Can Smocket's promises and development model be maintained over the long term?
Fidelity remains the anchor. The durable definitions and examples live in the development lenses, while the v1.0.0 roadmap owns the release boundary.
Community contributions are welcome
For a durable guide to choosing between issues, Discussions, and documentation, see the contributing guide.
Community experience is an important input to Smocket's direction. If you have used Socket.IO or Smocket in a real project, you can help through the following contribution paths.
If Smocket does not yet support a Socket.IO behavior that your project needs, please open a Feature Request issue. Include the concrete use case and the relevant Socket.IO API or behavior.
Helps improve Fidelity.
If Smocket produces a different observable result from real Socket.IO, please open a Bug Report issue. Include the versions used, expected result, actual result, and a minimal reproduction when possible.
Helps improve Fidelity and Reliability.
If the current API requires repetitive setup, workaround code, or unnecessary maintenance, describe the experience in a Discussion. If you already have a specific change in mind, you may open a Feature Request issue.
Helps improve Productivity.
If an adapter, test utility, or other convenience feature would help without changing Socket.IO behavior, describe the use case in a Discussion or open a Feature Request issue. Please also explain how the proposal could preserve compatibility with Socket.IO.
Helps improve Extensibility and Productivity.
If the current tests, CI, compatibility reports, or development processes are not sufficient for you to trust Smocket, describe what additional process would help in a Discussion.
Helps improve Reliability and Sustainability.
If documentation is difficult to find, incomplete, or prevents you from contributing, please open a Documentation issue.
Helps improve Productivity and Sustainability.
Concrete use cases, missing behaviors, minimal reproductions, and examples from existing Socket.IO test suites are particularly helpful when deciding what belongs in the v1.0.0 roadmap.
Current status
Work completed after v0.5.1 includes:
stabilizing the v1 public runtime and type contract (#407–#415);
recording support boundaries, asset provenance, and compatibility attribution (#420, #422, #442); and
retiring the legacy chat-room evaluation paths and aligning the maintained documentation and repository guidance (#451, #455, #457, #459, #461).
The v1.0.0 guarantee remains stable observable behavior and public types within the documented Socket.IO logic-layer subset. Transport fallback, heartbeat, automatic network reconnection, multi-server scaling, and binary encoding remain outside that guarantee.
Expected outcomes
The direction statement, public roadmap, development lenses, contribution paths, and application reports are published. The remaining outcome is a certified v1.0.0 release whose package versions, npm publication, tag, GitHub Release, and documentation all refer to the same reviewed candidate.
TODO
Document what the five lenses mean for Smocket's development and decision-making (development lenses).
Document how to contribute through issues, Discussions, and documentation (#215; contributing guide).
Publish a public roadmap toward v1.0.0 (#216; roadmap).
Context
With v0.5.1 released, Smocket is in final stabilization for its first stable release.
The latest public version is still v0.5.1. v1.0.0 has not been tagged, published to npm, or published as a GitHub Release. This issue remains the living tracker for the work that must finish before that changes. Discussion #219 preserves the direction and priorities as they were introduced.
The goal is to keep the reasoning behind the roadmap visible, gather real-world use cases and concerns, and publish a clear account of what Smocket values on the way to v1.0.0.
Lenses under consideration
These lenses now guide development and review. They are not a second issue taxonomy and are not necessarily equally weighted.
Fidelity remains the anchor. The durable definitions and examples live in the development lenses, while the v1.0.0 roadmap owns the release boundary.
Community contributions are welcome
For a durable guide to choosing between issues, Discussions, and documentation, see the contributing guide.
Community experience is an important input to Smocket's direction. If you have used Socket.IO or Smocket in a real project, you can help through the following contribution paths.
If Smocket does not yet support a Socket.IO behavior that your project needs, please open a
Feature Requestissue. Include the concrete use case and the relevant Socket.IO API or behavior.If Smocket produces a different observable result from real Socket.IO, please open a
Bug Reportissue. Include the versions used, expected result, actual result, and a minimal reproduction when possible.If the current API requires repetitive setup, workaround code, or unnecessary maintenance, describe the experience in a Discussion. If you already have a specific change in mind, you may open a
Feature Requestissue.If an adapter, test utility, or other convenience feature would help without changing Socket.IO behavior, describe the use case in a Discussion or open a
Feature Requestissue. Please also explain how the proposal could preserve compatibility with Socket.IO.If the current tests, CI, compatibility reports, or development processes are not sufficient for you to trust Smocket, describe what additional process would help in a Discussion.
If documentation is difficult to find, incomplete, or prevents you from contributing, please open a
Documentationissue.Concrete use cases, missing behaviors, minimal reproductions, and examples from existing Socket.IO test suites are particularly helpful when deciding what belongs in the v1.0.0 roadmap.
Current status
Work completed after v0.5.1 includes:
The v1.0.0 guarantee remains stable observable behavior and public types within the documented Socket.IO logic-layer subset. Transport fallback, heartbeat, automatic network reconnection, multi-server scaling, and binary encoding remain outside that guarantee.
Expected outcomes
The direction statement, public roadmap, development lenses, contribution paths, and application reports are published. The remaining outcome is a certified v1.0.0 release whose package versions, npm publication, tag, GitHub Release, and documentation all refer to the same reviewed candidate.
TODO