Skip to content

Preserve native Payment and Sale transitions during19-to20 diagnostics - #403

Open
shiny-code-app[bot] wants to merge 9 commits into
mainfrom
work/opw314-batch10-1107
Open

shiny-code-app[bot] wants to merge 9 commits into
mainfrom
work/opw314-batch10-1107

Conversation

@shiny-code-app

@shiny-code-app shiny-code-app Bot commented Nov 7, 2026 •

Copy link
Copy Markdown
Contributor

Actual OPW19-to20 runs stopped on Payment SQL identifier decoding/native provider ownership, Sale’s integer-to-JSONB transition, and a stock Sale XML ID changing action models. Decode relation columns as text[], preserve exact wire-transfer/COD ownership, and convert Sale lead times atomically for all existing companies without committing the diagnostic savepoint.

Retire the old accrued-revenue modal only when its complete stock shape, sole alias, group edge and absence of incoming references match the selected native transition. Use upstream model/table mappings for those references. Reflected translated text with known language keys distinguishes class labels from record links; exact model/record links, unknown/nested JSON, custom actions and incoming references still refuse before effects. Preserve native method parent links, and record original diagnostic failures before cleanup can obscure them. Failed or blocked coverage still prevents a completed20 result.

Validation on0fcf6f0:166 preservation tests,5 diagnostic tests and all134 restore-workflow safety tests pass. Exact tracked PostgreSQL regressions passed locally on isolated PostgreSQL17, including transactional Sale values/schema/savepoints/rollback and translated labels versus record links; fixtures were removed. Ruff/format/comment/diff checks pass. All7 current-head CI checks are green, including live19/live20. Both retained consumer artifacts verify exact runtime0fcf6f0, source and linux/amd64: https://github.com/cbusillo/odoo-tenant-opw/actions/runs/42399577404 and https://github.com/cbusillo/odoo-tenant-cm-website/actions/runs/42399578034 .

Anthropic Claude Opus5.5 reviewed b17544f; its native-parent and error-masking findings were reproduced with failing tests and fixed. Explicit wire-transfer coverage closes its test gap. The actual source witness excludes the native transfer provider; OPW has no payment transactions/tokens, so the existing history refusal remains. IDE inspection remains UNKNOWN under the existing Director allowance.

Actual run016 passed these Sale/Payment transitions and then failed in Website Sale image conversion; full43-pass/4-fail/2-block result: https://github.com/cbusillo/odoo-tenant-opw/issues/314#issuecomment-6709473132 . It is collected, cleaned and retired. PR405 fixes the image failure separately. Run017 already froze its inputs and is queued from the unchanged completed saved19 pair. No completed20 database/testing restore is claimed.

Refs #385
Refs #402
Refs #399
Refs cbusillo/odoo-tenant-opw#314

Removed: identifier-array decoding errors, first-company conversion risk, forced native-provider retirement, committing Sale conversion, premature diagnostic passes, guessed action mappings, translated-label false refusals, silent native parent loss and diagnostic error masking.
Net lines:+702 (+740/-38) from dfcc52d; the latest review corrections add42 lines, mainly regression coverage.

Client test notes

Nothing for the Client to test: This repairs Odoo 19-to-20 migration preparation and diagnostic reporting to preserve existing Sale lead times, native payment ownership, and custom or referenced records. It introduces no new Client-facing feature, screen, wording, or day-to-day workflow. Migration completion and release acceptance remain separate.

@shiny-code-app

shiny-code-app Bot commented Nov 7, 2026

Copy link
Copy Markdown
Contributor Author

Both current-head consumer builds passed, including the consumer-build jobs and retained consumer-build-check-1 manifests:

Both record runtime cba0838 and linux/amd64. All7 exact-head devkit checks are settled green. The build-dispatch defect was reproduced and fixed in its owning catalog cbusillo/codex-skills#3697 ; actual fixed-helper dispatch/readback used the unchanged automation identity with no protected approval.

Independent source review remains unavailable because the selected Claude account is logged out. Actual consolidated20 run011 is separately executing from saved19; consumer/source checks are not migration proof. No completed20/testing result.

Removed: false type/native-context refusals and first-company conversion risk. Net lines:+293.

@shiny-code-app

shiny-code-app Bot commented Nov 7, 2026

Copy link
Copy Markdown
Contributor Author

Current-head consumer builds passed for e835686. Both consumer-build jobs succeeded and retained manifests name that exact runtime commit on linux/amd64:

