Review before applying
Compare actual behavior with the expected result. If a check fails, investigate it before applying more changes.
A rank names one ordering among many. LexiNest keeps permutation examples beside your source and model conversation, making the first, last and empty cases available for review.
from math import factorial
def unrank_permutation(size, rank):
if type(size) is not int or not 0 <= size <= 10:
raise ValueError("size 0 through 10")
if type(rank) is not int or not 0 <= rank < factorial(size):
raise ValueError("rank outside permutation count")
available, result = list(range(size)), []
for remaining in range(size,0,-1):
index, rank = divmod(rank, factorial(remaining-1))
result.append(available.pop(index))
return resultCompare actual behavior with the expected result. If a check fails, investigate it before applying more changes.
Base URL, credentials and a reachable server.
Check first and last ranks and the empty permutation, rejecting Boolean values and ranks outside the factorial count.
from math import factorial
def unrank_permutation(size, rank):
if type(size) is not int or not 0 <= size <= 10:
raise ValueError("size 0 through 10")
if type(rank) is not int or not 0 <= rank < factorial(size):
raise ValueError("rank outside permutation count")
available, result = list(range(size)), []
for remaining in range(size,0,-1):
index, rank = divmod(rank, factorial(remaining-1))
result.append(available.pop(index))
return resultLexiNest brings software work on ordered results into a Windows AI coding conversation. Open your project folder and explain how an ordering is selected, stored and later reproduced. Ask the model to inspect the code at those boundaries, so a proposed implementation change preserves the meaning of an identifier already used by the application.
For a focused example, request a review of unrank.py with the first and last valid ranks for a small permutation size. State whether ranks start at zero and what ordering convention the caller assumes. Those details turn an abstract ordering discussion into a checkable project change, with a concrete expected sequence for each selected input.
Review the proposed edit against both the routine and its consumers. Test an invalid rank and the empty-size case as well as ordinary results, using your own project commands. If an existing saved identifier would produce a different order after the change, treat that as a compatibility question rather than dismissing it as an implementation detail.
LexiNest uses a supported OpenAI-compatible or Anthropic connection for your chosen model, with credentials as needed. An abliterated AI model may be offered by that endpoint; actual restrictions, tool availability and context limits still depend on the model and server. Keep reproducible fixtures available whichever model assists the review.
A zero-based rank and a one-based rank select different results for the same displayed number. Identify the convention at the input boundary and in saved data. Review any conversion in the caller before changing the routine that generates the ordering.
Use a small size whose possible arrangements you can inspect independently, then provide the expected final sequence. Include the next invalid rank as a rejection case. This checks the boundary without depending on the same routine to generate its own expected result.
Yes, if it changes the ordering convention or how input elements are enumerated. Ask the model to inspect storage and retrieval code alongside the helper. Compare previously saved examples before accepting a change that appears equivalent only for newly generated results.
Describe that requirement separately. The supplied permutation example uses distinct positions, and repeated values can introduce different counting and identity questions. Review the representation and expected outcomes before expanding the helper beyond the contract used by current callers.
LexiNest · Updated 2026-10-25