P3 review: P2 can read the books until the owner consents
check / check (push) Canceled after 0s

A schedule-convention setting, the two new tax categories, a disposal
before the in-service date and a depreciation catch-up each need their
feature now (tax_categories_gain_exempt, disposal_before_service,
depreciation_catch_up), so no write before consent leaves books P2 refuses
or misreads; replayed names are read with P2's TIN detector (B-28). The
cutover runs end to end through the real P2 and P3 binaries in a test.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01T3gXMVt7XJPi6ens1or9Dj
This commit is contained in:
swaitsandClaude Opus 5.5 committed 2026-10-21 17:43:45 -06:00
1 parent 6288ead747
commit 2c5b5a7171
78 files changed
+1375 -4

No files matched your search

+9 -1
View File
@@ -33,7 +33,13 @@ const TYPES: &[&str] = &[
"schedule.posted", "schedule.registered", "vendor.1099_set", "vendor.added",
"journal.format_set", "settings.set", "convention.set", "convention.retired",
"decision.recorded", "open_item.raised", "open_item.resolved", "entry.approved",
"vendor.w9_flag_set", "instrument.added", "entry.instrument_set",
"vendor.w9_flag_set", "instrument.added", "entry.instrument_set", "asset.basis_set",
"party.creditor_set", "account.renumbered", "asset.acquisition_linked", "asset.corrected",
"asset.described", "asset.serial_set", "asset.tagged", "asset.tax_basis_set",
"attachment.linked", "attachment.unlinked", "entry.no_party", "entry.parties_set",
"entry.party_set", "party.added", "party.role_set", "party.tin_set", "party.updated",
"party.w4_set", "party.w9_set", "payroll.taxes_remitted", "reconciliation.completed",
"reconciliation.voided", "role.assigned", "statement.recorded", "statement.voided",
];
const FIELDS: &[&str] = &[
@@ -51,6 +57,8 @@ const FIELDS: &[&str] = &[
"source", "decided_by", "decided_on", "kind", "title", "body_md", "structured", "subject",
"decision_md", "supersedes", "resolution", "approver", "previous", "form_1099",
"reason_kind", "effective", "instrument_id", "label", "last4", "owner_party_id",
"rule", "contributor_adjusted_basis", "fmv_at_contribution", "sec704c_method",
"tax_basis_723", "depreciable_basis", "built_in_gain_704c", "on", "convention",
];
/// A value replay might plausibly see: small ids, amounts as decimal