Add modernization roadmap guidance for agents (Boost shim removal, optional first)#3
Merged
Conversation
…tional first) Adds AGENTS.md and Docs/pages/modernization.docs documenting the canonical modernization task: removing the deprecated Boost compatibility shims, starting with ext::optional -> std::optional (the shim with a proven silent-correctness risk via the Boost 1.91 #error guard). Documents the dependency-ordered migration and the local verification recipe (regression + numeric equivalence). Doc-only; no source/build impact. Co-Authored-By: Toby Drinkall <toby.drinkall@cognition.ai>
🤖 Devin AI EngineerI'll be helping with this pull request! Here's what you should know: ✅ I will automatically:
Note: I can only respond to comments from users who have write access to this repository. ⚙️ Control Options:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds repo-level documentation that steers AI agents (and the Ask/Deep Wiki agent, which indexes the default branch) toward the canonical modernization task for this codebase: removing the deprecated Boost compatibility shims, starting with
ext::optional→std::optional.Two doc-only files (no source/build impact):
AGENTS.md(root) — agent-facing. Tells an agent that for open-ended prompts like "what should we modernize / what's risky?" the answer is the Boost-shim removal, and to rank by correctness risk, not blast radius. On that axisoptionalis first becauseql/optional.hppalready#errors on Boost ≥ 1.91 ("silently changed the behavior … would cause it to work incorrectly") — the only shim with a proven silent-mispricing precedent — and it sits on price-affecting public APIs (Settings::includeTodaysCashFlows_,Event::hasOccurred). Includes the dependency-ordered migration steps and the local verification recipe.Docs/pages/modernization.docs— a Doxygen\page modernizationcovering the same roadmap (priority/why, the optional migration in detail, and the proof-of-equivalence step: regression + numeric equivalence harness).Why correctness-first framing matters: a pure blast-radius ranking points at
shared_ptr(~1,270 files); framing by "could a Boost bump silently change a price?" correctly elevatesoptional(~79 files, tractable) as the flagship first migration that proves the methodology before the larger shims.This does not change any library code or the build —
.docsis consumed only by Doxygen andAGENTS.mdis inert. It complements (does not depend on) the actual migration in #1.Link to Devin session: https://app.devin.ai/sessions/d91f129a213241188cf4768afe9d6e1b
Requested by: @tobydrinkall
Devin Review