Blast radius in one question.
Ask what else calls a function before you change its contract, and see callers in files your change never touched.
- AskWhat else calls this?
- Answered fromThe code graph
- CoversThe whole repository
Ask the codebase, not just the diff. Find out what else calls a function, how it behaved before, or where a similar pattern is used, with answers drawn from your repository's code graph.
Answer questions about the pending change. Ask what else calls a function, how it behaved before, or where a similar pattern is used.
/cloudaeye:ask
What else calls apply_refund, and does
anything depend on how it worked before my change?
Three callers sit outside your change. Two already
handle RefundError. The nightly chargeback
job still checks for a False return, so
after your change a rejected refund would stop the job
instead of being skipped.
api/refunds.py:31HandledPOST /refunds, errors go through the
API error middleware
admin/orders.py:112HandledAdmin console refunds, already catches
RefundError
jobs/chargebacks.py:58Needs a changeNightly chargeback job, checks for
False
apply_refund returned
False and logged a warning when a refund
exceeded the remaining balance. It now raises
RefundError
with the remaining balance in the message.
Is the balance checked the same way anywhere else?
Yes. ledger.debit in
payments/ledger.py also returns
False on an insufficient balance. Its one
caller, jobs/settlement.py:40, checks the
return value the same way.
A coding agent only knows what is in its context window. Q&A with Code answers from the repository's code graph, so the answer covers code your agent never opened.
Ask what else calls a function before you change its contract, and see callers in files your change never touched.
Ask how code behaved before your change, so you can tell an intended difference from an accident.
Ask whether something is already handled elsewhere, and reuse it instead of writing it a second time.
No verdict, no findings list, and it never edits code. Your question is passed word for word, because the phrasing carries what you want to know.
/cloudaeye:ask what else calls apply_refund?
$cloudaeye:ask what else calls apply_refund?
@cloudaeye /ask <your question>