Skip to content

Invio v1.0.0.1.40.2

Choose a tag to compare

@github-actions github-actions released this 10 Aug 21:52
· 25 commits to main since this release

Invio v1.0.0.1.40.2 - First Production Release

Status: PRODUCTION RELEASE ACCEPTED
Official Baseline: v1.0.0.1.40.2
P14: COMPLETE BY EXPLICIT OWNER PRODUCTION ACCEPTANCE
P11 Refrens: IMPLEMENTED / LIVE ACCEPTANCE DEFERRED — NON-BLOCKING FOR THIS RELEASE
Production-ready: YES, with Odoo Provider v1.0.0 as the owner-live-certified invoice delivery path

Production acceptance evidence

The owner completed a real Odoo live test from Invio using the validated external Odoo Provider v1.0.0 and confirmed successful invoice sending. This is the first owner-controlled end-to-end provider acceptance for Invio.

The v1.0.0.1.40.2 Windows CI/distribution pipeline is green. Before the final tag is created, the final plugin-inclusion commit must pass the same non-tag CI because this release additionally ships the validated Odoo bundle with the project.

Final plugin-inclusion CI checksum portability correction

The first non-tag CI run of the final plugin-inclusion commit (796895bdcef829b431e62876d87faed572e57cbf) failed only in test_odoo_bundle_internal_checksums_are_complete. The Odoo bundle checksum file was generated from LF source bytes, while the Windows Git checkout converted text files to CRLF, changing raw-byte SHA-256 values before the test ran.

The correction is intentionally limited to a repository attribute rule: providers/plugins/odoo/** text eol=lf. This preserves the existing raw-byte integrity contract across Windows/POSIX checkouts without changing the Odoo provider manifest, adapter, P13 interface, runtime logic, task execution, dependencies, workflow, or application version. A corrected non-tag CI run is required before the production tag is created.

Odoo provider included with the project

The validated external plugin is stored at:

providers/plugins/odoo/

It remains a P13 interface-v1 trusted external adapter. It is intentionally not auto-installed and does not become a packaged/reserved provider ID. Users explicitly load its provider.json and approve the sibling executable adapter.py through the existing trusted-code workflow.

The plugin provides:

  • Odoo API-key authentication over the proven JSON-RPC workflow;
  • customer lookup/create;
  • currency/country resolution;
  • customer invoice creation;
  • invoice posting;
  • Odoo Send & Print wizard email execution;
  • provider-side mail evidence inspection;
  • Invio P10 durable provider customer/invoice references;
  • fail-closed uncertainty behavior for non-idempotent external mutations.

Provider certification matrix

Provider v1.0.0.1.40.2 release status
Odoo Provider v1.0.0 LIVE END-TO-END ACCEPTED
Refrens API Test + invoice creation work; API email returns HTTP 400: Not allowed to send mail; email delivery not certified
Agiled API Test verified; Task sending fail-closed / not certified
Stripe Existing implementation unchanged; no new owner-live acceptance claim is made by this release

Production phase interpretation

P14 is marked complete by explicit owner acceptance of the green Windows distribution path plus real Odoo invoice delivery. P11 remains a provider-specific Refrens acceptance item; the owner explicitly makes it non-blocking for this first production release rather than falsely marking Refrens email delivery successful.

Completed acceptance phases are therefore 13/14, with P11 deferred. This exception is intentional and recorded.

v1.40.2 provider-contract corrections retained

The pre-production v1.40.2 correction remains part of this released tree: Agiled API Test uses the owner-supplied safe read GET /public/v1/me with Bearer authentication, while Agiled Task sending remains fail-closed. Refrens HTTP 400: Not allowed to send mail remains classified as a provider-side API mail permission rejection rather than being converted to success.

Unchanged core contracts

  • Application version remains 1.0.0.1.40.2.
  • SQLite schema remains v5.
  • WorkerManager one-QThread-per-active-Task architecture is unchanged.
  • P05 immutable Task snapshots are unchanged.
  • P08/P09/P10 retry, scheduling, durable-ledger and uncertainty rules are unchanged.
  • P13 external adapter interface remains version 1.
  • Stripe/Refrens/Agiled built-in runtime behavior is unchanged by this production-finalization step.
  • No UI/UX or Settings update is included; those are future separately approved work.