Conversation
There was a problem hiding this comment.
Code Review
This pull request introduces deferred invoice cleanup for child departures until exit communications are sent, along with UI highlights for pending exit communications. It also updates user profile access rights, refactors year extraction in interventions using regex, and adjusts various configurations. Feedback focuses on addressing potential runtime errors—such as handling None values from regex searches and checking for uninitialized contract types before string operations—as well as removing a redundant early exit check that breaks docstring formatting and eliminating a duplicate view entry in the manifest.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
Confidence Score: 4/5One contained issue should be fixed before merging. Most changes are localized, but the new FY regex currently prevents normal fiscal-year intervention names from matching the previous year.
What T-Rex did
Important Files Changed
Sequence Diagram%%{init: {'theme': 'neutral'}}%%
sequenceDiagram
participant Staff as Staff termination
participant Contract as recurring.contract
participant Comm as partner.communication.job
participant Sponsor as Sponsor-facing invoices/UI
Staff->>Contract: terminate child departure
Contract->>Contract: compute exit_communication_pending
Contract-->>Sponsor: defer invoice cleanup while pending
Contract->>Comm: exit communication job
Comm->>Comm: _job_sent(send_mode)
Comm->>Contract: set exit_communication_sent
Comm->>Contract: cancel_contract_invoices()
Contract-->>Sponsor: apply invoice cleanup after notification
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
sequenceDiagram
participant Staff as Staff termination
participant Contract as recurring.contract
participant Comm as partner.communication.job
participant Sponsor as Sponsor-facing invoices/UI
Staff->>Contract: terminate child departure
Contract->>Contract: compute exit_communication_pending
Contract-->>Sponsor: defer invoice cleanup while pending
Contract->>Comm: exit communication job
Comm->>Comm: _job_sent(send_mode)
Comm->>Contract: set exit_communication_sent
Comm->>Contract: cancel_contract_invoices()
Contract-->>Sponsor: apply invoice cleanup after notification
Reviews (3): Last reviewed commit: "Update intervention_compassion/models/co..." | Re-trigger Greptile |
a24a229 to
7fa79c8
Compare
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
| match = re.search(r"\\d+", split_name[1]) | ||
| year_str = match.group() if match else None |
There was a problem hiding this comment.
Fix digit regex
r"\\d+" matches a literal backslash followed by d, not digits, so normal names like ...FY25 never set year_str. That makes search_value empty and skips copying the previous fiscal year's product_template_id, changing the created intervention data for every FY-based import.
Artifacts
Repro: Python harness for FY regex and product copy branch
- Contains supporting evidence from the run (text/x-python; charset=utf-8).
Repro: harness execution output showing empty search_value and skipped copy
- Keeps the command output available without making the summary code-heavy.
No description provided.