Product backlog — deferred

Table of Contents

The deferred bucket of the product backlog. Captures here are captures — ideas worth keeping but not yet attached to any near-term version. Things may live here for a long time.

The table below is regenerated by projects/ores.codegen/scripts/regenerate_backlog_indexes.py — do not edit the rows by hand. To add a capture, run generate_doc.sh --type capture --parent-dir doc/agile/product_backlog/deferred and re-run the script.

Captures

Capture Tags Description
ab-notebook: reproducible interest rate curve bootstrapping quantlib curves reproducibility research Luigi Ballabio's Jupyter notebook replicating the Ametrano & Bianchetti (2013) curve bootstrapping paper — a case study in research reproducibility relevant to ORE Studio's curve infrastructure.
Accumulate a tagged face dataset for profile pictures dataset seeder iam ui Build a seed catalog of generated face images (via facestudio.app), tagged by attributes, accumulated over time within API throttling limits, for use as account profile pictures.
Add "uptime" screen code Add "uptime" screen
Add a connection type derived from the local .env qt connection-manager devex environment A special Connection Manager entry type that reads its host/port/subject-prefix parameters live from the current checkout's .env instead of a stored, hand-entered value.
Add a dashboard for users code Add a dashboard for users
Add a documentation section explaining that ORE Studio is an…   Add a documentation section explaining that ORE Studio is an LLM-first system and describing the combination of MASD, Zettelkasten, and Cybernetics that underpins its information architecture.
Add a generic tagging system code Add a generic tagging system
Add a link to the Claude Code settings page in the LLM docum…   Add a link to the Claude Code settings page in the LLM documentation section, so contributors know where to configure skills, memory, and shell settings.
Add a memory for the meaning of key project directories: tmp…   Add a memory for the meaning of key project directories: tmp, samples, and others, so contributors know where transient vs permanent data lives.
Add a message queue code Add a message queue
Add batch editing with staging workflow analysis Add batch editing with staging workflow
Add chat support code Add chat support
Add codegen templates to generate Qt plugin class codegen qt templates Codegen should generate the plugin class (MarketdataPlugin pattern) alongside the other Qt files for a domain entity component.
Add compass pr comment command for PR conversation replies compass pr review gh compass review reply handles line-comment threads only; there is no compass command to post a general conversation comment on a PR, forcing a raw gh fallback.
Add counterparty party scoping (librarian Phase 2) code Add counterparty party scoping (librarian Phase 2)
Add database support for tests code Add database support for tests
Add discord support to app infra Add discord support to app
Add entity related charts code Add entity related charts
Add EOD Cut to book refdata book eod domain Each book has exactly one EOD Cut associated with it, determining which end-of-day run produces its revaluation (REVAL) reports. Not modeled today. Deferred until proper cut support exists elsewhere in the system.
Add HBAC support for books and portfolios code Add HBAC support for books and portfolios
Add heat map of user sessions code Add heat map of user sessions
Add high-watermark support code Add high-watermark support
Add ISO 20022 Support code Add ISO 20022 Support
Add KYC workflow for counterparty onboarding code Add KYC workflow for counterparty onboarding
Add more account commands code Add more account commands
Add ores.compute or ores.grid code Add ores.compute or ores.grid
Add OTLP exporter for OpenTelemetry collector code Add OTLP exporter for OpenTelemetry collector
Add party explorer ui iam A party explorer showing the party hierarchy tree. Selecting a node shows all business units under that party on the right. Supports add, delete, copy of units.
Add party level currency and country restrictions code Add party level currency and country restrictions
Add pixel-stride downsampling or MA smoothing to FX line chart ores.qt mktdata charts At 5s interval over a 40-minute window the line chart is heavily aliased; a lightweight moving-average or pixel-stride downsample option would surface macro trend more clearly.
Add pricing model parameter validation table code analytics ui database Add a table of valid pricing model parameters with their types; validate values on insertion; UI should offer available parameters for a model with type-appropriate fields.
Add purge button to all entities code Add purge button to all entities
Add self-registration and approval for production tenants code Add self-registration and approval for production tenants
Add sign-up approval workflow code Add sign-up approval workflow
Add skill to improve UI design code Add skill to improve UI design
Add skill to update vcpkg infra Add skill to update vcpkg
Add sound assets code Add sound assets
Add staging support code Add staging support
Add support for FIX code Add support for FIX
Add support for PDF generation code Add support for PDF generation
Add support for protocol debugging in Qt code Add support for protocol debugging in Qt
Add support for row signing code Add support for row signing
Add tag badges and filter widget to agile dashboard agile dashboard ux tags Display story/task tags as badges on agile dashboard cards and add a tag filter widget to the sprint and product backlog views.
Add trace context propagation to messaging protocol code Add trace context propagation to messaging protocol
Add two knowledge pages: one for CMake (what it is, how ORE …   Add two knowledge pages: one for CMake (what it is, how ORE Studio uses it, link to build pages) and one for vcpkg (what it is, how it is used, link to submodule update recipes).
Add version comparison and revert improvements code Add version comparison and revert improvements
Add virtual portfolio tree support code Add virtual portfolio tree support
Analyse caching at dialog level code Analyse caching at dialog level
Analysis on database name service code Analysis on database name service
Badge rendering inside QComboBox selected state qt badge ux combo Account type combo in AccountDetailDialog shows plain text in closed state. Full badge rendering requires QComboBox subclass overriding paintEvent, or a coloured swatch QLabel next to the combo. Defer until the pattern is needed in more than one place.
Book cost_center should reference a real accounts entity refdata book accounts data-modeling Book.cost_center is currently a free-form nullable string with no validation or link to any ledger/account structure.
C++ Complexity Measurements code C++ Complexity Measurements
Calendar-aware term structure date preview in Tenor Management marketdata tenor calendar ui Extend the Tenor Management screen's approximate ~Date column into a real, business-day-calendar-aware term structure preview once holiday calendars exist in the codebase.
Codegen gap: service application.cpp eventing pipeline not generated for new entities codegen eventing synthetic refdata gap The synthetic service application.cpp has no eventing pipeline wired up for gmm_component, fx_spot_generation_config, or market_data_generation_config. The refdata service wires this by hand: postgres_event_source + event_bus.subscribe<changed_event> + nats.publish, one block per entity. Codegen generates the changed_event header and the SQL notify trigger but does NOT generate or update application.cpp to register the entity in the eventing pipeline. This means saves/deletes in synthetic entities never trigger a stale-indicator in the Qt list window. The fix for now is to hand-write the eventing wiring in ores.synthetic/service/src/app/application.cpp mirroring ores.refdata/service/src/app/application.cpp. The longer-term fix is a codegen target or template that generates (or appends to) the service application eventing registration block, so new entities get eventing for free without a hand-edit gap.
Codegen terminology is inconsistent and misaligned with MASD…   Several terms in codegen source, docs, and tasks are misused or conflated: 'type' is used where 'metatype' is correct; 'layer' is used where 'facet' or 'technical space' is correct; 'stereotype' (a UML mechanism) appears where 'metatype' (the MASD concept) is meant; 'tier' is an invented non-MASD word. All must be aligned with the MASD glossary already established in doc/knowledge/masd/ and applied_masd.org.
compass add sprint: automatically wire the sprint into its version compass agile sprint scaffold compass add sprint scaffolds the sprint folder but leaves the version manifest untouched: the new sprint must be wired by hand into version.org's * Sprints table and the agile.org At-a-glance table (Current/Next sprint), and Previous must be set on the sprint itself. compass already knows the current version and the lexicographically previous sprint — it should do all three wirings automatically at scaffold time.
Compass search: self-improving mode for failed queries compass search llm improvement Search self-improving mode: when compass search returns no results or the user resorts to manual commands to find what they wanted, enter a self-improving mode. Track subsequent compass searches and shell commands used to compensate. Once the user locates the target document, auto-create a detailed capture recording the failed query, the workaround path taken, the found document, and a suggested improvement to the scoring/indexing. This corpus of failures becomes training data for tuning the search algorithm.
compass single-environment mode for plain clones compass env ux fleet bearings Users who clone the repo without following the ores_dev_prime_origin convention should get a fully functional but simplified compass experience with no fleet, no genesis warnings, and no worktree concepts.
Configure postgres with async IO code Configure postgres with async IO
Consider adding an "entity waterfall" code Consider adding an "entity waterfall"
Consider adding clang-tidy build infra Consider adding clang-tidy build
Consider adding log command line options to qt code Consider adding log command line options to qt
Consider adding MCP support code Consider adding MCP support
Consider adding sanitizer build infra Consider adding sanitizer build
Consider adding support for A/B testing code Consider adding support for A/B testing
Consider adding test times build infra Consider adding test times build
Consider adding the update copyrights action from quantlib infra Consider adding the update copyrights action from quantlib
Consider extending compass to use vector database techniques…   Consider extending compass to use vector database techniques such as turbovec (https://github.com/RyanCodrai/turbovec).
Consider integrating whatsapp-mcp code Consider integrating whatsapp-mcp
Consider saving screenshots of bugs directly into the task d…   Consider saving screenshots of bugs directly into the task directory and linking them from the task doc, so visual evidence is preserved alongside the work record.
Consider using getML to integrate ML code Consider using getML to integrate ML
Consider using sqls for LSP code Consider using sqls for LSP
Consider using UUID in the database layer code Consider using UUID in the database layer
Consolidate message boxes into one non-modal, copiable, standard-button ORE Studio dialog qt ui-consistency testing dx Replace ad-hoc QMessageBox/MessageBoxHelper usage with a single ORE Studio message box: standard buttons, copiable text, and non-modal so it doesn't block test-scenario screenshot capture.
Create a AAD build of ORE code Create a AAD build of ORE
Create MASD personas and link to cybernetic levels masd codegen methodology documentation Define the personas from the MASD methodology and wire them to the cybernetic levels in OreStudio, once codegen drift is resolved.
Create named profiles code Create named profiles
Create python script to split xsdcpp output code Create python script to split xsdcpp output
Create shared object interfaces code Create shared object interfaces
Create span collection and export infrastructure code Create span collection and export infrastructure
Create subsets of datasets code Create subsets of datasets
Cross-platform service-install generators (Windows, macOS) from the service deployment registry codegen systemd cross-platform deployment Once service_registry.org's deployment aspect (replicas, enabled, extra args, depends_on) exists as the single source of truth for the fleet (see process-supervisor-config-passthrough-gap story), it is deliberately platform-agnostic – nothing in the model is systemd-specific. compass systemd generate is the first consumer (Linux/systemd). Add equivalent generators for Windows (e.g. sc.exe/NSSM-based service installers, or a PowerShell script) and macOS (launchd plist generation), consuming the exact same org model, so ORE Studio's fleet can be installed as native services on all three platforms without re-modeling anything.
Currencies: Contractual Settlement (The "Agreements" Table) code Currencies: Contractual Settlement (The "Agreements" Table)
Currencies: Party-Specific Settlement Rules code Currencies: Party-Specific Settlement Rules
Custom jump distributions and cross-rate correlation matrices synthetic gmm process backlog Configurable jump-size distributions and cross-rate correlation for multi-asset synthetic FX scenarios.
Define what a product vision is before stating ORE Studio's documentation identity agile knowledge_graph The Vision section of product_identity.org goes straight to ORE Studio's specific vision statement without first explaining what a product vision is in general. Add a brief conceptual definition — probably sourced from the MASD methodology doc — before the project-specific content.
Design per-service RBAC role assignment security design iam Services currently accept any valid JWT regardless of role. Design and implement per-service role assignment so a service only accepts JWTs that carry the appropriate role.
Detect and report NATS disconnection client connection nats reliability Detect when the NATS connection or the backend services drop during an active session and surface a clear disconnected state with a way to reconnect.
Digital signatures code Digital signatures
Docker setup code Docker setup
Entity sanity/consistency checks (did-you-really-mean-X) validation data-quality refdata ux A rules-based sanity checker that flags suspicious-but-valid entity data (e.g. missing party/tenant) against an accumulating catalogue of common mistakes.
Evaluate adding screamer to ores.analytics ores.analytics third-party streaming quant screamer is a C++/Python library of causal, streaming-safe rolling indicators (moving stats, polynomial fits, signal filters) that could back real-time analytics without look-ahead bias.
Evaluate change reasons for role permission tables analysis Evaluate change reasons for role permission tables
Event Viewer advanced features code Event Viewer advanced features
Explore diffusion models for synthetic trade generation marketdata synthetic ml research TRADES (Berti, Prenkaj, Velardi, arXiv:2502.07071) trains a diffusion model on historical order-book/transaction data to generate realistic synthetic market transaction sequences.
Explore using the Emacs chart library to provide lightweight…   Explore using the Emacs chart library to provide lightweight plots of ORE Studio data (e.g. session activity, trade counts) directly inside the Emacs dashboard.
Extend ores.workflow: trade-expiry workflow code Extend ores.workflow: trade-expiry workflow
Faker with seeds code Faker with seeds
Financial workflows: trade-expiry and barrier-event code Financial workflows: trade-expiry and barrier-event
Fine-tune grants for each service account code Fine-tune grants for each service account
Fix "informations" plural naming in contact information entities code Fix "informations" plural naming in contact information entities
Fold sql_schema_artefact_create into the graph (needs content-predicate activation)   sql_schema_artefact_create is the last entity-scope archetype outside the ores.* graph. Unlike the B8 component folds it is (a) still generated via the legacy get_schema_template_mappings path (core.py:1379,2421), not the graph, and (b) conditional on entity model CONTENT (has_artefact_insert_fn / has_coding_scheme / has_image_id) — only artefact/staging entities get a _artefact_create.sql. The B8 activation seam covers static default-off + drawer-driven enable, but NOT content-predicate activation (generate iff a model property holds). Folding it neutrally needs either a new content-predicate activation mechanism in the walk, or migrating the schema-artefact generation path onto the graph first. Deferred from B8; revisit with the schema-path graph migration.
Formalize the codegen entity knob system as a proper MASD/MDE feature model codegen masd mde variability feature-model Entity-model knobs (has_change_reason_cache, has_uuid_primary_key, badge_key, …) are documented as an ad hoc flat property list today, with no explicit dependency/group structure (e.g. has_csv_xml_io implies the whole xml_*/csv_* group) and an unexamined implicit-presence-condition default (absence == false, an inversion of the literature's usual true default). Formalize this properly against both generic MDE feature-modeling vocabulary and ORE Studio's own established MASD variability model (feature/feature bundle/profile/binding point/configuration scope), resolving two open questions: (1) which knobs are MASD non-structural variability (rendering/projection config) vs structural variability (change the entity's own logical model, e.g. has_tenant_id) – these need different treatment; (2) whether 'shape' (the task EE237306 concept for a reusable knob-combination, e.g. hierarchical-composite domain_entity) should just be renamed to MASD's existing 'profile', which matches its definition closely and predates this session's ad hoc naming.
FX trade UX improvements: tabs, currency pairs, rate computation ui trades ux Split the FX forward product into tabs for clarity; introduce a currency pair concept so users select a pair not two individual currencies; compute rate automatically from notional amounts.
Gaussian GenAI: synthetic market data generation paper market_data synthetic_data genai dynamic_milestone Paper proposing a Gaussian-based GenAI methodology to generate synthetic market data, relevant to the dynamic milestone.
General session dialog code General session dialog
Generate C++ code for FPML code Generate C++ code for FPML
Generate protocol docs via codegen code Generate protocol docs via codegen
Generated entity_type_of() identifier + generic dispatch-tab…   Generated entity_type_of() identifier + generic dispatch-table registrars, as a pattern beyond history: the history-diff redesign (see doc/knowledge/architecture/history_diff_architecture.org) introduces a codegen'd entity_type_of(entity) free-function trait per entity (a single-source-of-truth string identifier, not a struct member) plus a sibling registrar shape to the existing entity-composed registrars (doc/knowledge/architecture/entity_composed_registrars.org): one shared subject/endpoint with a runtime dispatch table keyed by entity_type, instead of N compile-time-distinct per-entity subjects. This does NOT replace the existing typed CRUD registrars (save/get/delete genuinely need typed per-entity payloads, so distinct subjects stay correct there); it's the right shape specifically for operations whose payload is already generic/string-based across every entity, where history is the first instance. Worth considering for future generic cross-entity operations as they arise: audit trail, generic search/autocomplete, generic cross-navigation. When the first such second consumer appears, extract entity_type_of() and the dispatch-table registrar shape into a reusable codegen facet rather than duplicating history's.
Handle long lines in manual with line wrapping manual documentation formatting css The manual does not handle long lines gracefully; long content overflows without wrapping, hurting readability.
History and change-eventing for synthetic config entities synthetic codegen history eventing Add version-history viewing and live change-eventing to the synthetic market data generation config entities (container + fx_spot + gmm), to be produced via codegen rather than hand-written.
Hoist duplicated Qt chart theme colours into a shared helper qt synthetic charts tech-debt Chart text/grid colour constants (0xCBD5E1 text, 0xFFFFFF12-ish grid) are copy-pasted across five call sites and can drift out of sync.
Implement entity history in shell code Implement entity history in shell
Implement four-eyes authorisation framework code Implement four-eyes authorisation framework
Implement jump/Poisson stochastic process component synthetic gmm process backlog Add a jump/Poisson process type as a selectable synthetic FX spot price-process engine.
Improve error message boxes code Improve error message boxes
In-app bug report / user-voice feature with screenshot capture qt feature screenshot bug-report tooling Let users capture a screenshot and file a bug report/feedback item from anywhere in the app, stored in the database, with a CLI export path that converts them into agile captures.
Introduce clang-tidy and Lizard via PR-delta ratchet strategy cmake ci cpp tooling clang-tidy lizard Safe rollout of clang-tidy and Lizard on a large legacy C++ codebase: enforce new standards only on lines/files changed in each PR (ratchet), leaving existing technical debt untouched.
Introduce type primitive registry to replace ad-hoc type flags in codegen codegen architecture marketdata refactor Replace the growing set of is_uuid/is_date/is_timestamp/is_enum flags in codegen with a principled type registry mapping type aliases to their SQL, entity, and domain representations.
Investigate Agent-Native Architecture Audit code Investigate Agent-Native Architecture Audit
Investigate claude-code-hook-templates code Investigate claude-code-hook-templates
Investigate dashql for ideas code Investigate dashql for ideas
Investigate git UIs for history display infra Investigate git UIs for history display
Investigate GoldenCheetah for ideas on graph displays code Investigate GoldenCheetah for ideas on graph displays
Investigate GPU-batched stochastic process generation analytics.quant performance gpu synthetic Investigate a GPU/tensor-batched implementation for simulating large numbers of stochastic processes simultaneously, to avoid a future performance bottleneck.
Investigate open no-auth FX spot rate sources for seeding ores.synthetic marketdata research seeding Research freely-available open market-data endpoints (no auth) that provide vaguely-current spot rates across as many currencies as possible, to seed initial prices.
Investigate sitmo/cgmm for market data simulator synthetic marketdata gmm research Evaluate the sitmo/cgmm conditional Gaussian mixture model library as a potential port for our synthetic market data simulator.
Investigate the graphs used in dirstat code Investigate the graphs used in dirstat
Investigate the toolbar icon style in serial studio code Investigate the toolbar icon style in serial studio
Investigate time series forecasting with LLMs code Investigate time series forecasting with LLMs
Investigate virtual portfolio arbitrary hierarchy construction refdata Investigate virtual portfolio arbitrary hierarchy construction
Investigate whether org-publish can detect unchanged files a…   Investigate whether org-publish can detect unchanged files and skip re-exporting them, to speed up site rebuilds which currently re-process the entire doc graph on every run.
LLM Integration code LLM Integration
Local versus remote connectivity code Local versus remote connectivity
Long-horizon: extend the Emacs dashboard with HTTP-backed en…   Long-horizon: extend the Emacs dashboard with HTTP-backed entity views (list users, trades, etc.) served via the ORE Studio HTTP API, similar to Emacs proced. Requires clear separation of local/remote/CLI modes.
Long-running bundle publishes need progress reporting and async execution code Long-running bundle publishes need progress reporting and async execution
Make UI/UX look more professional code Make UI/UX look more professional
Management of roles code Management of roles
Market Simulator option to show data in pips ores.synthetic ui ux Add a configuration toggle in the Market Simulator to display prices and ranges in pips rather than absolute rate.
Mine dexter for ideas code Mine dexter for ideas
Mine Karpathy's wiki-based system for compass ideas compass tooling research knowledge Karpathy proposes a wiki-based knowledge system with strong commonalities to compass; review it for ideas to fold into compass.
Missing shell functionality code Missing shell functionality
Model book_status as a workflow state, not a flat enum refdata book workflow domain The domain lifecycle for opening a book is a multi-step workflow (initiation -> controller review -> enrichment by Finance/Market Risk/Operations -> approval -> access review), tracking where a book sits and who still needs to act. book_status today is a flat 3-value enum (Active/Closed/Frozen). A Pending value was added this session as a placeholder gesture toward the opening workflow but nothing actually tracks workflow position; that Pending value should be reconsidered once real workflow-state modeling is scoped (see fix_book_status_lookup_reference task for the immediate value-mismatch bug, which is separate from this deeper modeling question).
Model FX settlement type per currency pair (physical vs. NDF, business-centre dependent) refdata currency_pair fx settlement modeling Currency pair deliverability isn't a single boolean: a pair can have multiple settlement types (physical/cash-NDF), sometimes business-centre dependent, requiring a proper settlement-convention junction model instead of a currency_pair.non_deliverable flag.
Model source-book primary/secondary/tertiary relationship refdata book ledger domain A ledger book can be fed by several source books, one designated primary, the others (secondary, tertiary…) deferring to it for valuation events or cash flows. Not modeled today. Deferred until proper ledger support lands – this needs a real notion of ledger book distinct from source book first.
Modes of operation code Modes of operation
Move generic quant primitives to ores.analytics ores.synthetic ores.analytics architecture refactor Relocate quant building blocks (stochastic processes, etc.) that are not synthetic-data-specific from ores.synthetic to ores.analytics.
Normalize book's cost_center into a real Cost Centre entity refdata book ledger domain cost_center is currently free text on book, but the domain hierarchy (Legal Entity -> Entity -> Business Unit -> Cost Centre -> Ledger Book) treats Cost Centre as a formal accounting object – no such entity exists in the codebase. Deferred until proper ledger support lands, since Cost Centre only makes sense within that hierarchy.
Notification of deletes code Notification of deletes
On-demand PR and CI overview panel on story cards agile dashboard pr ci A button on each story card fetches open PRs and their CI status on demand, broken down by task, without pre-computing anything at site build time.
ORE sample data ore sample_data Source or generate a representative set of ORE input files covering the key instrument and market-data types needed for integration testing.
ORE's Python TradeGenerator could programmatically build Acme's synthetic trade portfolios ore acme synthetic python external/ore/examples/ORE-Python/TradeGenerator wraps ORE-Python's InputParameters/Portfolio API to build swaps/capfloors/FX options/equity/commodity trades by looking up conventions and curve config by index (e.g. GBP-SONIA), rather than hand-writing trade XML. Discovered while syncing external/ore/examples from a fresh ORE Engine checkout (moved from Examples/TradeGenerator to Examples/ORE-Python/TradeGenerator upstream). Worth evaluating as a building block for the Acme Corporation synthetic-entity story's trade-portfolio generation, instead of hand-crafted XML.
ores.diagrams — PlantUML/SVG diagram generator (C++, SQL, org-mode) diagrams plantuml svg codegen New Python component that generates PlantUML source from C++ headers, SQL DDL, and org-mode codegen model files, then renders to clickable SVG. Replaces manually-maintained .puml files and provides the diagram backend for a future SVG viewer app.
ores.diff: structured topology for nested entities   Extend the flat diff model with an optional path (ordered segments) on field_value/diff_entry and list-identity-aware mapping guidance, so instruments and other nested entities can diff with real topology (grouping, collapse, leg-aware changes) instead of stringly path names. Design deliberately when the first nested consumer lands.
Persistent test-context widget for the Qt client, seeded at launch qt devops testing ux A floating, always-on-top widget showing what's being tested in a given client instance, seeded from a CLI flag pointing at a JSON file (free text or a tickable checklist).
Portfolio types code Portfolio types
Properties and options visible in org-mode (e.g. right-panel…   Properties and options visible in org-mode (e.g. right-panel properties drawer) do not appear in the org-roam knowledge graph view. Investigate whether this is a graph rendering limitation or a configuration gap.
Qt: instrument creation in TradeDetailDialog instruments ore qt trades Allow users to create and associate instruments directly from the TradeDetailDialog rather than switching to a separate instrument screen.
Read up on ECS analysis Read up on ECS
Recipes do not show variables in org-babel infra Recipes do not show variables in org-babel
Redesign how currency_pair.deliverable/settlement_currency are derived refdata sql modeling currency currency.deliverable was removed (half-baked, needs proper modeling); the mechanically-derived currency_pairs seed pass now defaults every generated pair to deliverable=true/no settlement currency instead of deriving NDF status from the currency's own flag. Needs a real design for where NDF-ness lives and how pairs derive from it.
Redesign Qt ImageCache invalidation strategy code Redesign Qt ImageCache invalidation strategy
Reduce duplicated Qt code and clean up technical debt code Reduce duplicated Qt code and clean up technical debt
Reduce messaging handler boilerplate code analytics architecture Factor out common JWT verify, permission check, and logging into a base handler class or free function so individual handlers don't repeat the same preamble.
Reference paper: analytical stop-loss reinsurance pricing modelling reference actuarial research LinkedIn share of a paper on analytical pricing of time-dependent stop-loss reinsurance and exposure curves under time-changed Brownian motion.
Reference: Lean 4 formally-verified pre-trade risk gateway algo-trading formal-verification risk reference Paper on a Lean 4 reference architecture separating policy proposal from modeled authority at a pre-trade risk boundary, with machine-checked proofs of position/commitment caps for a sequential single-account/instrument trading machine.
Reference: Thales options trading bot options algo-trading reference cpp cm-jones/thales — a C++23 options trading bot using Black-Scholes and Interactive Brokers, a reference for future algo-trading work.
regenerate_backlog_indexes.py only rewrites inbox.org, next.…   regenerate_backlog_indexes.py only rewrites inbox.org, next.org and deferred.org, but discarded.org's 'Discarded captures' table claims to be auto-generated by the same script and is never written — discarded/ entries (missing_plans_index_document, ssh_variable_needs_to_be_in_env) are invisible in the index. Extend the script to cover the discarded bucket.
Remember dialog sizes and positions code Remember dialog sizes and positions
Rename compass to something like swiss knife   Compass is a misleading name, it does much more than that.
Rename or split the project glossary documentation knowledge_graph glossary zettelkasten The current glossary is really an agile glossary. A single project-wide glossary mixing agile, domain, and tooling terms would be confusing. Options: (1) rename it to 'Agile glossary'; (2) more in keeping with Zettelkasten, split it into separate focused documents — one per domain (agile, finance/ORE, tooling, etc.) — so each term lives in its natural context and is linked from relevant pages.
Replace hardcoded permission strings with per-component constants code security architecture Permission strings like analytics::pricing_engine_types:write are hardcoded inline. Each component should declare a typed permission list; handlers reference the constants.
Replace stacked MDI sub-windows with QSplitter panel for FX charts ores.qt mktdata layout charts Stacked FX spot chart MDI sub-windows clip each other when the user tiles them vertically; a dedicated splitter panel would give each chart equal guaranteed space.
Restore detached window state after login code Restore detached window state after login
Restore detail and history windows after login code Restore detail and history windows after login
Retrieve NAT'ed IP address from local IP code Retrieve NAT'ed IP address from local IP
Review of Wt code Review of Wt
Review skills in claude code templates code Review skills in claude code templates
Revisit std::atomic<std::shared_ptr<T>> once macOS libc++ supports it build osx cpp20 crm marketdata crm_ingest_bridge uses a mutex-guarded shared_ptr snapshot instead of std::atomic<std::shared_ptr<const T>> because the macOS CI toolchain (Xcode 16.2 libc++) doesn't implement the C++20 atomic<shared_ptr> specialization for non-trivially-copyable T and fails to compile. Revisit once macOS/libc++ catches up: the atomic form is the more idiomatic modern-C++ expression of the same lock-free-reads-mostly snapshot-swap pattern.
Run bootstrap wizards from ores.cli and ores.shell cli infrastructure System, tenant, and party provisioning wizards should be runnable from ores.cli or ores.shell so an operator can bootstrap without the Qt UI.
Service command-line configuration dialog with bitemporal support ui infrastructure database A dialog to view and change each service's command-line options (log level, telemetry flags, etc.) saved to the database with bitemporal history so changes are audited.
Set up clang-tidy static analysis cmake ci cpp tooling clang-tidy Complement clang-format with clang-tidy: enable a curated set of checks, integrate with compile_commands.json, add CMake targets and a nightly workflow.
Show blocked story dependency tree in compass where compass orient ux compass where shows STARTED items but not blocked chains (story C blocked by B blocked by A); surface the dependency tree with root causes in the Orient output. Re-filed from the closed CLI UX redesign story (task E3F0F75F).
Show per-environment operational status in compass fleet compass fleet operate Extend compass fleet with each worktree's operational state: services running (parse that worktree's .env for preset/label, check its publish/run PID files and readiness logs — the compass_services Ctx logic, pointed at the worktree root), client running (ores.qt*.pid), and DB last restored (query that env's database via its own credentials, e.g. a timestamp on ores_database_info_tbl). Key constraint: every check must use the target worktree's .env, never the current one's. Unlocked by the db+services compass migration.
Split the user manual into Qt and Wt manuals documentation manual wt qt Split the single user manual into separate Qt and Wt manuals — near-identical except where the apps differ — possibly using codegen to share the identical content.
Standardise Qt window behaviour and UI consistency code Standardise Qt window behaviour and UI consistency
story new: support content flags and first-task control. com…   story new: support content flags and first-task control. compass story new cannot pass –goal/–acceptance through to the story or its first task, and the first task's slug is hard-coded to implement_<story-slug> with no –task-slug or –no-task option. Scaffolding a story whose first task is a real, named task currently forces a scaffold-then-replace dance (delete the task file, re-add with compass add, preserve the UUID).
Story: Additional market data producers (e.g. Bloomberg) market_data producers backlog product_backlog Add a second producer service implementing the market data tick contract (e.g. ores.bloomberg), validating the source-agnostic producer/authority architecture. Future work under the Market data generation epic.
Story: Clear component documentation debt documentation component codegen sprint_19 v0 Bring every component's group-level modeling documentation up to standard: missing overviews, unfilled skeleton sections, and missing PlantUML diagrams flagged by validate_docs.sh; reconcile the validator with the create-component runbook's 'group overview is optional' wording.
Story: Codegen unified model — Phase 1: derive Qt fields from conventions tooling codegen sprint_22 v0 Eliminate explicit NATS protocol class names from domain_entity.json models; auto-derive Qt section from naming conventions in generator.py.
Story: Consolidate standalone scripts into compass tooling compass scripts refactor documentation sprint_19 v0 Inventory the ~61 standalone shell/Python operational scripts, design how they map onto compass pillars (new operational pillars alongside the existing Orient/Search/Scaffold/Capture/Journal), and fold them into compass as documented subcommands so there is one entry point for operating and developing the system. Supersedes and absorbs the service-registry consolidation task.
Story: Correlations and derived volatility surfaces market_data volatility correlation backlog product_backlog Correlation management (discrete per-tenor points) and driver/derived volatility-surface proxying in ores.marketdata. Future work under the Market data generation epic.
Story: Entity manual: add shell documentation per chapter documentation manual shell entities sprint_19 v0 For each entity chapter in the user manual, document the entity's Qt UI and its shell (REPL) usage side by side.
Story: Move trade import orchestration to service layer market_data trading shell cli sprint_22 v0 Move the trade-import orchestration currently embedded in ImportTradeDialog.cpp (portfolio XML parsing, per-trade save, and per-instrument-type dispatch) into a new server-side trade_import_service, backed by an import_trades_request/response NATS message pair mirroring ores.marketdata.core's import_service.
Story: Move trade-instrument parsing out of ores.qt.api refactor cmake trading qt testing sprint_19 v0 Extract the Qt-free trade-instrument parsing logic from ores.qt.api into a non-Qt component so the parse dispatch can be unit-tested by linking a real target, removing the hand-maintained source list in the test that broke when the swap TU was split out.
Story: Rethink synthetic reference-data generation across entities sprint_22 v0 Currency's ad-hoc Generate feature (client-side blue-highlighted unsaved rows, per-entity hand-wiring) is half-baked and not actually save-able; design a proper cross-entity mechanism for single + batch synthetic generation before reintroducing it anywhere.
Support multiple ORE "toolchains" code Support multiple ORE "toolchains"
Survey open-source options pricing projects options pricing research reference Catalogue of open-source options-pricing projects to evaluate when building ORE Studio's options pricing screens — models, calculators, and visualisation tools.
SVG diagram viewer — interactive JS wrapper for ores.diagrams SVGs diagrams svg javascript ui A thin JavaScript web app that embeds SVG diagrams generated by ores.diagrams, adds pan/zoom and a diagram selector panel, and shows associated documentation (org-mode HTML or GitHub source) in a right-hand detail panel on node click.
Synthetic FX generation should respect currency pair conventions synthetic marketdata refdata data-quality Synthetic FX spot/tick generation does not currently apply the tick size, decimal places, or other quoting conventions already stored in refdata's currency_pair_convention, so generated values may not be compliant with real market conventions for a pair.
Synthetic service active configuration selection synthetic service configuration market-simulator Add a mechanism for the synthetic service to know which named market-data generation config is currently active, so subscribers always receive data from the right config set.
Tangle dataset manifest and methodology from org compass datasets org-mode documentation Replace standalone manifest.json and methodology.txt with a single org-mode file that tangles into both, making datasets visible in the site and searchable via compass.
Task: Document the composite versioning approach and codegen recipe composite_entity versioning documentation codegen party counterparty sprint_22 v0 Once the mechanism is fully implemented and proven, write a doc/knowledge/architecture page explaining the approach (cross-referencing the existing target-state doc, ores.sql/PostgreSQL architecture docs, and any other related docs found), plus a codegen recipe explaining which variability knobs (:bump_parent_version:, :generate_touch_function:, :list_by_as_of:) to flip to make an entity a composite parent/child. All links must be proper org-roam ID links, cross-referenced both ways.
Task: Qt composite history/version dialog composite_entity versioning qt party counterparty sprint_22 v0 Extend the party/counterparty history dialog to show composed children state as of a selected parent version, built on the as-of composition query and the embeddable child-table widget.
Three-level hierarchy in Market Simulator config tree synthetic qt ui market-simulator Restructure the Market Simulator tree to show named config → asset-class group → individual rates, with start/stop propagating down from any level.
Tracing: OpenTelemetry identifiers across Qt and NATS analysis Tracing: OpenTelemetry identifiers across Qt and NATS
Trade-aware market data filtering for report execution code Trade-aware market data filtering for report execution
Triage existing sprint capture.org files agile triage cleanup Each sprint currently has a monolithic capture.org. Once the per-file capture workflow is in place, go through existing capture.org files: promote anything still relevant into the new format or into stories, and delete stale or already-implemented items.
Trim compass bearings: –limit and heading integration compass bearings tooling llm Reduce bearings token cost with per-command –limit and surface compass heading as the session's suggested next action.
UML class diagrams are missing relationships between classes…   UML class diagrams are missing relationships between classes, and namespace/class descriptions are absent. Add them according to crowding-avoidance rules (not every relationship, only architecturally significant ones).
Understanding Settlements and SSI analysis Understanding Settlements and SSI
Unify Account and Administration menus into a single menu qt ux menus iam admin The Account and Administration submenus under System are confusing; investigate how other systems name these and consolidate into one coherent menu.
Unify compute wrapper nodes as replicated services code Unify compute wrapper nodes as replicated services
Update all UML/PlantUML component diagrams documentation architecture Component diagrams are out of date. Update all PlantUML diagrams in modeling/ folders to reflect the current architecture.
Update timestamps to use timezone code Update timestamps to use timezone
User interface options code User interface options
User-voice experience over the product backlog ux backlog wt git product UserVoice-style portal where users browse, file, vote on and track feature requests — backed by the org-mode product backlog itself, with a service account raising capture PRs, votes as org properties, postgres-served documents, and in-UI triage that merges the capture PR.
Users should be able to add picture to profile code Users should be able to add picture to profile
Work through all types required for ORE Example 1 example1 ore types Identify and implement every ORE instrument and market-data type needed to round-trip the ORE Example 1 input files end-to-end.
Write the ORE Studio development methodology manual methodology manual documentation llm A manual documenting the five-pillar development methodology used to build ORE Studio: the Karpathy vibe-coding approach, Cybernetics, MASD, Agile, and LLMs — explaining how they integrate into a unified product-development practice with concrete examples.
Wt entity UI — top-level commissioning story ores.wt codegen ux Lift Wt web-UI commissioning out of per-entity commission-story tasks into a top-level Wt story with per-component tasks; modernize the Wt layer and bring it under codegen.

Emacs 29.3 (Org mode 9.6.15)