Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
341 commits
Select commit Hold shift + click to select a range
5e6e01d
Audit readiness promotion evidence
YuzeJ21 Jul 19, 2026
849800e
Advance promotion evidence lineage
YuzeJ21 Jul 19, 2026
ffe9511
Design readiness change cause review
YuzeJ21 Jul 19, 2026
8fd61e2
Explain readiness change causes
YuzeJ21 Jul 19, 2026
cf81319
Advance change cause lineage
YuzeJ21 Jul 19, 2026
8b52ae9
Design DCF price lineage review
YuzeJ21 Jul 19, 2026
cc85cb5
Plan DCF price lineage review
YuzeJ21 Jul 19, 2026
ec601f6
Audit DCF price source lineage
YuzeJ21 Jul 19, 2026
0629bf6
Design prospective price lineage preservation
YuzeJ21 Jul 19, 2026
85495b0
Plan prospective price lineage preservation
YuzeJ21 Jul 19, 2026
e111b0b
Preserve prospective price lineage
YuzeJ21 Jul 19, 2026
537ca39
Design staged price rights review
YuzeJ21 Jul 19, 2026
b197000
Plan staged price rights review
YuzeJ21 Jul 19, 2026
53c925b
Review staged price source rights
YuzeJ21 Jul 19, 2026
d26d640
Design commercial price apply guard
YuzeJ21 Jul 19, 2026
aa12d0e
Plan commercial price apply guard
YuzeJ21 Jul 19, 2026
c88aca7
Guard commercial price apply
YuzeJ21 Jul 19, 2026
cd99aa0
Design consensus source rights guard
YuzeJ21 Jul 19, 2026
9b15faf
Plan consensus source rights guard
YuzeJ21 Jul 19, 2026
bf49a18
Guard commercial consensus collection
YuzeJ21 Jul 19, 2026
df16288
Design consensus batch preflight
YuzeJ21 Jul 19, 2026
b2d5f85
Plan consensus batch preflight
YuzeJ21 Jul 19, 2026
984b037
Guard prospective consensus batches
YuzeJ21 Jul 19, 2026
b8150aa
Design consensus source validation rights
YuzeJ21 Jul 19, 2026
d03cd57
Plan consensus source validation rights
YuzeJ21 Jul 19, 2026
b520856
Derive consensus source validation rights
YuzeJ21 Jul 19, 2026
c18cf73
Design consensus source temporal integrity
YuzeJ21 Jul 19, 2026
e48cab7
Plan consensus source temporal integrity
YuzeJ21 Jul 19, 2026
dc5925a
Enforce consensus source review cutoff
YuzeJ21 Jul 19, 2026
7d85ad4
Design shared commercial field scope review
YuzeJ21 Jul 19, 2026
b7013f1
Plan shared commercial field scope review
YuzeJ21 Jul 19, 2026
44f990d
Unify consensus commercial evidence review
YuzeJ21 Jul 19, 2026
6aa9c0c
Design consensus source review command
YuzeJ21 Jul 19, 2026
49245d6
Plan consensus source review command
YuzeJ21 Jul 19, 2026
c7e81d6
Add consensus source review command
YuzeJ21 Jul 19, 2026
41863fe
Clarify consensus review input handoff
YuzeJ21 Jul 19, 2026
f282d86
Add PR engineering legitimacy gate
YuzeJ21 Jul 19, 2026
7f51894
Fix hosted CI test dependency
YuzeJ21 Jul 19, 2026
3220e8c
Make source preflight test deterministic
YuzeJ21 Jul 19, 2026
1fdcaaa
Install project package in PR gate
YuzeJ21 Jul 19, 2026
a118a59
Record hosted PR gate evidence
YuzeJ21 Jul 19, 2026
df67f00
Design commercial price refresh enforcement
YuzeJ21 Jul 19, 2026
5997d84
Plan commercial price refresh enforcement
YuzeJ21 Jul 19, 2026
dab378b
Enforce commercial price refresh rights
YuzeJ21 Jul 19, 2026
94d1d35
Design cohort field scope enforcement
YuzeJ21 Jul 19, 2026
474445d
Plan cohort field scope enforcement
YuzeJ21 Jul 19, 2026
fb47232
Enforce cohort field scope by lane
YuzeJ21 Jul 19, 2026
8aba38f
Design cohort price history scope
YuzeJ21 Jul 19, 2026
e466d08
Plan cohort price history scope
YuzeJ21 Jul 19, 2026
0141fc7
Enforce cohort price history scope
YuzeJ21 Jul 20, 2026
20f973f
Design cohort quarterly field scope
YuzeJ21 Jul 20, 2026
30ace0d
Enforce cohort quarterly field scope
YuzeJ21 Jul 20, 2026
dc7ed7c
Design EPS split basis enforcement
YuzeJ21 Jul 20, 2026
093c213
Enforce EPS split basis downstream
YuzeJ21 Jul 20, 2026
50b90c4
Prove filed Q4 split basis boundary
YuzeJ21 Jul 20, 2026
ee5ebf1
Design consensus ledger integrity
YuzeJ21 Jul 20, 2026
95bafbf
Enforce consensus ledger integrity
YuzeJ21 Jul 20, 2026
8dee681
Design price lineage apply integrity
YuzeJ21 Jul 20, 2026
0ede3aa
Enforce price lineage temporal integrity
YuzeJ21 Jul 20, 2026
7ba5e76
Fail closed on rejected quarterly ledgers
YuzeJ21 Jul 20, 2026
9d26704
Gate optional evidence by commercial scope
YuzeJ21 Jul 20, 2026
781ba24
Check PR hygiene across commit range
YuzeJ21 Jul 20, 2026
44eaa72
Withhold unproven filed Q4 EPS basis
YuzeJ21 Jul 20, 2026
9d8940e
Design SEC quarterly cash generation pilot
YuzeJ21 Jul 20, 2026
b23b829
Require exact SEC acceptance timestamp
YuzeJ21 Jul 20, 2026
1c8d538
Plan SEC quarterly cash generation pilot
YuzeJ21 Jul 20, 2026
5270c3e
Parse exact SEC quarterly cash evidence
YuzeJ21 Jul 20, 2026
b2d85b4
Review SEC cash generation field scope
YuzeJ21 Jul 20, 2026
a262eda
Add read-only SEC cash generation preview
YuzeJ21 Jul 20, 2026
6f6b224
Document SEC cash generation pilot evidence
YuzeJ21 Jul 20, 2026
c8253e0
Design Workbench cash generation preview
YuzeJ21 Jul 21, 2026
734afdd
Plan Workbench cash generation preview
YuzeJ21 Jul 21, 2026
ae1b1dd
Add Workbench cash preview contract
YuzeJ21 Jul 21, 2026
8f9e460
Load bounded Workbench cash preview
YuzeJ21 Jul 21, 2026
973bb32
Render explicit Workbench cash preview
YuzeJ21 Jul 21, 2026
df1d1a2
Document Workbench cash preview evidence
YuzeJ21 Jul 21, 2026
11ac530
Design Workbench cash preview portability
YuzeJ21 Jul 21, 2026
31f83b3
Plan Workbench cash preview portability
YuzeJ21 Jul 21, 2026
e54a717
Add bounded AMD cash preview filing
YuzeJ21 Jul 21, 2026
8eb299b
Prove explicit AMD cash preview route
YuzeJ21 Jul 21, 2026
532e0d7
Document bounded cash preview portability
YuzeJ21 Jul 21, 2026
7d463ba
Harden valuation and backtest evidence integrity
YuzeJ21 Jul 21, 2026
c9aaf63
Document evidence integrity hardening
YuzeJ21 Jul 21, 2026
c53cb27
Design Company Workbench task arbitration
YuzeJ21 Jul 21, 2026
bc61864
Add authoritative research task arbitration
YuzeJ21 Jul 21, 2026
bd3cbb5
Clarify research routing card labels
YuzeJ21 Jul 21, 2026
a4480bd
Compose authoritative Workbench task
YuzeJ21 Jul 21, 2026
9cb4fec
Tighten Workbench task composition contract
YuzeJ21 Jul 21, 2026
358f79c
Harden Company Workbench task arbitration
YuzeJ21 Jul 21, 2026
d141b6d
Distinguish empty Workbench change context
YuzeJ21 Jul 21, 2026
ae91bc1
Upgrade PR workflow action runtimes
YuzeJ21 Jul 21, 2026
1f52a3a
Design public mobile evidence handoff
YuzeJ21 Jul 21, 2026
f2840ae
Plan public mobile evidence handoff
YuzeJ21 Jul 21, 2026
4ce046d
Keep mobile evidence handoff in view
YuzeJ21 Jul 21, 2026
d15940c
Tighten mobile evidence handoff spacing
YuzeJ21 Jul 21, 2026
519dc5b
Record verified mobile handoff spacing
YuzeJ21 Jul 21, 2026
f7d51cb
Document public mobile workflow audit
YuzeJ21 Jul 21, 2026
5d4bec8
Finalize mobile evidence handoff spacing
YuzeJ21 Jul 21, 2026
feb56f4
Design public UX post-fix outcome contract
YuzeJ21 Jul 21, 2026
781a132
Plan public UX post-fix outcome contract
YuzeJ21 Jul 21, 2026
74eb405
Recognize verified public UX post-fix outcomes
YuzeJ21 Jul 21, 2026
0235fae
Document public UX post-fix review readiness
YuzeJ21 Jul 21, 2026
19b4858
Design proof readiness reconciliation
YuzeJ21 Jul 21, 2026
d65581a
Plan proof readiness reconciliation
YuzeJ21 Jul 21, 2026
da37651
Reconcile proof history with current readiness
YuzeJ21 Jul 21, 2026
7253727
Expose proof readiness reconciliation
YuzeJ21 Jul 21, 2026
06e3057
Show proof readiness conflicts in Proof History
YuzeJ21 Jul 21, 2026
b1a50e3
Document proof readiness reconciliation
YuzeJ21 Jul 21, 2026
c6b01c7
Design proof readiness conflict diagnosis
YuzeJ21 Jul 21, 2026
c0c5c5a
Plan proof readiness conflict diagnosis
YuzeJ21 Jul 21, 2026
d33b6a5
Diagnose proof readiness conflicts
YuzeJ21 Jul 21, 2026
ef12758
Expose proof conflict diagnosis
YuzeJ21 Jul 21, 2026
0f5e901
Show current blockers in Proof History
YuzeJ21 Jul 21, 2026
216ec66
Document proof conflict diagnosis
YuzeJ21 Jul 21, 2026
c4fe02d
Bind proof support to changed tickers
YuzeJ21 Jul 21, 2026
41a927c
Harden proof conflict input diagnosis
YuzeJ21 Jul 21, 2026
a39b0ba
Clarify partial proof diagnosis status
YuzeJ21 Jul 21, 2026
1a91769
Design prospective field proof contract
YuzeJ21 Jul 21, 2026
cdd7e53
Plan prospective field proof implementation
YuzeJ21 Jul 21, 2026
ab5ea21
Add prospective field proof ledger integrity
YuzeJ21 Jul 21, 2026
adce628
Fail closed prospective field proof ledger loading
YuzeJ21 Jul 21, 2026
ac19ebc
Add reviewed field proof preview and append
YuzeJ21 Jul 21, 2026
5af96db
Harden reviewed field proof append
YuzeJ21 Jul 21, 2026
2c3f1b5
Clean up failed field proof creation
YuzeJ21 Jul 21, 2026
71bd4aa
Expose prospective field proof workflow
YuzeJ21 Jul 21, 2026
2c73984
Harden prospective field proof interfaces
YuzeJ21 Jul 21, 2026
5d23159
Correct field proof documentation scope
YuzeJ21 Jul 21, 2026
6ca9c55
Document prospective field proof operations
YuzeJ21 Jul 22, 2026
adf07e7
Fix consensus launcher target extraction
YuzeJ21 Jul 22, 2026
2540fe9
Fix field proof documentation contracts
YuzeJ21 Jul 22, 2026
7a4a2b4
Reject non-UTC field proof timestamps
YuzeJ21 Jul 22, 2026
7d6c9cc
Withhold invalid field proof identities
YuzeJ21 Jul 22, 2026
23bec74
Fix public report loading handoff
YuzeJ21 Jul 22, 2026
4395cf0
Document public loading handoff regression fix
YuzeJ21 Jul 22, 2026
7bb058f
Fix unstyled selected ticker spacing
YuzeJ21 Jul 22, 2026
20864b6
Correct prospective proof continuation contract
YuzeJ21 Jul 22, 2026
06718e4
Guard prospective proof contract wording
YuzeJ21 Jul 22, 2026
1a144c9
Design Workbench answer-first handoff
YuzeJ21 Jul 22, 2026
ca4772f
Improve Workbench answer-first handoff
YuzeJ21 Jul 22, 2026
6739d14
Record Workbench implementation evidence
YuzeJ21 Jul 22, 2026
5dead2a
Document public packaging reconciliation design
YuzeJ21 Jul 22, 2026
e9dc19f
Plan public packaging reconciliation
YuzeJ21 Jul 22, 2026
5fc7b40
Reconcile public research packaging
YuzeJ21 Jul 22, 2026
54e06e1
Design research decision lab
YuzeJ21 Jul 22, 2026
988c72c
Add research decision lab roadmap
YuzeJ21 Jul 22, 2026
43fc312
Plan research decision lab implementation
YuzeJ21 Jul 22, 2026
1cfed74
Add research decision lab composition
YuzeJ21 Jul 22, 2026
a4786bb
Integrate decision lab into company workbench
YuzeJ21 Jul 22, 2026
c7ad977
Add monitor research discipline review
YuzeJ21 Jul 22, 2026
7493be7
Document decision lab release evidence
YuzeJ21 Jul 22, 2026
8c460ad
Make onboarding artifact check order independent
YuzeJ21 Jul 22, 2026
e5c8db1
Add next-stage maturity program
YuzeJ21 Jul 22, 2026
028c5af
Design legacy research utility quarantine
YuzeJ21 Jul 22, 2026
0424ca5
Quarantine legacy research utilities
YuzeJ21 Jul 22, 2026
423548e
Add field proof history audit
YuzeJ21 Jul 22, 2026
f280085
Design in-app research record authoring
YuzeJ21 Jul 23, 2026
89f4f3d
Plan in-app research record authoring
YuzeJ21 Jul 23, 2026
6b7cdbd
Add research record authoring previews
YuzeJ21 Jul 23, 2026
996d866
Add exact research record confirmation
YuzeJ21 Jul 23, 2026
10c2c15
Add research record authoring composer
YuzeJ21 Jul 23, 2026
e67b16d
Integrate research authoring in Company Workbench
YuzeJ21 Jul 23, 2026
fc6173d
Complete in-app research record authoring
YuzeJ21 Jul 23, 2026
0775811
Harden research authoring confirmation
YuzeJ21 Jul 23, 2026
b9425de
Document research authoring hardening
YuzeJ21 Jul 23, 2026
e3a090d
Enforce exact research authoring revisions
YuzeJ21 Jul 23, 2026
810c8e6
Document final authoring integrity audit
YuzeJ21 Jul 23, 2026
99a0575
Keep public README concise
YuzeJ21 Jul 23, 2026
5a6c559
Bind exact authoring confirmation metadata
YuzeJ21 Jul 23, 2026
36f3982
Document exact confirmation integrity
YuzeJ21 Jul 23, 2026
8aa92ac
Cover all research authoring UI flows
YuzeJ21 Jul 23, 2026
77997c4
Fix primary research action contrast
YuzeJ21 Jul 23, 2026
d3cf81d
Improve research workflow semantics
YuzeJ21 Jul 23, 2026
3cf58ed
Add accessibility review protocol
YuzeJ21 Jul 23, 2026
dffc5fc
Design point-in-time universe foundation
YuzeJ21 Jul 23, 2026
18fa29f
Plan point-in-time universe foundation
YuzeJ21 Jul 23, 2026
2f1d55a
Add immutable universe package loader
YuzeJ21 Jul 23, 2026
a2d9888
Harden immutable universe manifest validation
YuzeJ21 Jul 23, 2026
1c56e1f
Validate immutable universe manifest records
YuzeJ21 Jul 23, 2026
b636534
Require complete UTC manifest timestamps
YuzeJ21 Jul 23, 2026
6f5f439
Add point-in-time universe contracts
YuzeJ21 Jul 23, 2026
ca642e1
Harden point-in-time universe contracts
YuzeJ21 Jul 23, 2026
c0cb7a9
Preserve malformed universe evidence rows
YuzeJ21 Jul 23, 2026
1edf6f8
Validate historical universe identity and membership
YuzeJ21 Jul 23, 2026
08b4196
Fix universe lineage and membership independence
YuzeJ21 Jul 24, 2026
dc8c6f9
Enforce universe action and rights gates
YuzeJ21 Jul 24, 2026
8805937
Fix universe listing-state gates
YuzeJ21 Jul 24, 2026
757ce85
Reject simultaneous universe reactivation
YuzeJ21 Jul 24, 2026
20d9c37
Add leakage-safe universe reproduction
YuzeJ21 Jul 24, 2026
80eb411
Fix universe cutoff partition gates
YuzeJ21 Jul 24, 2026
f095c7f
Add read-only universe validation commands
YuzeJ21 Jul 24, 2026
115fac1
Handle invalid universe package CLI errors
YuzeJ21 Jul 24, 2026
7db1290
Complete universe foundation acceptance matrix
YuzeJ21 Jul 24, 2026
1361472
Harden universe acceptance proof
YuzeJ21 Jul 24, 2026
1ece7a3
Document point-in-time universe validator
YuzeJ21 Jul 24, 2026
fa230e2
Fix Task 8 continuation reliance anchor
YuzeJ21 Jul 24, 2026
7cae827
Bind universe validation to verified snapshots
YuzeJ21 Jul 24, 2026
249298a
Enforce universe coverage and interval contracts
YuzeJ21 Jul 24, 2026
aad5ec6
Collapse equivalent universe cutoff digests
YuzeJ21 Jul 24, 2026
aa1c5da
Enforce event lineage at evaluation cutoffs
YuzeJ21 Jul 24, 2026
6c947a5
Scope event evidence to valid evaluated members
YuzeJ21 Jul 24, 2026
c0d8137
Unify valid evaluation scope across universe gates
YuzeJ21 Jul 24, 2026
37136ff
Propagate rejected evaluation classifications
YuzeJ21 Jul 24, 2026
a5d2da9
Preserve complete universe row classifications
YuzeJ21 Jul 24, 2026
4829475
Harden universe lineage row classifications
YuzeJ21 Jul 24, 2026
67ea794
Resolve universe lineage per evidence scope
YuzeJ21 Jul 24, 2026
c68d8ed
Bind universe provenance to exact source rows
YuzeJ21 Jul 24, 2026
82f394b
Classify invalid membership rows exactly
YuzeJ21 Jul 24, 2026
0774cee
Scope membership semantics to evaluation cutoffs
YuzeJ21 Jul 24, 2026
b39f80f
Prevent future evidence from promoting coverage
YuzeJ21 Jul 24, 2026
d7447d2
Bound universe validation resources and review claims
YuzeJ21 Jul 24, 2026
9465e2c
Anchor bounded universe continuation
YuzeJ21 Jul 24, 2026
f9c5173
Close temporal rights and bounded read gaps
YuzeJ21 Jul 24, 2026
57d06b7
Anchor temporal universe remediation continuation
YuzeJ21 Jul 24, 2026
46aae21
Correct universe remediation anchor
YuzeJ21 Jul 24, 2026
b4892b4
Close universe remediation review gaps
YuzeJ21 Jul 24, 2026
9239264
Anchor universe review follow-up
YuzeJ21 Jul 24, 2026
aa74caf
Bound combined universe snapshot reads
YuzeJ21 Jul 24, 2026
59cade0
Anchor combined universe budget follow-up
YuzeJ21 Jul 24, 2026
288a5e6
Handle deeply nested universe inputs cleanly
YuzeJ21 Jul 24, 2026
4053db7
Update Priority 4 review continuation
YuzeJ21 Jul 24, 2026
7c2378f
Scope manifest recursion handling to parsing
YuzeJ21 Jul 24, 2026
db9d1ea
Anchor scoped universe parser follow-up
YuzeJ21 Jul 24, 2026
b2bbd99
Enforce universe identifier and manifest chronology safety
YuzeJ21 Jul 24, 2026
3996442
Update universe review continuation
YuzeJ21 Jul 24, 2026
7719ec6
Avoid make-command ambiguity in review docs
YuzeJ21 Jul 24, 2026
c643d06
Close universe Unicode record separator gaps
YuzeJ21 Jul 24, 2026
afe2938
Update universe separator review truth
YuzeJ21 Jul 24, 2026
69c4996
Freeze point-in-time universe foundation
YuzeJ21 Jul 26, 2026
f08ea54
Reconcile Priority 4 release evidence
YuzeJ21 Jul 26, 2026
9c82ce6
Design provider-neutral workspace authorization
YuzeJ21 Jul 26, 2026
9cce6ff
Plan workspace authorization implementation
YuzeJ21 Jul 26, 2026
a1379aa
Fix authorization plan whitespace
YuzeJ21 Jul 26, 2026
9cdd8be
Add workspace authorization trust boundary
YuzeJ21 Jul 26, 2026
867556c
Clarify authorization audit field plan
YuzeJ21 Jul 26, 2026
b6108a3
Enforce fail-closed workspace authorization
YuzeJ21 Jul 26, 2026
3c5a2bc
Document workspace authorization boundary
YuzeJ21 Jul 26, 2026
90b441d
Harden workspace authorization boundary
YuzeJ21 Jul 26, 2026
369da3a
Reconcile authorization hardening lineage
YuzeJ21 Jul 26, 2026
d99e081
Align product stage and evidence-first positioning
YuzeJ21 Jul 27, 2026
d2d58f9
Separate active roadmap from universe review history
YuzeJ21 Jul 27, 2026
125127f
Keep workflow skip navigation in page
YuzeJ21 Jul 27, 2026
09d6734
Increase framework control target sizes
YuzeJ21 Jul 27, 2026
15c5270
Target actual framework controls
YuzeJ21 Jul 27, 2026
6aef0f8
Record direct keyboard workflow findings
YuzeJ21 Jul 27, 2026
1a87277
Record reflow and phone target evidence
YuzeJ21 Jul 27, 2026
b1dd457
Record Monitor accessibility evidence
YuzeJ21 Jul 27, 2026
c748b19
Record keyboard authoring validation evidence
YuzeJ21 Jul 27, 2026
f50ec95
Record phone navigation accessibility evidence
YuzeJ21 Jul 27, 2026
88d7a9c
Harden independent beta validation protocol
YuzeJ21 Jul 27, 2026
4e79854
Reconcile active roadmap truth
YuzeJ21 Jul 27, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
49 changes: 49 additions & 0 deletions .github/workflows/commercial-research-beta.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Commercial Research Beta

