Initial commit: Four-Quadrant Balance Sheet Matrix (FQBM) framework
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
152
docs/GAPS_AND_MISSING.md
Normal file
152
docs/GAPS_AND_MISSING.md
Normal file
@@ -0,0 +1,152 @@
|
||||
# Complete IPSAS and FQBM Matrix — Gaps and Missing
|
||||
|
||||
This document lists **all remaining IPSAS standards** and **all FQBM/Matrix gaps and missing elements** as of the current codebase. It extends [IPSAS_COMPLIANCE.md](IPSAS_COMPLIANCE.md).
|
||||
|
||||
---
|
||||
|
||||
## Part A — IPSAS: Full standards list and status
|
||||
|
||||
| # | Standard | Status | Gap / note |
|
||||
|---|----------|--------|-------------|
|
||||
| **CF** | Conceptual Framework | Partial | A = L + E aligned; no revenue/expense/definition of surplus. |
|
||||
| **1** | Presentation of Financial Statements | Supported | Structure + current/non-current in `fqbm.ipsas.presentation`. |
|
||||
| **2** | Cash Flow Statements | Structure only | Template in `cash_flow_statement_structure()`; no activity classification from FQBM. |
|
||||
| **3** | Accounting Policies, Changes in Estimates and Errors | **Missing** | No policy note, prior-period adjustment, or error correction. |
|
||||
| **4** | Effects of Changes in Foreign Exchange Rates | Partial | S and pass-through only; no translation of FC assets/liabilities, no FX gain/loss disclosure. |
|
||||
| **5** | Borrowing Costs | **Missing** | No borrowing-cost capitalisation or expense classification. |
|
||||
| **6** | Consolidated and Separate Financial Statements | Partial | Sectoral (CB, bank) and consolidated view in presentation; no control definition or full consolidation mechanics. |
|
||||
| **7** | Investments in Associates | **Missing** | Not applicable to core FQBM; no equity method. |
|
||||
| **8** | Interests in Joint Ventures | **Missing** | Not applicable; no joint arrangement. |
|
||||
| **9** | Revenue from Exchange Transactions | **Missing** | No revenue recognition or measurement. |
|
||||
| **10** | Financial Reporting in Hyperinflationary Economies | **Missing** | No hyperinflation restatement (FQBM has inflation π but not restatement). |
|
||||
| **11** | Construction Contracts | **Missing** | Not applicable to monetary/financial core. |
|
||||
| **12** | Inventories | **Missing** | Not applicable. |
|
||||
| **13** | Leases | **Missing** | Not applicable to core; no right-of-use asset/lease liability. |
|
||||
| **14** | Events After the Reporting Date | **Missing** | No adjustment vs disclosure classification. |
|
||||
| **15** | Financial Instruments: Disclosure and Presentation | Partial | Presentation only; no disclosure (maturity, risk). |
|
||||
| **16** | Investment Property | **Missing** | Not applicable. |
|
||||
| **17** | Property, Plant, and Equipment | **Missing** | Not applicable; no PP&E or depreciation. |
|
||||
| **18** | Segment Reporting | **Missing** | No segment definition or segment P&L. |
|
||||
| **19** | Provisions, Contingent Liabilities and Contingent Assets | **Missing** | No provisions or contingencies. |
|
||||
| **20** | Related Party Disclosures | **Missing** | No related party identification or disclosure. |
|
||||
| **21** | Impairment of Non-Cash-Generating Assets | **Missing** | Not applicable to financial core. |
|
||||
| **22** | Disclosure of Financial Information About the General Government Sector | Partial | Sectoral structure supported; GGS boundary and entity list external. |
|
||||
| **23** | Revenue from Non-Exchange Transactions | **Missing** | No tax/transfer revenue. |
|
||||
| **24** | Presentation of Budget Information in Financial Statements | Structure only | Template in `budget_vs_actual_structure()`; budget data external. |
|
||||
| **25** | Employee Benefits | **Missing** | Not applicable to core. |
|
||||
| **26** | Impairment of Cash-Generating Assets | **Missing** | No impairment model. |
|
||||
| **27** | Agriculture | **Missing** | Not applicable. |
|
||||
| **28** | Financial Instruments: Presentation | Partial | Asset/liability split in statement of financial position. |
|
||||
| **29** | Financial Instruments: Recognition and Measurement | **Missing** | No measurement basis (amortised cost, FVOCI, FVPL) or ECL. |
|
||||
| **30** | Financial Instruments: Disclosures | **Missing** | No risk or maturity disclosure. |
|
||||
| **31** | Intangible Assets | **Missing** | Not applicable. |
|
||||
| **32** | Service Concession Arrangements: Grantor | **Missing** | Not applicable. |
|
||||
| **33** | First-Time Adoption of Accrual Basis IPSAS | **Missing** | Not applicable (no full IPSAS adoption). |
|
||||
| **34** | Separate Financial Statements | Partial | Entity-level (CB, bank) supported. |
|
||||
| **35** | Consolidated Financial Statements | Partial | Consolidated layout; no full consolidation rules. |
|
||||
| **36** | Investments in Associates and Joint Ventures | **Missing** | Not applicable. |
|
||||
| **37** | Joint Arrangements | **Missing** | Not applicable. |
|
||||
| **38** | Disclosure of Interests in Other Entities | **Missing** | No disclosure. |
|
||||
| **39** | Employee Benefits | **Missing** | Not applicable. |
|
||||
| **40** | Public Sector Combinations | **Missing** | Not applicable. |
|
||||
| **41** | Financial Instruments | **Missing** | No classification, measurement, or ECL. |
|
||||
| **42** | Social Benefits | **Missing** | Not applicable. |
|
||||
| **43** | Leases | **Missing** | Not applicable. |
|
||||
| **44** | Non-Current Assets Held for Sale and Discontinued Operations | **Missing** | Not applicable. |
|
||||
| **45** | Property, Plant, and Equipment | **Missing** | Not applicable. |
|
||||
| **46** | Measurement | **Missing** | No measurement basis (historical, FV, etc.). |
|
||||
| **47** | Revenue | **Missing** | No revenue model. |
|
||||
| **48** | Transfer Expenses | **Missing** | No transfer expense. |
|
||||
| **49** | Retirement Benefit Plans | **Missing** | Not applicable. |
|
||||
| **50** | Exploration for and Evaluation of Mineral Resources | **Missing** | Not applicable. |
|
||||
| **Cash basis** | Financial Reporting Under the Cash Basis | **Missing** | No cash-basis statement. |
|
||||
| **RPG 1** | Long-Term Sustainability of an Entity's Finances | Partial | Debt sustainability (r−g) in sovereign module; no full RPG 1 disclosure. |
|
||||
| **RPG 2** | Financial Statement Discussion and Analysis | **Missing** | No narrative. |
|
||||
| **RPG 3** | Reporting Service Performance Information | **Missing** | Not applicable. |
|
||||
| **SRS 1** | Climate-related Disclosures | **Missing** | Not applicable. |
|
||||
|
||||
---
|
||||
|
||||
## Part B — FQBM / Four-Quadrant Matrix: Gaps and missing
|
||||
|
||||
### B.1 State vector and identities
|
||||
|
||||
| Item | Status | Note |
|
||||
|------|--------|------|
|
||||
| **L_cb (central bank loans)** | **Added** | `FQBMState.L_cb` (default 0); central_bank_step updates L_cb; matrix uses state.L_cb. |
|
||||
| **Open-economy split A_dom / A_ext, L_dom / L_ext** | **Added** | `open_economy_view(A_dom, A_ext, L_dom, L_ext, E)` in `fqbm.state` returns identity check and totals. |
|
||||
| **Reporting period / reporting date** | **Added** | `FQBMState.reporting_date` (optional); `statement_of_financial_position(..., reporting_date=)` uses state.reporting_date when not passed. |
|
||||
|
||||
### B.2 Four-quadrant matrix (Part I)
|
||||
|
||||
| Item | Status | Note |
|
||||
|------|--------|------|
|
||||
| **Explicit four-quadrant layout** | **Added** | `fqbm.matrix.four_quadrant_matrix(state)` and `four_quadrant_summary(state)` return the 4-column matrix and identity check. |
|
||||
| **Quadrant balance checks** | **Added** | Summary includes `identity_A_eq_L_plus_E`. |
|
||||
| **Cross-sector consistency** | Partial | CB and bank identities implemented; no automatic check that matrix totals equal sectoral sums. |
|
||||
|
||||
### B.3 White paper parts not implemented
|
||||
|
||||
| Part | Topic | Status | Gap |
|
||||
|------|--------|--------|-----|
|
||||
| **VII** | Shadow banking and leverage | **Integrated** | `leverage_ratio()` in dashboard ratios; `margin_spiral_risk()` available; repo multiplier not modeled. |
|
||||
| **VIII** | Derivatives clearing and CCP | **Integrated** | `run_workbook(ccp_params=CCPParams(...))` returns `result["ccp"]` with identity and waterfall flag. |
|
||||
| **IX** | CBDC and digital reserve architecture | **Integrated** | `run_workbook(cbdc_params=CBDCParams(...))` applies deposit/reserve shift; `result["cbdc"]` has cbdc_liability. |
|
||||
| **XI** | Historical case expansion | **Partial** | Presets (1997, 2008, 2020, 2022) in scenarios; no narrative or coded “case” outputs. |
|
||||
|
||||
### B.4 IPSAS presentation structures added (templates only where no FQBM data)
|
||||
|
||||
| Item | Status | Location |
|
||||
|------|--------|----------|
|
||||
| Statement of financial position (IPSAS 1) | Supported | `statement_of_financial_position()` |
|
||||
| Budget vs actual (IPSAS 24) | Structure | `budget_vs_actual_structure()` |
|
||||
| Cash flow statement (IPSAS 2) | Structure | `cash_flow_statement_structure()` |
|
||||
| Statement of financial performance | Structure | `statement_of_financial_performance_structure()` |
|
||||
| Four-quadrant matrix | Supported | `fqbm.matrix.four_quadrant_matrix()` |
|
||||
|
||||
### B.5 Other missing
|
||||
|
||||
| Item | Status |
|
||||
|------|--------|
|
||||
| **Statement of changes in net assets/equity** | **Added** | `statement_of_changes_in_net_assets_structure()`. |
|
||||
| **Notes to the financial statements** | **Added** | `notes_to_financial_statements_structure()`. |
|
||||
| **Comparative period** | **Added** | `statement_of_financial_position_comparative(state_prior, state_current, entity)`. |
|
||||
| **Functional currency / presentation currency** | **Missing**. |
|
||||
| **Financial instrument maturity breakdown** | **Added** | `maturity_risk_disclosure_structure()` (maturity buckets, interest rate +100bp, credit exposure, ECL). |
|
||||
| **Interest rate sensitivity** | **Partial** | Column in maturity_risk_disclosure_structure. |
|
||||
| **Credit risk / ECL disclosure** | **Partial** | Columns in maturity_risk_disclosure_structure. |
|
||||
| **FX translation of FC positions** | **Added** | `fx_translate(fc_amount, S_prev, S_curr)`. |
|
||||
| **Cash flow from balance sheet changes** | **Added** | `cash_flow_from_state_changes(state_prev, state_curr)`. |
|
||||
|
||||
---
|
||||
|
||||
## Part C — Implementation checklist (done vs to do)
|
||||
|
||||
### Done
|
||||
|
||||
- IPSAS 1 statement of financial position (CB, bank, consolidated); uses state.L_cb and state.reporting_date.
|
||||
- IPSAS 24 budget vs actual template.
|
||||
- IPSAS 2 cash flow statement template; **cash_flow_from_state_changes(state_prev, state_curr)** infers amounts from Δstate.
|
||||
- Statement of financial performance template.
|
||||
- **Statement of changes in net assets** template.
|
||||
- **FX translation**: **fx_translate(fc_amount, S_prev, S_curr)**.
|
||||
- Four-quadrant matrix and summary; **L_cb** from state.
|
||||
- **L_cb in state**: `FQBMState.L_cb` and `reporting_date`; central_bank_step updates L_cb; differential model 12-element vector.
|
||||
- **Open economy**: **open_economy_view(A_dom, A_ext, L_dom, L_ext, E)**.
|
||||
- **Part VII**: Leverage ratio in dashboard; **run_workbook** exposes shadow metrics.
|
||||
- **Part VIII**: **run_workbook(ccp_params=CCPParams(...))** returns result["ccp"].
|
||||
- **Part IX**: **run_workbook(cbdc_params=CBDCParams(...))** applies deposit/reserve shift; result["cbdc"].
|
||||
|
||||
### Optional work (completed)
|
||||
|
||||
1. **Part VII**: **repo_multiplier(initial_collateral, haircut, rounds)** and **margin_spiral_simulation(...)** in `fqbm.sheets.shadow_banking`.
|
||||
2. **Part VIII**: **variation_margin_flow(mark_to_market_change)** and **ccp_clearing_simulation(vm_calls_per_period, liquidity_buffer_start)** in `fqbm.sheets.ccp`.
|
||||
3. **IPSAS**: **notes_to_financial_statements_structure()**; **statement_of_financial_position_comparative(state_prior, state_current, entity)**; **maturity_risk_disclosure_structure()** in `fqbm.ipsas.presentation`.
|
||||
|
||||
---
|
||||
|
||||
## References
|
||||
|
||||
- [IPSAS_COMPLIANCE.md](IPSAS_COMPLIANCE.md) — Scope and how to use the IPSAS layer.
|
||||
- IPSASB (2025). *Handbook of International Public Sector Accounting Pronouncements*. IFAC.
|
||||
- White paper: Four-Quadrant Balance Sheet Matrix, Parts I–XVI.
|
||||
Reference in New Issue
Block a user