Skip to content

Add README and correct stale documentation - #3

Merged
rrohit2901 merged 2 commits into
mainfrom
docs/readme
Aug 9, 2026
Merged

Add README and correct stale documentation#3
rrohit2901 merged 2 commits into
mainfrom
docs/readme

Conversation

@rrohit2901

Copy link
Copy Markdown
Owner

The repository had no top-level README, so anyone opening it landed on a file tree. Adds one covering what exists today: the engine, the latency figures and where the time actually goes, build and usage for both C++ and Python, the design decisions worth knowing, and an honest limitations section.

Three documentation fixes alongside it:

  • The project description claimed "Lock Free". Nothing here is lock-free -- LockQueue is a mutex and a condition variable, as its own name says. The claim would not survive anyone grepping for std::atomic.
  • tests/CMakeLists.txt still said "uncomment when you add your first test file" above eight active suites.
  • bench/README.md now records that its P50s were re-verified after POSITION_INDEPENDENT_CODE was added to me_core, with the A/B against a non-PIC build that shows the difference is inside run-to-run noise.

rrohit2901 and others added 2 commits August 10, 2026 03:33
The repository had no top-level README, so anyone opening it landed on a
file tree. Adds one covering what exists today: the engine, the latency
figures and where the time actually goes, build and usage for both C++
and Python, the design decisions worth knowing, and an honest limitations
section.

Three documentation fixes alongside it:

- The project description claimed "Lock Free". Nothing here is lock-free
  -- LockQueue is a mutex and a condition variable, as its own name says.
  The claim would not survive anyone grepping for std::atomic.
- tests/CMakeLists.txt still said "uncomment when you add your first test
  file" above eight active suites.
- bench/README.md now records that its P50s were re-verified after
  POSITION_INDEPENDENT_CODE was added to me_core, with the A/B against a
  non-PIC build that shows the difference is inside run-to-run noise.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
CI broke on every run after the repository was renamed. FetchContent's
*-subbuild trees bake in absolute paths, and the workspace path contains
the repository name, so the cache saved under the old name restored into
a workspace it did not describe:

  The current CMakeCache.txt directory .../MatchingEngine/build/_deps/
  googletest-subbuild/CMakeCache.txt is different than the directory
  .../matching_engine/build/_deps/googletest-subbuild where CMakeCache.txt
  was created.

The restore-keys fallback made this unavoidable rather than transient: even
once the exact key missed, the stale cache was still the best partial match
and got restored anyway.

Putting the repository name in both the key and the restore-key means a
rename busts the cache instead of poisoning it. The v2 token clears the
already-poisoned entry.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@rrohit2901
rrohit2901 merged commit d43ba57 into main Aug 9, 2026
4 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