on:
pull_request:
branches: [main]

permissions:
contents: read

jobs:
local-engineering-gate:
runs-on: ubuntu-latest
timeout-minutes: 30
env:
PYTHONDONTWRITEBYTECODE: "1"
PR_BASE_SHA: ${{ github.event.pull_request.base.sha }}
PR_HEAD_SHA: ${{ github.event.pull_request.head.sha }}
steps:
- name: Check out pull request revision
uses: actions/checkout@v6
with:
fetch-depth: 0
ref: ${{ github.event.pull_request.head.sha }}

- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: "3.12"

- name: Install dependencies
run: python3 -m pip install -e . pytest

- name: Run full test suite
run: python3 -m pytest tests -q

- name: Smoke-test dashboard startup
run: make dashboard-smoke

- name: Render Personal Research routes
run: make research-dashboard-render-smoke

- name: Check public wording
run: make public-wording-check

- name: Check generated-artifact hygiene
run: make pr-range-hygiene-check BASE_SHA="$PR_BASE_SHA" HEAD_SHA="$PR_HEAD_SHA"

- name: Check whitespace
run: git diff --check "$PR_BASE_SHA...$PR_HEAD_SHA"
284 changes: 259 additions & 25 deletions Makefile

Large diffs are not rendered by default.

26 changes: 24 additions & 2 deletions PRODUCT_SPEC.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,31 @@ This project is a local, CSV-first stock research command center. It helps a use

