Group register and consolidation: questions for the accounting or corporate adviser
Prepared 2026-10-05 from the repository at bc0c833c. Not sent. This closes the adviser gates in docs/ROADMAP.md Phase 6 (multi-entity consolidation): the register’s gate “adviser confirms Companies Act 2016 s.4 and the accounting-records retention period” and the stage 2 gate “the adviser has not confirmed it (D16)”. It is a focused, send-ready companion to the longer 2026-10-04-phase-6-adviser-and-owner-questions.md (Part A there has more questions; this brief does not replace it).
What is NOT claimed. The product asserts no legal or accounting conclusion. Every statement below about the Companies Act 2016 or an MFRS is the author’s recollection or a note supplied to the author, not read from the Act or the standard, and is offered only so the adviser can confirm or correct it. Every label the product shows for a relationship says “presumed” until a second person approves a written assessment. Every consolidation run is labelled a management consolidation, not statutory group accounts. “Until answered” describes what the software does now, which is the engineering team’s choice, not advice.
Sources: reg = docs/superpowers/specs/2026-10-03-group-register-design.md; con = docs/superpowers/specs/2026-10-03-consolidation-runs-design.md; derive.go = internal/platform/group/derive.go.
Branch status of one item. Section 6 (the 2026-10-05 inter-company rule) is built on two branches, consolidation-ic-from-control-accounts and consolidation-unmapped-party-warning, not yet merged to main. Its spec text (con 6.2.1) is on those branches only. It is described here from that text and from migrations 00944 and 00945 on them.
1. What this is, in five lines
Section titled “1. What this is, in five lines”An organization (the “owner”) keeps a register of a corporate group: entities, dated shareholdings, approved judgments about control and influence, beneficial owners, and consents from member organizations to read their books. Relationships for any date are derived from the shareholdings and labelled presumed. A consolidation run then reads each consenting member’s trial balance, translates to one currency, eliminates inter-company items, and shows consolidated statements. The register and runs are built; no real customer uses them; test data only.
2. Questions
Section titled “2. Questions”Format for each: Now (exact behaviour), Answer changes (what we alter), Reply: yes/no or short answer.
A. Companies Act 2016 s.4 as implemented in the register
Section titled “A. Companies Act 2016 s.4 as implemented in the register”Q1. Are these the limbs of “holding company” in s.4? A corporation is the holding company of another if it (i) controls the composition of the board (can appoint or remove all or a majority of directors), (ii) controls more than half of the voting power, or (iii) holds more than half of the issued shares, preference shares excluded; indirect relationships count (reg section 4 item 0; the wording came from a note, not the Act).
- Now (
derive.go,RelationshipsAt): the result ispresumed_subsidiaryif total voting is over 50%, or total ordinary-share ownership is over 50%, or a board-control flag is recorded on a direct holding; otherwisepresumed_not_subsidiary. Preference shares are excluded from ownership only; votes sum every class. - Reply: (a) limbs correct, yes/no, and the corrections; (b) is the “issued shares” test measured on all issued shares or only voting or ordinary shares, short answer.
- Answer changes: the formula in
derive.goand its tests. - Until answered: label stays “Presumed subsidiary (not assessed)”.
Q2. Indirect holdings. We multiply ordinary percentages along any chain (60% of a company holding 50% is 30%) for the share limb. For the voting limb, voting passes through an intermediate entity only while the holder controls that entity.
- Reply: (a) is the multiplication right for the share limb, yes/no; (b) must every intermediate be itself a subsidiary for an indirect holding to count, yes/no; (c) can board control arise indirectly (we read it from direct holdings only), yes/no.
- Answer changes:
derive.gochain logic. - Until answered: as described.
Q3. May the product ever show “Subsidiary” without “presumed” before a person approves an assessment? Today only an approved assessment (asserter and approver differ, written rationale) removes the word.
- Reply: yes/no, and if yes, on what condition.
- Answer changes: whether a derived value may read “Subsidiary”.
- Until answered: always “presumed (not assessed)”.
B. Retention
Section titled “B. Retention”Q4. How long must accounting records be kept under the Companies Act 2016, and from when? The repository cites only the Income Tax Act 1967 s.82A (seven years from the end of the year of assessment) and uses seven years everywhere as a provisional figure for the register.
- Reply: period in years; clock start (financial year end, transaction date, last entry); whether it differs from the tax period.
- Answer changes: retention constants; nothing else if it is seven.
- Until answered: seven years.
Q5. Which of these are accounting records or statutory registers, and how must the register’s current retention rulings behave? Current rulings (owner, 2026-10-04, built, provisional):
DELETEis revoked from the application oncompany_groupandgroup_entity(migration00923), as it already was onshareholding,relationship_assessment,beneficial_owner,group_access_grant, and on every consolidation run and input table. A mistaken group or entity is a new row; nothing is erased.- The ledger-style tables are append-only. A shareholding can change in exactly one way: an open row gets an end date once (database trigger,
00924); a change of percentage is a new row. An ended holding or beneficial owner stays as history. - Reply, per record type (shareholdings including ended ones; beneficial-owner declarations including ended ones; relationship assessments; consent grants; consolidation runs and their inputs; a deleted-or-abandoned group or entity): kept for the period in Q4, kept for a different period, or not a required record.
- Also reply: (a) must a person’s identity data in a beneficial-owner row be erased on request inside the period, yes/no; (b) is “ended, never erased” acceptable for a person who ceases to be a beneficial owner, yes/no.
- Answer changes: the list of undeletable tables, and a lawful erasure path for personal data (none exists today).
- Until answered: nothing can be erased through the product; no erasure path.
C. MFRS 10 consolidation content (all unverified in con section 14)
Section titled “C. MFRS 10 consolidation content (all unverified in con section 14)”Q6. Eliminations (con 6.4). The run eliminates, at the matching amount per pair, after translation: inter-company receivable against payable (and loans), revenue against cost, interest, dividend income against dividend paid; investment against subsidiary equity at the acquisition date. A dividend paid to a non-controlling holder is not eliminated and reduces NCI. Unrealized profit in stock is an owner-entered, second-person-approved input (not detected).
- Reply: complete and correct, yes/no; list anything else eliminated in full (management fees, guarantees, others).
- Answer changes: the closed list of elimination kinds and their golden-file tests.
- Until answered: as stated.
Q7. Differences. A difference that recomputing at one rate removes is classed rate; any other is unexplained. An unexplained amount over a group tolerance (default zero) makes the run provisional until a second person accepts it with a reason.
- Reply: is zero tolerance with a reasoned acceptance acceptable, yes/no; any required documentation, short answer.
- Answer changes: default tolerance, acceptance rules.
Q8. Translation (MFRS 121). Assets and liabilities at closing rate; income and expense at the unweighted mean of the daily Bank Negara reference rates for the period (a stated approximation, method recorded on the run); equity at the rate on the day of each movement; the balancing figure goes to a translation reserve in OCI, cross-checked by a separate computation. Exchange differences on inter-company monetary items stay in the result, labelled rate.
- Reply: is each treatment acceptable for a management consolidation, yes/no each; where not, what is required.
- Answer changes: rate-class mapping, average method.
Q9. Non-controlling interest. NCI = (1 minus effective ownership) times the subsidiary’s net assets, adjusted for the NCI measurement basis the owner records, plus its share of result, OCI and translation reserve. Effective ownership multiplies along chains; control (voting) decides consolidation, ownership decides attribution. Preference shares and multi-class structures, part-year ownership changes, and step acquisitions are refused with a reason.
- Reply: formula correct, yes/no; are refusals the right default for those cases, yes/no.
- Answer changes: NCI formula, scope of refusals.
Q10. Associates (MFRS 128). Equity method as one balance-sheet line and one profit-or-loss line: cost plus share of post-acquisition profit and OCI, less dividends and impairment, from the associate’s trial balance if it consented, otherwise from an approved input. Joint ventures are not modelled.
- Reply: acceptable, yes/no; corrections.
- Answer changes: equity-method rule.
Q11. Goodwill. Consideration plus NCI (owner-recorded basis) less fair value of identifiable net assets; a negative result (bargain purchase) is refused to a person; impairment is an approved input, not computed.
- Reply: formula correct, yes/no.
Q12. When may a run be shown as anything but a management consolidation? D16 holds that the adviser confirms con section 14 before a first run is shown outside the owner’s team.
- Reply: the conditions, and whether groups reporting under MPERS rather than full MFRS are in scope at all (the product supports only
mfrs10). - Until answered: banner stays; no run shown outside the owner’s team.
D. The 2026-10-05 inter-company rule (con 6.2.1, migrations 00944, 00945)
Section titled “D. The 2026-10-05 inter-company rule (con 6.2.1, migrations 00944, 00945)”The problem it solves. AR and AP documents post to one ar or ap control account per organization. Tagging that account “inter-company” would flag every external customer and supplier, so the account carries no tag.
Q13. The derivation rule. On the read side only, a ledger line is read as an inter-company receivable (ic_receivable) or payable (ic_payable) when all three hold: its account is the ar (or ap) control account; its customer or supplier is mapped, by the member’s own administrator, to another member of the same group; and the mapping is active. An account’s own manual tag always wins. Nothing is written to the ledger and no posting rule changes. Only receivable and payable balances are derived this way: revenue, cost, interest and dividends from AR and AP documents are not derived; they are identified only if the member tags those accounts by hand and maps the party.
- Reply: (a) is deciding “inter-company” from the account type plus an explicit party mapping, and never from names or registration numbers, acceptable, yes/no; (b) is eliminating receivable against payable without the matching revenue and cost sides acceptable in a management view, yes/no, and if not what minimum is required.
- Answer changes: whether revenue and cost must be derived the same way (new work, same shape).
- Until answered: as stated; a run does not claim the income and expense sides are complete.
Q14. The unmapped-party advisory. A run counts the member’s AR and AP customers or suppliers that have a non-zero net balance (base currency, to the reporting date) and no mapping row at all for the group, and records the check unmapped_ar_ap_parties only when the count is above zero. It returns a number, never a name. It always passes, never makes a run provisional, and never says any of them is a group company. Screen text (en): “N customer(s)/supplier(s) with balances are not mapped as group counterparties. If any is a group company, map it or eliminate manually.”
- Reply: (a) is an advisory that does not block finality acceptable, yes/no, or must an unmapped party with a balance prevent a final run; (b) is the wording acceptable, yes/no.
- Answer changes: advisory becomes a provisional reason (small); wording strings.
- Until answered: advisory only.
Q15. An ended mapping. If an administrator ends a mapping, the party is no longer derived as inter-company, and it is also not counted in the advisory (an ended mapping is treated as a decision). A party that was a group company last year and is unmapped this year therefore disappears silently from both.
- Reply: should an ended mapping with a balance be advised, yes/no.
- Answer changes: the count function (
00945).
3. Behaviour until answered (summary)
Section titled “3. Behaviour until answered (summary)”- Relationship labels read “presumed”; runs read “management consolidation”; no run is shown outside the owner’s team.
- Seven years, provisional; nothing erasable; no erasure path.
- Eliminations as described; unverified items remain listed in
consection 14. - Test data only; no real group uses the feature.
4. What each answer changes in the repository
Section titled “4. What each answer changes in the repository”| Answer | Change | Size |
|---|---|---|
| s.4 limbs differ | derive.go formula, label tests |
small to medium |
| Different retention period | constants, retention test | small |
| Erasure of beneficial-owner data required | new erasure path with period rules | medium, new design |
| Elimination list, NCI or goodwill formula differ | rule code, rule_version bump, golden files |
medium |
| Revenue and cost must be derived from AR and AP | extend 00944 shape to income and expense tags |
medium |
| Unmapped parties must block a final run | advisory becomes a provisional reason | small |
| Ended mappings must be advised | count function change | small |
| Banner conditions | text and gating of outputs | small |
5. Correction to carry
Section titled “5. Correction to carry”reg and con both open with “Status: DRAFT … Nothing is built”. That is stale: the register (migrations 00920-00925) and runs (00940-00943) are built and on main. Do not quote that line to the adviser.