feat(export): Sheet 3 List of Expenses feeding Sheet 2 actuals - #338
Merged
Merged
Conversation
…ce for Sheet 2 actuals Sheet 2 and Sheet 3 computed the blended converted-expense figure two different ways, so they could disagree. Build the expense row list once and have Sheet 2 SUMIF Sheet 3 via a hidden budget-line-id column. Unallocated remainders use the budget's estimated rate (flagged); refunds, zero amounts and over-allocation keep their rows so each expense foots, and zero/negative rates are treated as unusable to avoid #DIV/0!. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
…ke CI BudgetLineModel.category_id is UUID | None, so looking it up in a UUID-keyed dict failed CI's mypy. Resolve it first and skip the lookup when unset. The pre-push hook didn't catch it because it ran mypy from the repo root: there app.* imports don't resolve, and mypy.ini's ignore_missing_imports turns them into Any, hiding cross-module type errors in ai/budget/chat/users. It now runs black/mypy/flake8 from services/<svc> against ./app, matching the CI workflows. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
*and a footnote. Adds a Category column.SUMIFs over Sheet 3, matched on a hidden budget-line-id column. They replace the separate Python rollup (get_budget_line_expense_rollups/_compute_converted_expense, both removed), so the two sheets can't disagree. See design.md Decision 14.#DIV/0!.Test plan
pytest services/budget: 426 passedservices/budget/app(pre-push hook)🤖 Generated with Claude Code
Closes #321