Skip to content

Add modernization roadmap guidance for agents (Boost shim removal, optional first)#3

Merged
tobydrinkall merged 1 commit into
masterfrom
devin/1780665820-modernization-guidance
Jun 5, 2026
Merged

Add modernization roadmap guidance for agents (Boost shim removal, optional first)#3
tobydrinkall merged 1 commit into
masterfrom
devin/1780665820-modernization-guidance

Conversation

@tobydrinkall
Copy link
Copy Markdown

@tobydrinkall tobydrinkall commented Jun 5, 2026

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::optionalstd::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 axis optional is first because ql/optional.hpp already #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 modernization covering 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 elevates optional (~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 — .docs is consumed only by Doxygen and AGENTS.md is 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

Status Commit
⚪ Not started

Run Devin Review

Open in Devin Review (Staging)
Open in Devin Review

…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-integration
Copy link
Copy Markdown

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment, CI, and merge conflict monitoring

Copy link
Copy Markdown

@devin-ai-integration devin-ai-integration Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no bugs or issues to report.

Open in Devin Review

@tobydrinkall tobydrinkall merged commit d7719a5 into master Jun 5, 2026
1 check 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