The product is not a trading bot. It does not place orders, connect to brokers, recommend options trades, or fabricate missing market, fundamentals, earnings, or analyst-estimate data.

The supported workflow is `Research Desk -> Discover -> Company Workbench -> Monitor`. Operator-only legacy compatibility utilities are retained for deterministic regression and historical file contracts, not as current investing capability.

## In-App Reviewed Research Records

Thesis, evidence, catalyst, and outcome records are all available in the collapsed Company Workbench composer.
A valid record requires an exact preview and explicit confirmation before save.
Final integrity commit `e3a090dba` ensures confirmation appends only the receipt-matched recomputed record and enforces one readable active thesis lineage: revisions must supersede the exact active entry and preserve its thesis ID. The Company Workbench locks and explains that relationship, with temporary-ledger create -> revise -> reload coverage.
Confirmation-integrity commit `5a6c55921` binds every displayed preview field, preview time, and destination label to the exact receipt. If an append raises after it may have written, confirmation returns one-shot `save_pending_reload` with the exact record ID unless the locked ledger is provably unchanged; it never invites a blind duplicate retry.
Drafts are untrusted and preview receipts are session-only.
Production tests never append repository ledgers; persistence tests use temporary ledgers.
A saved record cannot change readiness, forecasts, probabilities, recommendations, or any other ledger.

Priority 4's local validator is frozen; its permitted real-data exit gate remains externally incomplete.
Priority 6's provider-neutral authorization contract is complete locally; hosted implementation remains environment-dependent.
Priority 7 accessibility remediation is the next safe executable local lane.

## Target User

The target user is an individual investor or research reviewer who wants a deterministic local workflow for:

- maintaining a broad market universe;
- narrowing that universe into an active research list;
- reviewing portfolio holdings;
- reviewing one company and its source-backed research record;
- tracking readiness by analysis feature;
- generating watchlists only when the needed data exists;
- monitoring a focused cohort without ranking companies for action;
- seeing exact data blockers and next import actions.

## Non-Goals
Expand Down Expand Up @@ -99,6 +115,12 @@ The product is now organized around a few research-facing surfaces:

The primary public path is: Home workflow start -> Stock Selector -> Single-Stock Report -> Data Health lane answer -> Proof History evidence.

## Legacy Compatibility Boundary

`Monthly Picks`, `Momentum Leaders`, `Portfolio Review`, `Value / Re-rating`, and `Final Watchlist` are Operator-only compatibility utilities. Every retained page is labeled **Legacy research utility — not part of Personal Research Mode**, and its detailed output is hidden behind an explicit collapsed compatibility control.

These utilities preserve historical algorithms, regression checks, and output filenames only. They cannot feed Research Decision Lab, cannot change readiness, and cannot produce recommendations, sizing, or transaction behavior. Public and Personal Research routes cannot open them. Retained position, cost-basis, disposition, ranked-candidate, or action-like fields are not supported product claims.

