CN IB Filing Refresh Control
Treat a filing refresh as a controlled change program, not a search-and-replace exercise.
Principles
- Start from refresh drivers and dependencies before editing individual documents.
- Distinguish changed facts, changed periods, changed conclusions, and presentation-only edits.
- Propagate one source change to every downstream table, narrative, risk factor, opinion, and filing.
- Preserve old/new lineage and explain intentional non-updates.
- Require independent review and closure evidence for material changes.
- Scan for stale terms after editing, but treat search hits and non-hits as review leads only.
- Apply changes to existing Word filings as native tracked revisions by default.
Workflow
1. Define the refresh baseline
Record:
- old and new reporting cut-offs;
- documents and versions in scope;
- refresh drivers: new audit period, transaction change, inquiry response, rule change, corporate event, or correction;
- approved new source documents;
- freeze date, owners, reviewers, and delivery deadline.
Read references/refresh-drivers.md and build a driver-to-document impact map.
2. Build the refresh register
Use assets/refresh-register-template.csv. Create one row for each affected disclosure unit, not one row per entire document. Record old/new source, period, value, unit, change type, downstream documents, update locator, consistency review, and closure evidence.
Read references/change-taxonomy.md before classifying changes.
3. Execute in dependency order
Recommended order:
- approve new source data and definitions;
- update core financial and operating tables;
- reperform totals, ratios, changes, and CAGR;
- update narrative analysis, trends, risk factors, and conclusions;
- propagate changes to sponsor, legal, accounting, inquiry, and summary documents;
- update dates, defined terms, cross-references, contents, appendices, and signatures;
- run stale-term and cross-document checks.
Do not update narrative percentages independently from their underlying tables.
For DOCX refreshes, preserve the original, use native Word insertions and deletions, keep each amendment granular, and retain existing comments and revisions unless instructed otherwise. Do not simulate redlines with color or strikethrough. Use a transparent revision author such as Codex when none is specified.
4. Validate the control register
Generate a first-pass text delta between two DOCX versions:
bashpython3 scripts/compare_docx_text.py old.docx new.docx --output text-delta.csv
The delta preserves ordered paragraph and table-row changes but does not prove that a required update occurred. Convert material change blocks into refresh-register rows and classify their drivers and downstream effects.
Then validate the register:
Run:
bashpython3 scripts/review_refresh_register.py refresh-register.csv --output refresh-issues.csv
The script identifies incomplete lineage, missed propagation, invalid closure, lack of consistency review, and self-review.
5. Scan for stale content
Create a UTF-8 CSV using assets/stale-terms-template.csv, then run:
bashpython3 scripts/scan_stale_terms.py refreshed-file.docx stale-terms.csv --output stale-hits.csv
The scanner supports UTF-8 text/Markdown, DOCX, and PPTX text-accessible content. PDF or rendered deliverables require separate text extraction and visual inspection. A zero-hit result does not prove that the refresh is complete.
6. Perform semantic delta review
Read references/closure-standard.md. Compare old and new versions for:
- changed numbers without changed explanation;
- changed conclusion without corresponding evidence;
- inconsistent periods, units, definitions, and denominators;
- stale superlatives, rankings, market data, ages, or elapsed periods;
- inquiry-response facts not synchronized into the filing;
- deleted qualifications or new contradictions;
- cross-references and page references affected by pagination.
Use cn-ib-source-verifier to reperform sourced calculations, cn-ib-cross-document-check for propagated facts, and cn-ib-filing-proofreader for final production QC.
7. Close and release
Close an item only when the updated locator, downstream propagation, consistency check, reviewer, and closure evidence are recorded. Structurally verify that the tracked insertions and deletions exist in each revised DOCX, then re-render the final document and inspect every materially changed page.
Deliver the tracked-changes version by default. Create a clean accepted version only when explicitly requested, and never overwrite the original.
Output contract
Deliver:
- refresh scope and driver summary;
- document impact map;
- old/new change register;
- stale-content and missed-propagation issue log;
- open items by owner and severity;
- release status:
BLOCK,CONDITIONAL, orREADY; - limitations, excluded documents, and unresolved judgments.
Never describe a filing set as fully refreshed based only on textual search or redline volume.


