Operational queue for project leads to assign accountable developers, monitor active work, and move closure-ready packages through final verification using existing tracking fields.
Final project-lead gap closure view before exporting the developer handoff pack.
Open the developer handoff preview, confirm the pack, then export the final CSV.
All work packages have assigned developers
All work packages have realistic estimates
Handoff readiness score is complete
Accept this Upgrade Centre project as production-ready for real client use and archive the release evidence.
Latest Phase 71 / Phase 96 batch token: BA-20260515085904989216
Latest changed count: 0
Assignment gap IDs: None
Estimate gap IDs: None
| Area | Purpose | Open |
|---|---|---|
| Work Packages | Final operational package control centre. | Open |
| Phase 99 operator runbook | Production operator workflow and final validation checklist. | Open |
| Final handoff preview | Human-readable final developer handoff pack. | Open |
| Developer handoff CSV export | CSV export for delivery, review, or archive. | Open |
| Evidence export | Package evidence export for audit support. | Open |
| Readiness | Upgrade readiness evidence. | Open |
| Action plan | Prioritised remediation and delivery plan. | Open |
| Odoo.sh workflow | Odoo.sh environment and checklist workflow. | Open |
| Upgrade run log | Upgrade attempts, test cycles, and issue evidence. | Open |
| Go-live approval | Internal/client/final approval evidence. | Open |
| Go-live execution | Execution runbook and go-live checklist. | Open |
| Closeout | Project closeout and final archive workflow. | Open |
Use this final runbook to operate the Upgrade Centre in production, then preview and export the developer handoff pack.
Latest Phase 71 / Phase 96 batch token: BA-20260515085904989216
Latest changed count: 0
Assignment gap IDs: None
Estimate gap IDs: None
| Step | Production action | Evidence required | Stop rule |
|---|---|---|---|
| 1 |
Create or import the client upgrade project Create the upgrade project with the client, source Odoo version, target Odoo version, and project ownership details. |
Project record exists and appears on the portfolio/project dashboard. | Stop if the client/version scope is unclear. |
| 2 |
Upload custom modules and source references Upload custom module ZIPs and confirm source references for the relevant Odoo versions. |
Modules are visible and parsed; manifests are detected safely without executing module Python code. | Stop if module extraction or manifest parsing fails. |
| 3 |
Run scanning, dependency, and risk review Use the scanner, dependency summary, risk summary, readiness view, and action plan before producing developer work. |
Risk/dependency/readiness outputs are available for review. | Stop if blockers or dependency risks are unresolved. |
| 4 |
Review generated work packages Open Work Packages and confirm generated package scope, priorities, statuses, and readiness indicators. |
Work packages exist and match the expected upgrade scope. | Stop if package scope is incomplete or duplicated. |
| 5 |
Assign developers safely Use the existing assignment workflow only. For bulk assignment, run Preview Only first and apply only when expected counts match. |
Assignment gaps are 0 and Phase 71 / Phase 96 batch-token audit evidence is visible. | Stop if assignment gaps remain or no batch-token audit is visible after apply. |
| 6 |
Capture package estimates Use existing per-package tracking forms to capture estimates. Do not use direct database updates. |
Estimate gaps are 0 and Phase 97 estimate closure history remains visible. | Stop if any selected package has no estimate. |
| 7 |
Preview final developer handoff pack Open the handoff preview and confirm selected package count, assigned count, estimated hours, readiness score, and not-ready count. |
Preview reports readiness score 100%, assigned packages equal selected packages, and not-ready count is 0. | Stop if readiness score is below 100% or not-ready packages remain. |
| 8 |
Export developer handoff CSV Export the final developer handoff CSV from the valid handoff export URL. |
CSV download succeeds and contains the final developer work package rows. | Stop if the CSV route fails or the row count is unexpected. |
| 9 |
Track developer progress and evidence Use package statuses, evidence notes, test cycles, issue register, and upgrade run logs to track delivery. |
Developer evidence, issue outcomes, tests, and run attempts are recorded. | Stop if a package is moved toward Done without evidence. |
| 10 |
Use completion gates before Done / go-live Confirm completion gates, approvals, go-live execution checklist, and closeout before declaring final completion. |
Approvals, execution checklist, and closeout records are complete. | Stop if approvals or go-live evidence are missing. |
Read-only post-Apply result capture. Real Apply must have been performed manually through the existing Preview Only / ASSIGN workflow only.
Assignment gaps are now 0 and Phase 71 batch-token evidence is visible. Capture the Apply evidence and proceed to the next transition readiness phase.
Phase 95 is read-only manual result capture and assignment closure confirmation. It does not create a new assignment write path, does not auto-apply assignments, does not bypass Preview Only, does not bypass ASSIGN, requires no database migration, and keeps Phase 71 batch-token evidence as mandatory.
Read-only post-manual-Apply evidence and transition readiness checklist. Apply must still be performed manually through the existing Preview Only / ASSIGN workflow only.
Assignment gaps are now 0. Confirm the Phase 71 batch-token audit and captured success evidence before unlocking the next transition.
Read-only authorization gate for reviewing captured Phase 92 Preview Only evidence before any manual Apply.
Assignment gap package IDs carried forward: None
Read-only evidence handoff for capturing the real Preview Only result before the operator makes a manual Apply decision.
Assignment gap IDs carried forward:
| Evidence item | Expected value | Operator guidance |
|---|---|---|
| Actual Preview Only selected count | 0 | Capture the selected count shown on the real Preview Only result. It must be exactly 0. |
| Actual Preview Only changed count | 0 | Capture the would-change count shown on the real Preview Only result. It must be exactly 0. |
| Assigned developer name | One confirmed developer name | Record the developer name entered in the existing bulk assignment form before Preview Only was run. |
| Package ID match confirmation | Confirm every package ID in the Preview Only result belongs to the carried-forward assignment gap list. | |
| Screenshot or copied preview message | Preview Only selected/changed result 0/0 | Capture a screenshot or copy the Preview Only message before any Apply action is considered. |
| Decision rule | Instruction | Stop condition |
|---|---|---|
| Apply allowed only on exact evidence match | Apply is allowed only when the real Preview Only selected count is 0 and the changed count is 0. | Stop if the real Preview Only result is not exactly 0/0. |
| Use existing ASSIGN-protected workflow only | After evidence matches, type ASSIGN in the existing confirmation field and use the existing Apply Bulk Assignment button. | Stop if the page does not require ASSIGN or if any new apply path appears. |
| Preserve audit and verification chain | After apply, refresh Work Packages and use Phase 89 verification to confirm assignment gaps reach zero and Phase 71 batch-token audit is visible. | Stop if assignment gaps remain after apply, or if no Phase 71 batch-token audit appears. |
Phase 92 is a read-only evidence handoff. It captures what the operator must record from the real Preview Only result, does not create a new assignment write path, does not auto-apply assignments, preserves Phase 91, Phase 90, Phase 89, Preview Only first, ASSIGN confirmation, and Phase 71 batch-token audit.
Assignment gap package IDs: None
Estimate gap package IDs: None
Preview-first decision support before real assignment closure. This panel simulates the expected impact of assigning the current gap packages without adding any new write path.
All assignment gaps are closed. Continue estimate review.
Read-only readiness gate for comparing the real Preview Only result before any manual assignment apply.
Use Phase 89 verification and continue to estimate review if the unlock conditions are met.
| Step | Expected result | Operator check | Stop rule |
|---|---|---|---|
| Open the existing Preview Only workflow | Preview Only must select 0 package(s). | Actual selected count must equal 0. | Stop if actual selected count is not exactly 0. |
| Compare the would-change count | Preview Only must show 0 package(s) that would change. | Actual changed count must equal 0. | Stop if actual changed count is not exactly 0. |
| Approve real apply only after exact match | Allowed result is exactly 0/0. | Only then type ASSIGN in the existing confirmation field. | Do not use any alternative write path or manual database update. |
| Return to Phase 89 after apply | Assignment gaps must reduce to 0 and estimate gaps must remain unchanged. | Use the Phase 89 post-apply verification panel after refreshing the Work Packages page. | Do not unlock estimate review while assignment gaps remain. |
Phase 91 is a read-only readiness gate. It records/reviews operator evidence only, keeps Phase 90 visible, links to Phase 89 verification, preserves Preview Only first, preserves ASSIGN confirmation, and keeps Phase 71 batch-token audit as the official write history.
Assignment gaps are zero. Use Phase 89 verification and continue to Phase 79 estimate review.
| Step | Action | Details | Stop rule |
|---|---|---|---|
| 1 | Open existing safe assignment workflow | Use the Phase 78 assignment-gap workflow link. It is prefilled with the current assignment gap package IDs. | - |
| 2 | Enter the assigned developer | Enter the developer or owner in the existing Assigned developer field. Do not change the write path. | - |
| 3 | Run Preview Only first | Preview Only must show 0 selected package(s) and 0 package(s) that would change. | Stop if selected/changed counts are not exactly 0/0. |
| 4 | Apply only after exact count match | Only after Preview Only matches, type ASSIGN and use the existing Apply Bulk Assignment button. | Do not apply if the preview is missing packages, changing extra packages, or showing unexpected unchanged records. |
| 5 | Refresh and verify in Phase 89 | Return to Phase 89 after apply. Assignment gaps must become 0 and estimate gaps must remain unchanged. | If assignment gaps remain, do not continue to estimate review. |
| 6 | Continue to Phase 79 estimate review only after unlock | Phase 79 estimate review unlocks only after assignment gaps are 0. | Do not use estimate review as an assignment closure workaround. |
Phase 90 adds read-only operator guidance only. It does not add assignment write logic, does not bypass Preview Only, does not bypass ASSIGN, requires no database migration, and preserves Phase 71 batch-token audit behavior.
Assignment and estimate gaps are closed. Continue with final handoff validation and export.
Phase 89 is read-only. It adds no assignment write logic, preserves Phase 88 guidance, preserves Phase 84 validation, and only highlights Phase 79 estimate review after assignment gaps reach zero.
Read-only execution guide for the real assignment closure step after Phase 87 Preview Only confirmation.
Exact assignment gap package IDs: None
| Rule | Status | Detail |
|---|---|---|
| Preview Only confirmed first | OK | Operator must record selected=0 and changed=0 before applying. |
| Stop on Preview Only mismatch | OK | If the actual Preview Only selected or changed count differs from the expected count, do not apply. |
| Use existing bulk assignment form only | OK | Phase 88 is read-only guidance and does not create a new assignment write path. |
| ASSIGN confirmation remains mandatory | OK | The existing apply flow must still require the operator to type ASSIGN. |
| Phase 71 audit trail remains preserved | OK | Real assignment writes must still create Phase 71 batch-token history through the existing workflow. |
| Check | Expected | Detail |
|---|---|---|
| Assignment gaps after apply | 0 | Refresh the Work Packages page and confirm the assignment gap count is zero. |
| Estimate gaps after apply | 0 | Assignment closure should not change estimate gaps. |
| Expected progress after assignment closure | 100.0% | Expected progress gain is 0.0 percentage point(s). |
| Latest Phase 71 batch audit | New batch token visible after real apply | The latest Phase 71 batch should show the new assignment batch after apply. |
Safety: Phase 88 is read-only. It adds execution and post-apply validation guidance only. It does not add assignment write logic, does not bypass Preview Only, does not bypass ASSIGN, requires no database migration, and keeps Phase 71 batch-token history as the audit trail.
Read-only operator capture guide for recording the actual Preview Only result before any real assignment.
| Field to record | Expected value | Guidance |
|---|---|---|
| Actual Preview Only selected count | 0 | Record the selected count shown by Preview Only. It must be 0. |
| Actual Preview Only changed count | 0 | Record the would-change count shown by Preview Only. It must be 0. |
| Operator note | Counts match / counts do not match | Capture a short note before applying, especially if the counts do not match. |
| Check | Status | Detail |
|---|---|---|
| Phase 86 expected selected count reused | Review | Expected selected count is 0. |
| Phase 86 expected changed count reused | Review | Expected changed count is 0. |
| Operator must stop on mismatch | OK | Stop and do not apply if the actual Preview Only selected count or changed count does not match the expected Phase 86 values. |
| ASSIGN confirmation remains required | OK | Real assignment remains protected by the existing ASSIGN confirmation. |
| Existing bulk assignment workflow remains the write path | OK | Phase 87 is read-only guidance and does not create a new assignment write path. |
| Phase 71 audit safety preserved | OK | Assignment writes must still create/keep Phase 71 batch-token history. |
Safety: Phase 87 is read-only. It captures operator guidance only, adds no assignment write logic, requires no database migration, and keeps Preview Only, ASSIGN confirmation, and Phase 71 batch-token history intact.
Read-only operator checklist for capturing and validating the Preview Only result before real assignment.
All assignment gaps are already closed. Continue with estimate review or final handoff validation.
Expected Preview Only result: Preview Only should show 0 selected package(s) and 0 package(s) that would change.
Assignment gap package IDs: None
| Readiness check | Status | Detail |
|---|---|---|
| Phase 85 simulation is available | OK | The Phase 85 simulation must remain visible so the operator can compare expected assignment closure results. |
| Preview Only is the first required action | OK | The existing safe bulk assignment workflow must be used in Preview Only mode before any write. |
| Expected selected count is known | OK | Preview Only should select 0 package(s). |
| Expected changed count is known | OK | If one developer is assigned to all selected gaps, Preview Only should show 0 package(s) that would change. |
| ASSIGN confirmation is preserved | OK | Apply mode must still require the operator to type ASSIGN. |
| Phase 71 audit/reversal safety is preserved | OK | Real assignment must still create Phase 71 batch-token history through the existing write path. |
Apply warning: Do not apply the assignment unless the Preview Only selected count and changed count match the expected values.
Safety: Phase 86 is read-only. It adds preview-readiness guidance only and does not add assignment write logic. Assignment writes remain protected by Preview Only, ASSIGN confirmation, and Phase 71 batch-token history.
Validates assignment closure progress after the Phase 83 guided assignment workflow, using existing Phase 82/83 calculations and the Phase 71 batch-token audit trail.
All assignment and estimate gaps are closed. Continue with final handoff preview and export.
17 of 17 packages currently have assigned developers.
Latest Phase 71 batch is visible but reversal is blocked because package state no longer matches the batch.
Unlocked when assignment gaps reach zero.
Remaining assignment package IDs: None
Remaining estimate package IDs: None
Latest Phase 71 batch: BA-20260515085904989216 · changed packages: 0 · reversible: No
Safety: Phase 84 adds validation and guidance only. It does not add assignment write logic. Assignment writes remain protected by Preview Only, ASSIGN confirmation, and Phase 71 batch-token history.
Guided project-lead workflow for closing the remaining developer assignment gaps through the existing safe Phase 78/70/71 bulk assignment path. No new write logic is used here.
Continue to the estimate gap review workflow.
Exact assignment gap package IDs: None
Recommended action: No developer assignment action required. Keep Preview Only as the first action. Apply mode remains protected by the existing ASSIGN confirmation and Phase 71 batch-token audit/reversal safety.
| Step | Status | Detail |
|---|---|---|
| Open the guided assignment closure page | Ready / preserved | The page is prefilled with the exact remaining assignment gap package IDs. |
| Run Preview Only first | Ready / preserved | Preview Only must show the selected packages before any write action is applied. |
| Apply only after typing ASSIGN | Ready / preserved | The existing bulk assignment view enforces ASSIGN before Apply Bulk Assignment. |
| Preserve Phase 71 audit and reversal safety | Ready / preserved | No new write logic is introduced; existing Phase 71 batch-token history remains the write path. |
Project-lead execution panel for safely closing the remaining assignment and estimate gaps through the existing Phase 78/79 workflows while preserving the Phase 81 audit trail.
Review the final handoff preview, then export the developer handoff CSV.
0 item(s) remaining.
Open safe assignment closure0 item(s) remaining.
Open estimate review closure0 item(s) remaining.
Preview final handoff packAssignment gap package IDs: None
Estimate gap package IDs: None
Assignment history rows: 13 · Estimate history rows: 7 · Final closure history rows: 0
| Package | Assignment | Estimate | Changed by | Note |
|---|---|---|---|---|
| #8 Manifest parsed successfully | ERPWeb Developer → ERPWeb Developer | 0.00h → 0.50h | ERPWeb Developer | Phase 97 manual estimate gap closure: realistic estimate added using existing tracking form after Phase 96 assignment c… |
| #7 Manifest parsed successfully | ERPWeb Developer → ERPWeb Developer | 0.00h → 0.50h | ERPWeb Developer | Phase 97 manual estimate gap closure: realistic estimate added using existing tracking form after Phase 96 assignment c… |
| #6 Manifest metadata captured | ERPWeb Developer → ERPWeb Developer | 0.00h → 0.50h | ERPWeb Developer | Phase 97 manual estimate gap closure: realistic estimate added using existing tracking form after Phase 96 assignment c… |
| #5 Dependencies detected | ERPWeb Developer → ERPWeb Developer | 0.00h → 0.50h | ERPWeb Developer | Phase 97 manual estimate gap closure: realistic estimate added using existing tracking form after Phase 96 assignment c… |
| #4 Dependencies detected | ERPWeb Developer → ERPWeb Developer | 0.00h → 0.50h | ERPWeb Developer | Phase 97 manual estimate gap closure: realistic estimate added using existing tracking form after Phase 96 assignment c… |
| #3 Structured dependency records rebuilt | ERPWeb Developer → ERPWeb Developer | 0.00h → 0.50h | ERPWeb Developer | Phase 97 manual estimate gap closure: realistic estimate added using existing tracking form after Phase 96 assignment c… |
| #2 Dependencies captured | ERPWeb Developer → ERPWeb Developer | 0.00h → 0.50h | ERPWeb Developer | Phase 97 manual estimate gap closure: realistic estimate added using existing tracking form after Phase 96 assignment c… |
| #17 Dependency upgrade recommendation: sale | Unassigned → ERPWeb Developer | 0.50h → 0.50h | Johan Jordaan | Phase 71 bulk assignment batch: BA-20260515085904989216. Phase 96 controlled manual apply: preview remaining assignment… |
| #16 Dependency upgrade recommendation: base | Unassigned → ERPWeb Developer | 0.50h → 0.50h | Johan Jordaan | Phase 71 bulk assignment batch: BA-20260515085904989216. Phase 96 controlled manual apply: preview remaining assignment… |
| #8 Manifest parsed successfully | Unassigned → ERPWeb Developer | 0.00h → 0.00h | Johan Jordaan | Phase 71 bulk assignment batch: BA-20260515085904989216. Phase 96 controlled manual apply: preview remaining assignment… |
Project-lead execution view for closing assignment and estimate gaps while preserving the existing work package history audit trail.
Review the final handoff preview, then export the developer handoff CSV.
Assign missing developers
Review and update missing estimates
Confirm final handoff readiness
Assignment gap package IDs: None
Estimate gap package IDs: None
| When | Package | Action | Assignment | Estimate | Changed by | Note |
|---|---|---|---|---|---|---|
| 2026-05-15 11:53 | #8 — Manifest parsed successfully | Estimate | ERPWeb Developer → ERPWeb Developer | 0.00h → 0.50h | ERPWeb Developer | Phase 97 manual estimate gap closure: realistic estimate added using existing tracking form after Phase 96 assignment c… |
| 2026-05-15 11:52 | #7 — Manifest parsed successfully | Estimate | ERPWeb Developer → ERPWeb Developer | 0.00h → 0.50h | ERPWeb Developer | Phase 97 manual estimate gap closure: realistic estimate added using existing tracking form after Phase 96 assignment c… |
| 2026-05-15 11:52 | #6 — Manifest metadata captured | Estimate | ERPWeb Developer → ERPWeb Developer | 0.00h → 0.50h | ERPWeb Developer | Phase 97 manual estimate gap closure: realistic estimate added using existing tracking form after Phase 96 assignment c… |
| 2026-05-15 11:52 | #5 — Dependencies detected | Estimate | ERPWeb Developer → ERPWeb Developer | 0.00h → 0.50h | ERPWeb Developer | Phase 97 manual estimate gap closure: realistic estimate added using existing tracking form after Phase 96 assignment c… |
| 2026-05-15 11:51 | #4 — Dependencies detected | Estimate | ERPWeb Developer → ERPWeb Developer | 0.00h → 0.50h | ERPWeb Developer | Phase 97 manual estimate gap closure: realistic estimate added using existing tracking form after Phase 96 assignment c… |
| 2026-05-15 11:51 | #3 — Structured dependency records rebuilt | Estimate | ERPWeb Developer → ERPWeb Developer | 0.00h → 0.50h | ERPWeb Developer | Phase 97 manual estimate gap closure: realistic estimate added using existing tracking form after Phase 96 assignment c… |
| 2026-05-15 11:50 | #2 — Dependencies captured | Estimate | ERPWeb Developer → ERPWeb Developer | 0.00h → 0.50h | ERPWeb Developer | Phase 97 manual estimate gap closure: realistic estimate added using existing tracking form after Phase 96 assignment c… |
| 2026-05-15 10:59 | #17 — Dependency upgrade recommendation: sale | Assignment | Unassigned → ERPWeb Developer | 0.50h → 0.50h | Johan Jordaan | Phase 71 bulk assignment batch: BA-20260515085904989216. Phase 96 controlled manual apply: preview remaining assignment… |
| 2026-05-15 10:59 | #16 — Dependency upgrade recommendation: base | Assignment | Unassigned → ERPWeb Developer | 0.50h → 0.50h | Johan Jordaan | Phase 71 bulk assignment batch: BA-20260515085904989216. Phase 96 controlled manual apply: preview remaining assignment… |
| 2026-05-15 10:59 | #8 — Manifest parsed successfully | Assignment | Unassigned → ERPWeb Developer | 0.00h → 0.00h | Johan Jordaan | Phase 71 bulk assignment batch: BA-20260515085904989216. Phase 96 controlled manual apply: preview remaining assignment… |
You came here from the Phase 78 readiness workflow. The bulk assignment form below has been prefilled where possible so the project lead can preview or apply the fix safely.
Review each package below, enter a realistic estimate in the existing Estimated hours field, add a note, then click Save Tracking.
Preview the Phase 75 handoff landing page before downloading the developer-ready CSV pack, or use the filtered preview links below for assignment-ready groups, high-impact handoffs, explicit package IDs, and assigned developer packs.
Phase 75 preview counts: full pack 17 package(s); assignment-needed 0 package(s); high-impact 0 package(s).
Controlled handoff view for real assignments: use the recommended filters, suggested developer names, and package ID groups below before applying bulk assignment. This uses existing work package and history fields only.
Existing active assignment owner · assignment history, current package assignment
Current packages: 17 Open: 17 History: 24 23.50h Preview developer packPreviously used assignment owner · assignment history
Current packages: 0 Open: 0 History: 16 0h Preview developer packPreviously used assignment owner · assignment history
Current packages: 0 Open: 0 History: 12 0h Preview developer packPreviously used assignment owner · assignment history
Current packages: 0 Open: 0 History: 1 0h Preview developer packPreviously used assignment owner · assignment history
Current packages: 0 Open: 0 History: 1 0h Preview developer packPhase 71 tracks future bulk assignment batches using history-note batch tokens. The latest tokened batch can be reversed only when the package still has the assignment created by that batch.
Latest Phase 71 batch: BA-20260515085904989216 · Total: 17 · Reversible: 17 · Blocked/skipped: 0
| When | Package | Old owner | New owner | Changed by | Batch |
|---|---|---|---|---|---|
| 2026-05-15 10:59 | #17 — Dependency upgrade recommendation: sale | Unassigned | ERPWeb Developer | Johan Jordaan | BA-20260515085904989216 |
| 2026-05-15 10:59 | #16 — Dependency upgrade recommendation: base | Unassigned | ERPWeb Developer | Johan Jordaan | BA-20260515085904989216 |
| 2026-05-15 10:59 | #8 — Manifest parsed successfully | Unassigned | ERPWeb Developer | Johan Jordaan | BA-20260515085904989216 |
| 2026-05-15 10:59 | #7 — Manifest parsed successfully | Unassigned | ERPWeb Developer | Johan Jordaan | BA-20260515085904989216 |
| 2026-05-15 10:59 | #6 — Manifest metadata captured | Unassigned | ERPWeb Developer | Johan Jordaan | BA-20260515085904989216 |
| 2026-05-15 10:59 | #5 — Dependencies detected | Unassigned | ERPWeb Developer | Johan Jordaan | BA-20260515085904989216 |
| 2026-05-15 10:59 | #4 — Dependencies detected | Unassigned | ERPWeb Developer | Johan Jordaan | BA-20260515085904989216 |
| 2026-05-15 10:59 | #3 — Structured dependency records rebuilt | Unassigned | ERPWeb Developer | Johan Jordaan | BA-20260515085904989216 |
| 2026-05-15 10:59 | #2 — Dependencies captured | Unassigned | ERPWeb Developer | Johan Jordaan | BA-20260515085904989216 |
| 2026-05-15 10:59 | #9 — Manifest version does not start with source Odoo major version | Unassigned | ERPWeb Developer | Johan Jordaan | BA-20260515085904989216 |
| 2026-05-15 10:59 | #13 — Legacy states usage detected | Unassigned | ERPWeb Developer | Johan Jordaan | BA-20260515085904989216 |
| 2026-05-15 10:59 | #14 — Legacy attrs usage detected | Unassigned | ERPWeb Developer | Johan Jordaan | BA-20260515085904989216 |
| Queue Stage | Owner | Priority | Status | Package | Next action |
|---|---|---|---|---|---|
| Assigned / Not Started | ERPWeb Developer | Critical | To Do | #15 — Developer upgrade review: erpweb_phase3_risky_test_module | Start the package, capture progress notes, and move it toward Review. |
| Assigned / Not Started | ERPWeb Developer | High | To Do | #1 — Old Odoo API method signature detected | Start the package, capture progress notes, and move it toward Review. |
| Assigned / Not Started | ERPWeb Developer | Medium | To Do | #12 — Deprecated @api.multi usage | Start the package, capture progress notes, and move it toward Review. |
| Assigned / Not Started | ERPWeb Developer | Medium | To Do | #14 — Legacy attrs usage detected | Start the package, capture progress notes, and move it toward Review. |
| Assigned / Not Started | ERPWeb Developer | Medium | To Do | #10 — Legacy Odoo JavaScript module pattern detected | Start the package, capture progress notes, and move it toward Review. |
| Assigned / Not Started | ERPWeb Developer | Medium | To Do | #13 — Legacy states usage detected | Start the package, capture progress notes, and move it toward Review. |
| Assigned / Not Started | ERPWeb Developer | Medium | To Do | #11 — Legacy web.* JavaScript require detected | Start the package, capture progress notes, and move it toward Review. |
| Assigned / Not Started | ERPWeb Developer | Low | To Do | #9 — Manifest version does not start with source Odoo major version | Start the package, capture progress notes, and move it toward Review. |
| Assigned / Not Started | ERPWeb Developer | Info | To Do | #2 — Dependencies captured | Start the package, capture progress notes, and move it toward Review. |
| Assigned / Not Started | ERPWeb Developer | Info | To Do | #4 — Dependencies detected | Start the package, capture progress notes, and move it toward Review. |
| Assigned / Not Started | ERPWeb Developer | Info | To Do | #5 — Dependencies detected | Start the package, capture progress notes, and move it toward Review. |
| Assigned / Not Started | ERPWeb Developer | Info | To Do | #6 — Manifest metadata captured | Start the package, capture progress notes, and move it toward Review. |
Total: 17 · Open: 17 · High-impact: 2 · 23.50h
Ready to close: 0 Blocked: 0Project-lead view of which work packages are not ready to close, why they are not ready, and what action/evidence is still missing. This is calculated from existing work package fields and tracking history.
| Package | Priority | Status | Readiness | Why not ready | Missing action/evidence |
|---|---|---|---|---|---|
| #15 — Developer upgrade review: erpweb_phase3_risky_test_module | Critical | To Do | Not Ready |
|
|
| #1 — Old Odoo API method signature detected | High | To Do | Not Ready |
|
|
| #10 — Legacy Odoo JavaScript module pattern detected | Medium | To Do | Not Ready |
|
|
| #11 — Legacy web.* JavaScript require detected | Medium | To Do | Not Ready |
|
|
| #12 — Deprecated @api.multi usage | Medium | To Do | Not Ready |
|
|
| #14 — Legacy attrs usage detected | Medium | To Do | Not Ready |
|
|
| #13 — Legacy states usage detected | Medium | To Do | Not Ready |
|
|
| #9 — Manifest version does not start with source Odoo major version | Low | To Do | Not Ready |
|
|
| #2 — Dependencies captured | Info | To Do | Not Ready |
|
|
| #3 — Structured dependency records rebuilt | Info | To Do | Not Ready |
|
|
These are the first items a developer should look at, sorted by upgrade sequence, priority, module, and recommendation category.
| Seq | Priority | Module | Action Category | Review | Work Package | Status |
|---|---|---|---|---|---|---|
| 20 | Critical | erpweb_phase3_risky_test_module | Score 299 | Manual Review | #15 — Developer upgrade review: erpweb_phase3_risky_test_module | To Do |
| 32 | High | erpweb_phase3_risky_test_module | Convert Old API Signatures | Manual Review | #1 — Old Odoo API method signature detected | To Do |
| 42 | Medium | erpweb_phase3_risky_test_module | Migrate Legacy JavaScript Module Pattern | Manual Review | #10 — Legacy Odoo JavaScript module pattern detected | To Do |
| 42 | Medium | erpweb_phase3_risky_test_module | Migrate Legacy web.* JavaScript Imports | Manual Review | #11 — Legacy web.* JavaScript require detected | To Do |
| 42 | Medium | erpweb_phase3_risky_test_module | Modernize Recordset API | Manual Review | #12 — Deprecated @api.multi usage | To Do |
| 42 | Medium | erpweb_phase3_risky_test_module | Review / Convert attrs Modifiers | Manual Review | #14 — Legacy attrs usage detected | To Do |
| 42 | Medium | erpweb_phase3_risky_test_module | Review / Convert states Modifiers | Manual Review | #13 — Legacy states usage detected | To Do |
| 52 | Low | erpweb_phase3_risky_test_module | Update Manifest Version for Target | Manual Review | #9 — Manifest version does not start with source Odoo major version | To Do |
| 62 | Info | erpweb_phase3_risky_test_module | Dependency Review | Manual Review | #2 — Dependencies captured | To Do |
| 62 | Info | erpweb_phase3_risky_test_module | Dependency Review | Manual Review | #3 — Structured dependency records rebuilt | To Do |
| 62 | Info | erpweb_phase3_risky_test_module | Dependency Review | Manual Review | #4 — Dependencies detected | To Do |
| 62 | Info | erpweb_phase3_risky_test_module | Dependency Review | Manual Review | #5 — Dependencies detected | To Do |
Use this section when assigning a developer to a specific module. Each module shows the highest-impact work first.
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: erpweb_phase3_risky_test_module is currently rated CRITICAL with score 299. 1 high scanner finding(s) found. 5 medium scanner finding(s) found.
Developer task: Start with this module first. Review all blockers, critical/high scanner findings, dependency issues, Phase 61 upgrade recommendations, API changes, XML/view migration risks, and JavaScript risks.
Acceptance criteria / evidence required:
Source: Risk scoring / score 299
Trace key: module-risk:1:critical:299
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: This file appears to use the old cr, uid, ids, context method signature. Phase 61 recommendation: Convert old cr/uid/ids/context method signatures to modern self.env recordset-based API. Action category: convert_old_api_signature. Confidence: high. Review status: manual-review.
Developer task: Review scanner finding for erpweb_phase3_risky_test_module. Location: erpweb_phase3_risky_test_module/models/risky_model.py:10. Suggested action: Convert old API methods to modern Odoo environment API using self.env and recordsets. Use Phase 61 action category 'convert_old_api_signature' to group and sequence this work. Manual-review status: manual-review.
Acceptance criteria / evidence required:
Source: Phase 61 scanner recommendation / convert_old_api_signature
Trace key: scanner:erpweb_phase3_risky_test_module|python_api|Old Odoo API method signature detected|erpweb_phase3_risky_test_module/models/risky_model.py|10
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: This JavaScript file uses odoo.define, which may need migration for newer Odoo frontend architecture. Phase 61 recommendation: Review legacy odoo.define JavaScript and migrate it where required for the target Odoo frontend architecture. Action category: migrate_legacy_javascript_module. Confidence: medium. Review status: manual-review.
Developer task: Review scanner finding for erpweb_phase3_risky_test_module. Location: erpweb_phase3_risky_test_module/static/src/js/risky.js:1. Suggested action: Review whether this should be converted to the modern Odoo JavaScript module format. Use Phase 61 action category 'migrate_legacy_javascript_module' to group and sequence this work. Manual-review status: manual-review.
Acceptance criteria / evidence required:
Source: Phase 61 scanner recommendation / migrate_legacy_javascript_module
Trace key: scanner:erpweb_phase3_risky_test_module|javascript|Legacy Odoo JavaScript module pattern detected|erpweb_phase3_risky_test_module/static/src/js/risky.js|1
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: This JavaScript file imports old web.* modules, which often change between Odoo versions. Phase 61 recommendation: Review legacy web.* JavaScript imports and migrate them to the target Odoo frontend service/module patterns. Action category: migrate_legacy_web_js_imports. Confidence: medium. Review status: manual-review.
Developer task: Review scanner finding for erpweb_phase3_risky_test_module. Location: erpweb_phase3_risky_test_module/static/src/js/risky.js:3. Suggested action: Review frontend imports and services against the target Odoo version. Use Phase 61 action category 'migrate_legacy_web_js_imports' to group and sequence this work. Manual-review status: manual-review.
Acceptance criteria / evidence required:
Source: Phase 61 scanner recommendation / migrate_legacy_web_js_imports
Trace key: scanner:erpweb_phase3_risky_test_module|javascript|Legacy web.* JavaScript require detected|erpweb_phase3_risky_test_module/static/src/js/risky.js|3
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: This file uses @api.multi, which is deprecated/removed in newer Odoo versions. Phase 61 recommendation: Remove/replace @api.multi usage and verify the method behaves correctly with modern Odoo recordsets. Action category: modernize_recordset_api. Confidence: high. Review status: manual-review.
Developer task: Review scanner finding for erpweb_phase3_risky_test_module. Location: erpweb_phase3_risky_test_module/models/risky_model.py:6. Suggested action: Review and convert the method to modern recordset-style API for the target Odoo version. Use Phase 61 action category 'modernize_recordset_api' to group and sequence this work. Manual-review status: manual-review.
Acceptance criteria / evidence required:
Source: Phase 61 scanner recommendation / modernize_recordset_api
Trace key: scanner:erpweb_phase3_risky_test_module|python_api|Deprecated @api.multi usage|erpweb_phase3_risky_test_module/models/risky_model.py|6
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: This XML file uses attrs. In newer Odoo versions, view modifier handling may need review. Phase 61 recommendation: Review attrs-based view modifiers and convert where required for the target Odoo view syntax. Action category: review_convert_attrs_modifiers. Confidence: medium. Review status: manual-review.
Developer task: Review scanner finding for erpweb_phase3_risky_test_module. Location: erpweb_phase3_risky_test_module/views/risky_views.xml:5. Suggested action: Review this view against the target Odoo version's XML/view modifier requirements. Use Phase 61 action category 'review_convert_attrs_modifiers' to group and sequence this work. Manual-review status: manual-review.
Acceptance criteria / evidence required:
Source: Phase 61 scanner recommendation / review_convert_attrs_modifiers
Trace key: scanner:erpweb_phase3_risky_test_module|xml_views|Legacy attrs usage detected|erpweb_phase3_risky_test_module/views/risky_views.xml|5
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: This XML file uses states. In newer Odoo versions, this may need conversion depending on context. Phase 61 recommendation: Review states-based visibility/read-only logic and convert where required for the target Odoo version. Action category: review_convert_states_modifiers. Confidence: medium. Review status: manual-review.
Developer task: Review scanner finding for erpweb_phase3_risky_test_module. Location: erpweb_phase3_risky_test_module/views/risky_views.xml:5. Suggested action: Review state-based visibility/read-only logic for compatibility with the target Odoo version. Use Phase 61 action category 'review_convert_states_modifiers' to group and sequence this work. Manual-review status: manual-review.
Acceptance criteria / evidence required:
Source: Phase 61 scanner recommendation / review_convert_states_modifiers
Trace key: scanner:erpweb_phase3_risky_test_module|xml_views|Legacy states usage detected|erpweb_phase3_risky_test_module/views/risky_views.xml|5
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: Project source version is 16.0, but manifest version is 12.0.1.0.0. Phase 61 recommendation: Review and update the manifest version so it aligns with the source and target upgrade path. Action category: update_manifest_version_for_target. Confidence: medium. Review status: manual-review.
Developer task: Review scanner finding for erpweb_phase3_risky_test_module. Location: erpweb_phase3_risky_test_module/__manifest__.py. Suggested action: Confirm whether the manifest version is correct for the source branch being upgraded. Use Phase 61 action category 'update_manifest_version_for_target' to group and sequence this work. Manual-review status: manual-review.
Acceptance criteria / evidence required:
Source: Phase 61 scanner recommendation / update_manifest_version_for_target
Trace key: scanner:erpweb_phase3_risky_test_module|version_risk|Manifest version does not start with source Odoo major version|erpweb_phase3_risky_test_module/__manifest__.py|
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: Dependencies recorded: stock, sale, account, mail Phase 61 recommendation: Use the source-aware dependency graph to validate dependency availability before code migration. Action category: dependency_review. Confidence: high. Review status: auto-safe.
Developer task: Review scanner finding for erpweb_phase3_risky_test_module. Location: custom_addons/qr_delivery/__manifest__.py. Suggested action: In the dependency graph phase, split and validate these dependencies against target Odoo version availability. Use Phase 61 action category 'dependency_review' to group and sequence this work. Manual-review status: auto-safe.
Acceptance criteria / evidence required:
Source: Phase 61 scanner recommendation / dependency_review
Trace key: scanner:erpweb_phase3_risky_test_module|dependencies|Dependencies captured|custom_addons/qr_delivery/__manifest__.py|
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: Structured dependency records were rebuilt for this module. Created: 0. Updated: 2. Deleted stale: 0. Standard Odoo: 2. Uploaded providers: 0. Missing custom: 0. Phase 61 recommendation: Use the source-aware dependency graph to validate dependency availability before code migration. Action category: dependency_review. Confidence: high. Review status: auto-safe.
Developer task: Review scanner finding for erpweb_phase3_risky_test_module. Location: erpweb_phase3_risky_test_module/__manifest__.py. Suggested action: Review the dependency summary report for missing custom dependencies before starting code migration. Use Phase 61 action category 'dependency_review' to group and sequence this work. Manual-review status: auto-safe.
Acceptance criteria / evidence required:
Source: Phase 61 scanner recommendation / dependency_review
Trace key: scanner:erpweb_phase3_risky_test_module|dependencies|Structured dependency records rebuilt|erpweb_phase3_risky_test_module/__manifest__.py|
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: Dependencies found in manifest: base, sale Phase 61 recommendation: Use the source-aware dependency graph to validate dependency availability before code migration. Action category: dependency_review. Confidence: high. Review status: auto-safe.
Developer task: Review scanner finding for erpweb_phase3_risky_test_module. Location: erpweb_phase3_risky_test_module/__manifest__.py. Suggested action: Later phases should validate these dependencies against the target Odoo version and installed app set. Use Phase 61 action category 'dependency_review' to group and sequence this work. Manual-review status: auto-safe.
Acceptance criteria / evidence required:
Source: Phase 61 scanner recommendation / dependency_review
Trace key: scanner:erpweb_phase3_risky_test_module|dependencies|Dependencies detected|erpweb_phase3_risky_test_module/__manifest__.py|
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: Dependencies found in manifest: base, sale, stock Phase 61 recommendation: Use the source-aware dependency graph to validate dependency availability before code migration. Action category: dependency_review. Confidence: high. Review status: auto-safe.
Developer task: Review scanner finding for erpweb_phase3_risky_test_module. Location: erpweb_phase3_test_module/__manifest__.py. Suggested action: Later phases should validate these dependencies against target Odoo version and installed app set. Use Phase 61 action category 'dependency_review' to group and sequence this work. Manual-review status: auto-safe.
Acceptance criteria / evidence required:
Source: Phase 61 scanner recommendation / dependency_review
Trace key: scanner:erpweb_phase3_risky_test_module|dependencies|Dependencies detected|erpweb_phase3_test_module/__manifest__.py|
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: Module 'QR Delivery Updated' has manifest metadata captured. Manifest version: 16.0.1.0.1. Phase 61 recommendation: Validate manifest metadata, dependencies, assets, license, and version format for the target Odoo version. Action category: validate_manifest_metadata. Confidence: medium. Review status: manual-review.
Developer task: Review scanner finding for erpweb_phase3_risky_test_module. Location: custom_addons/qr_delivery/__manifest__.py. Suggested action: In the real scanner phase, parse this manifest and validate depends, assets, license and version format. Use Phase 61 action category 'validate_manifest_metadata' to group and sequence this work. Manual-review status: manual-review.
Acceptance criteria / evidence required:
Source: Phase 61 scanner recommendation / validate_manifest_metadata
Trace key: scanner:erpweb_phase3_risky_test_module|manifest|Manifest metadata captured|custom_addons/qr_delivery/__manifest__.py|
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: Module metadata was parsed safely. Version: 12.0.1.0.0. License: LGPL-3. Phase 61 recommendation: Validate manifest metadata, dependencies, assets, license, and version format for the target Odoo version. Action category: validate_manifest_metadata. Confidence: medium. Review status: manual-review.
Developer task: Review scanner finding for erpweb_phase3_risky_test_module. Location: erpweb_phase3_risky_test_module/__manifest__.py. Suggested action: Continue with dependency and code-pattern scanning. Use Phase 61 action category 'validate_manifest_metadata' to group and sequence this work. Manual-review status: manual-review.
Acceptance criteria / evidence required:
Source: Phase 61 scanner recommendation / validate_manifest_metadata
Trace key: scanner:erpweb_phase3_risky_test_module|manifest|Manifest parsed successfully|erpweb_phase3_risky_test_module/__manifest__.py|
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: Version: 16.0.1.0.0. License: LGPL-3. Phase 61 recommendation: Validate manifest metadata, dependencies, assets, license, and version format for the target Odoo version. Action category: validate_manifest_metadata. Confidence: medium. Review status: manual-review.
Developer task: Review scanner finding for erpweb_phase3_risky_test_module. Location: erpweb_phase3_test_module/__manifest__.py. Suggested action: Continue with dependency and code-pattern scanning. Use Phase 61 action category 'validate_manifest_metadata' to group and sequence this work. Manual-review status: manual-review.
Acceptance criteria / evidence required:
Source: Phase 61 scanner recommendation / validate_manifest_metadata
Trace key: scanner:erpweb_phase3_risky_test_module|manifest|Manifest parsed successfully|erpweb_phase3_test_module/__manifest__.py|
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: erpweb_phase3_risky_test_module depends on base. Action category: keep_dependency. Status: auto-safe. Confidence: high. Classification: available_in_target_community.
Developer task: Keep this dependency. It exists in both the validated source and target Odoo source registries. Source availability: True; target availability: True; community: True; enterprise: False. Source edition: community; target edition: community. Manual review required: auto-safe.
Acceptance criteria / evidence required:
Source: Phase 61 dependency recommendation / keep_dependency
Trace key: upgrade-rec:dependency:erpweb_phase3_risky_test_module:base:keep_dependency
Next project-lead action: Start the package, capture progress notes, and move it toward Review.
Why not ready:
Missing action/evidence:
Summary: erpweb_phase3_risky_test_module depends on sale. Action category: keep_dependency. Status: auto-safe. Confidence: high. Classification: available_in_target_community.
Developer task: Keep this dependency. It exists in both the validated source and target Odoo source registries. Source availability: True; target availability: True; community: True; enterprise: False. Source edition: community; target edition: community. Manual review required: auto-safe.
Acceptance criteria / evidence required:
Source: Phase 61 dependency recommendation / keep_dependency
Trace key: upgrade-rec:dependency:erpweb_phase3_risky_test_module:sale:keep_dependency
Use this section to batch similar upgrade fixes, such as old API conversion, XML modifier review, JavaScript migration, or dependency confirmation.
| Seq | Priority | Module | Package | Review | Status |
|---|---|---|---|---|---|
| 20 | Critical | erpweb_phase3_risky_test_module | #15 — Developer upgrade review: erpweb_phase3_risky_test_module | Manual Review | To Do |
| Seq | Priority | Module | Package | Review | Status |
|---|---|---|---|---|---|
| 32 | High | erpweb_phase3_risky_test_module | #1 — Old Odoo API method signature detected | Manual Review | To Do |
| Seq | Priority | Module | Package | Review | Status |
|---|---|---|---|---|---|
| 42 | Medium | erpweb_phase3_risky_test_module | #10 — Legacy Odoo JavaScript module pattern detected | Manual Review | To Do |
| Seq | Priority | Module | Package | Review | Status |
|---|---|---|---|---|---|
| 42 | Medium | erpweb_phase3_risky_test_module | #11 — Legacy web.* JavaScript require detected | Manual Review | To Do |
| Seq | Priority | Module | Package | Review | Status |
|---|---|---|---|---|---|
| 42 | Medium | erpweb_phase3_risky_test_module | #12 — Deprecated @api.multi usage | Manual Review | To Do |
| Seq | Priority | Module | Package | Review | Status |
|---|---|---|---|---|---|
| 42 | Medium | erpweb_phase3_risky_test_module | #14 — Legacy attrs usage detected | Manual Review | To Do |
| Seq | Priority | Module | Package | Review | Status |
|---|---|---|---|---|---|
| 42 | Medium | erpweb_phase3_risky_test_module | #13 — Legacy states usage detected | Manual Review | To Do |
| Seq | Priority | Module | Package | Review | Status |
|---|---|---|---|---|---|
| 52 | Low | erpweb_phase3_risky_test_module | #9 — Manifest version does not start with source Odoo major version | Manual Review | To Do |
| Seq | Priority | Module | Package | Review | Status |
|---|---|---|---|---|---|
| 62 | Info | erpweb_phase3_risky_test_module | #2 — Dependencies captured | Manual Review | To Do |
| 62 | Info | erpweb_phase3_risky_test_module | #3 — Structured dependency records rebuilt | Manual Review | To Do |
| 62 | Info | erpweb_phase3_risky_test_module | #4 — Dependencies detected | Manual Review | To Do |
| 62 | Info | erpweb_phase3_risky_test_module | #5 — Dependencies detected | Manual Review | To Do |
| Seq | Priority | Module | Package | Review | Status |
|---|---|---|---|---|---|
| 62 | Info | erpweb_phase3_risky_test_module | #6 — Manifest metadata captured | Manual Review | To Do |
| 62 | Info | erpweb_phase3_risky_test_module | #7 — Manifest parsed successfully | Manual Review | To Do |
| 62 | Info | erpweb_phase3_risky_test_module | #8 — Manifest parsed successfully | Manual Review | To Do |
| Seq | Priority | Module | Package | Review | Status |
|---|---|---|---|---|---|
| 65 | Info | erpweb_phase3_risky_test_module | #16 — Dependency upgrade recommendation: base | Auto-safe | To Do |
| 65 | Info | erpweb_phase3_risky_test_module | #17 — Dependency upgrade recommendation: sale | Auto-safe | To Do |
Manual-review items: require developer notes explaining the code decision, before/after module evidence, rebuilt scanner/dependency/risk output, and target-version test confirmation where applicable.
Auto-safe items: can be confirmed later, but must still show the dependency or manifest decision was reviewed against the validated source/target repositories.
Done means: the work package acceptance criteria is satisfied, evidence exists in the project notes/history, and related reports have been rebuilt.
This page is advisory and tracking-focused. It does not modify uploaded module code automatically.