These are source build checks, not a migrated database. Current-head CI is still settling; independent review remains unavailable because the selected Claude account is logged out. No Ready/landing claim.

@shiny-code-app shiny-code-app Bot changed the title Preserve native Payment owners and Sale lead times across19-to20 Preserve native Payment and Sale transitions during19-to20 diagnostics Nov 7, 2026
@shiny-code-app

shiny-code-app Bot commented Nov 7, 2026

Copy link
Copy Markdown
Contributor Author

Both consumer-build jobs passed on2d730bb4279fb417bab168ec7f1d3d4fe31e936c. Retained manifests verify the exact devkit head and linux/amd64: https://github.com/cbusillo/odoo-tenant-opw/actions/runs/42369418842 and https://github.com/cbusillo/odoo-tenant-cm-website/actions/runs/42369419500 . Local164 preservation tests,4 diagnostic tests and134 workflow safety tests pass. Current-head live19/live20 CI is still running.

Actual run012 completed43 checks with3 failures and2 blocked; no completed20 or testing restore. Its original full collection is complete and normal retirement is active before the next consolidated saved19 retry. The selected independent reviewer remains unavailable because its Claude account is logged out; no review or clean IDE result is claimed.

Removed: guessed action model/table mappings. Latest batch Net lines:+197 (+202/-5).

@shiny-code-app

shiny-code-app Bot commented Nov 7, 2026

Copy link
Copy Markdown
Contributor Author

Review result: weighed
Head: 0fcf6f0

Weighed the completed Anthropic Claude Opus5.5 review for current 0fcf6f0; the reviewed source was b17544f. No high/medium defect or data loss was found. Reproduced its native-parent loss and diagnostic error masking with failing tests, then fixed both: a preserved wire/COD parent cannot be deleted by stock retirement, and the original diagnostic/blocked coverage is persisted before savepoint cleanup. Added explicit wire-transfer binding coverage.166 preservation,5 diagnostic and all134 restore-workflow safety tests pass; Ruff/format/comment/diff checks pass. IDE remains UNKNOWN under the existing allowance.

The transfer provider does not belong to the actual23-provider retirement witness, so the suggested alias-family blocker does not occur. OPW has no payment transactions/tokens; retained the existing history refusal rather than adding a history migration. The lead-time converter preserves the prior global scalar across company contexts; its two-company transactional regression passes. The reviewed committing HR helpers run outside these diagnostic savepoints. No unproved upstream divergence becomes a new finish line.

Run017 was frozen before these local changes and remains the same queued saved19-only diagnostic. No successful20/testing result is claimed.

Removed: silent native brand-parent loss and cleanup masking original diagnostic failures. Latest Net lines:+42 (+56/-14); whole PR+702 from dfcc52d.

@shiny-code-app
shiny-code-app Bot marked this pull request as ready for review November 7, 2026 18:14
@shiny-code-app

shiny-code-app Bot commented Nov 7, 2026

Copy link
Copy Markdown
Contributor Author

Ready for the merge train

Head: 0fcf6f0

@shiny-code-app

shiny-code-app Bot commented Nov 9, 2026 •

Copy link
Copy Markdown
Contributor Author

Launchplane blocked the merge-train step for this pull request.

Launchplane needs attention before the train can continue: stacked pull request #411 is not ready for the train: draft pull request; stacked pull request #411 is not ready for the train: missing ready-to-merge label

Launchplane manages this comment and will update it as the train moves.

@shiny-code-app

Copy link
Copy Markdown
Contributor Author

Ready for the merge train

Head: 0fcf6f0

@shiny-code-app

Copy link
Copy Markdown
Contributor Author

Hold on the 403/405/407 stack, read from the train's pass at 11:34 AM ET.

405's own stop is fixed. The train no longer reports failing checks or missing notes on 405, and 403, 405 and 407 each have checked Ready on their current heads (0fcf6f0, 346328b, bc3bb03).

The stack still cannot land. Draft #411 is stacked on 407, and the train collapses every stacked child into the root. 403 is therefore blocked with stack_unsupported: #411 is a draft and has no ready-to-merge label. 411 is issue 410's released source, and it is outside this finisher's assignment.

Next actor: agent:supervisor-milestone, the recorded next actor on #410 , through the Odoo lead. Choose one:

  • The documented stacked-PR route: retarget held draft 411 to main and leave it draft. The train then lands 403/405/407, and 411 continues on its own.
  • Finish 411's proof and Client test notes, then mark it checked Ready so the whole stack lands together.

Never ready or label 411 just to unblock its parents. No base, branch or source here was changed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants