Files
erp/fleet/profile/decisions/adc-006-km-retainer-currency.md
arcodangeandClaude Fable 5 a482bb18c4 feat(fleet): fiscal profile + compliance calendar + ADC register (erp#54, T11 data)
fleet/profile/ goes from stub to the machine-readable business-rules surface
the fleet reads (PRD agent-catalog document surface + compliance ADC framework):

- fiscal.yaml — entity, VAT position, 8 rules (regime reel simplifie until
  2026-12-31 -> quarterly CA3 from 2027-01-01 per LF 2025 art. 38; KM export
  autoliquidation 259-1 CGI box E2; FR 20% deductible; intra-EU reverse
  charge; FX 766/666; SaaS expensed; CCA 455 lane). Every rule carries
  effective_from/effective_until AND decision: adc-NNN; every date cites its
  PRD anchor as an inline comment (verified against factory origin/main).
- calendar.yaml — 15 entries: acomptes TVA (2026-07 month-window, 2026-12-15),
  last CA12 FY-2026 (2027-05-04), CA3 quarterly windows, CFE (December),
  AG comptes annuels (2027-06-30), e-invoicing milestones (2026-09-01
  reception, 2027-09-01 emission/e-reporting), URSSAF echeancier with the
  in-file NOTE that a real direct debit exists since May 2026 (erp#57 revisit
  of the payroll-dormant assumption), KM deferred due dates + renewal stub.
- JSON Schemas for both + scripts/validate.py (stdlib-only: strict YAML-subset
  parser, JSON-Schema-subset checker, rule->ADC resolution, calendar checks).
- decisions/ — ADC register: template + adc-001..005 Accepted formalizations
  (autoliquidation KM, FX->766/666, SaaS expensed, reel simplifie until
  abolition, CCA personal-card lane) + adc-006/007 Proposed stubs (retainer
  currency -> erp#53; capital path -> erp#51). Agents draft, the operator
  Accepts — never the reverse; immutable once merged, supersede never edit.
- Mutation policy in-file: PRs only (T12 proposes, human merges).
- Same-change: profile README stub -> real doc; fleet/README.md layout line
  and AGENTS.md fleet row updated (profile no longer a stub).

Validation: PASS — 8 rules, 15 entries, 7 ADCs, 0 errors, 7 warnings (the
warnings list exactly what awaits operator verification). Human gate left
open on purpose: operator sanity-read of the calendar + Acceptance of
adc-001..005.

Co-Authored-By: Claude Fable 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01VRShc4QhLLU73FLHx9vskh
2026-07-18 23:45:00 +02:00

2.5 KiB
Raw Permalink Blame History

id, title, status, decided, effective_from, effective_until, supersedes, superseded_by
id title status decided effective_from effective_until supersedes superseded_by
adc-006 KM retainer currency & composition (USD multicurrency vs EUR-at-settlement; line structure) Proposed null null null null null

adc-006 — KM retainer currency & composition (Proposed)

Proposed — operator input needed. This stub reserves the decision slot per the PRD compliance ADC seed table ("blocks erp#53 wiring; operator input needed"). Agents may enrich the draft with sources and alternatives; only the operator Accepts.

Context

The recurring template id=1 carries 5100 while the actual May/June drafts were 2×2145.92 + 2×2575.11 EUR; the 2026-07-11 regularization surfaced a probable USD-denominated retainer ($5,500/mo = $2,500 net-30 + $3,000 deferred +3 months — erp#53; contract WIP test/km_contract.json in the trunk). FX deltas have already been booked twice under adc-002. The invoicing method must be stable before T05 automation wires it (permanence des méthodes — not improvised per month).

Decision

To arbitrate — no decision recorded. Open questions (erp#53):

  1. USD multicurrency invoices vs EUR-at-settlement invoicing?
  2. One invoice with two lines vs two invoices per month (net-30 part / deferred part)?
  3. Écarts de change policy interaction with adc-002 (would a USD-multicurrency choice narrow or supersede it for future invoices)?

Base légale & doctrine

To gather with the full draft: CGI art. 289 (invoice currency rules), PCG FX treatment for multicurrency receivables, Dolibarr multicurrency module implications. Nothing asserted here yet.

Alternatives rejected

None yet — the alternatives above are open; each needs its why-it-loses written before acceptance.

Consequences

  • Blocks erp#53 (T05 monthly client invoice at A2): wiring waits for this record to be Accepted.
  • May supersede or narrow adc-002's scope for future invoices.
  • Annexe: revenue-recognition/currency method disclosure once Accepted.

QA & validation

Planned per erp#53: dry-run parity (first agent-fired invoice == its manual twin), then one real month through the gate — after acceptance.

References

  • erp#53 (T05 client invoice; decision D3) · erp#54 (register seeding).
  • PRD compliance.md § ADC seed table (adc-006).
  • adc-002 (current FX method) · trunk WIP test/km_contract.json.