Review before applying
Compare actual behavior with the expected result. If a check fails, investigate it before applying more changes.
BezoutVale is a Windows AI coding client for reviewing integer algorithms. Discuss coefficient signs through a compatible endpoint and check the proposed code against the defining identity before accepting changes.
def bezout(a, b):
if any(type(v) is not int or abs(v) >= 10**100 for v in (a, b)):
raise ValueError("integer.range")
old_r, r = abs(a), abs(b)
old_s, s, old_t, t = 1, 0, 0, 1
while r:
q = old_r // r
old_r, r = r, old_r - q * r
old_s, s = s, old_s - q * s
old_t, t = t, old_t - q * t
return old_r, old_s * (-1 if a < 0 else 1), old_t * (-1 if b < 0 else 1)Compare actual behavior with the expected result. If a check fails, investigate it before applying more changes.
Base URL, credentials and a reachable server.
Test negative operands and both zero cases, verifying the integer identity and rejecting Boolean inputs.
def bezout(a, b):
if any(type(v) is not int or abs(v) >= 10**100 for v in (a, b)):
raise ValueError("integer.range")
old_r, r = abs(a), abs(b)
old_s, s, old_t, t = 1, 0, 0, 1
while r:
q = old_r // r
old_r, r = r, old_r - q * r
old_s, s = s, old_s - q * s
old_t, t = t, old_t - q * t
return old_r, old_s * (-1 if a < 0 else 1), old_t * (-1 if b < 0 else 1)BezoutVale is Windows coding software for examining helper routines whose outputs have to satisfy a precise contract. Open the project and describe what the caller expects from each returned value. Ask the model to inspect that interface before proposing a refactor, especially when several outputs can appear plausible in isolation.
A task based on bezout.py could focus on signed inputs and the coefficients returned with a common divisor. Bring a negative-input fixture into the conversation and state the identity the result must satisfy. Then review how the caller consumes the tuple, so a reordered return or changed sign convention does not pass unnoticed behind correct-looking arithmetic.
Use independent checks to evaluate the proposal. Run the project’s tests and inspect zero-input combinations, sign variations and rejection of unsupported operands. Keep the evidence attached to the original requirement. A model’s explanation can guide the review, but the application needs results that satisfy both the mathematical relation and the interface it actually calls.
Choose your model through a supported OpenAI-compatible or Anthropic endpoint, supplying credentials as required. An uncensored AI model may be available from that service, subject to provider restrictions. Tool support and context capacity depend on the selected model and server; scope the source discussion to what can be examined reliably in the session.
Not necessarily. Establish which properties the application requires and whether it relies on one particular representation. An equality assertion over a whole tuple may be stricter than the contract. Review the caller before changing either the routine or its tests.
Sign handling can preserve a plausible divisor while breaking the relation involving the coefficients. Provide signed fixtures and verify the defining relation independently. Review any normalization at the input boundary so the returned values still refer to the original operands.
State the intended result or rejection policy and compare it with the current implementation and callers. Do not assume ordinary positive-input reasoning settles the zero case. Include it explicitly in the review so later refactors preserve the chosen contract.
Yes. Put the existing tuple order, accepted types and sign rules in the request, then ask for a bounded change. Inspect the resulting diff for altered validation or reordered outputs and run contract-level checks before accepting the cleanup into your project.
BezoutVale · Updated 2026-10-25