These surfaces must show supported, blocked, partial, and excluded states before showing detailed tables. Broad-universe tables, command blocks, route maps, and proof ledgers should stay filtered, row-limited, collapsed, or operator-scoped by default.

## MVP Definition
Expand Down
2 changes: 2 additions & 0 deletions READINESS_MODEL.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,8 @@ The feature does not apply to this ticker or asset type.
| `portfolio_ready` | holdings, prices, purpose metadata | holding row plus enough relevant data for review component | holding ticker parseable, position fields numeric when present | `portfolio_review.csv` | show review state | show missing components | mark holding blocked | not applicable |
| `final_decision_ready` | central readiness report plus analysis outputs | enough data for the chosen decision bucket | blocked features reduce confidence | `research_decisions.csv`, `final_watchlist.csv` | show decision bucket and confidence | show reduced confidence | classify as Blocked by Data | classify as Excluded |

`momentum_ready`, `portfolio_ready`, and `final_decision_ready` remain compatibility-only readiness rows for historical pipelines. Their retained pages are labeled **Legacy research utility — not part of Personal Research Mode** and are available only in Operator mode behind a collapsed compatibility control. They cannot feed Research Decision Lab, cannot change readiness outside their own historical calculation contracts, and cannot produce recommendations, sizing, or transaction behavior. Personal Research and Public routes do not expose these rows as current product capability.

## General Dashboard Rules

- Show readiness before conclusions.
Expand Down
Loading