Honors thesis · Barrett, The Honors College · Arizona State University
AI assistants forget the rules you gave them
ten minutes ago.
Conversational Riverfronts checks every single turn against the
constraints you actually set — and catches the drift while the
conversation is still open.
The rule you set on turn one is gone by turn twenty
Instruction drift is a silent failure. Nothing errors, nothing warns, and the work is usually finished before anyone notices.
A session opens and its terms get set in the first minute. Prose, not bullet
lists. Only the file I paste. No recap at the end. These are not preferences —
they are what makes the output usable at all.
Turn 1 — stated once
You: Working through this parser with me. Prose only — no bullet lists. Touch only the file I paste. Skip the recap at the end.
↓ twenty turns later ↓
Without the layer
You: Why is the tokeniser dropping the last escape?
Assistant: Here's what's happening:
• The escape is consumed in `readString()`
• The index advances twice
I also went ahead and tidied `lexer.ts` and `utils.ts` while I was in there. To summarise, the fix is a one-line change.
✗ Bullet list. Two files that were never pasted. A recap.
With the layer
You: Why is the tokeniser dropping the last escape?
format: prose only · scope: parser.ts · tone: no recap — checked against the response before it was returned
Assistant: The escape is consumed inside `readString()`, which advances the index once on its own account and once again when it returns, so the final character is passed over. The change is confined to that function.
✓ Prose. One file. No recap.
Illustrative. The exchange is reconstructed from the failure pattern
described in interviews, not transcribed from one logged session —
instrumenting real sessions to measure how often and how early this happens
is part of the thesis work, not a result I already have.
They hold for a while. Then tone goes, then scope, and by the twentieth turn you
are reading answers against rules you already gave. Instruction drift lands
on anyone who works with an assistant across an extended session rather than a
single exchange.
What the interviews found
Two computer science students who use LLMs every day hit this constantly. The
most useful thing either said was not a complaint — it was a description of a
habit.
He keeps a CLAUDE.md instruction file in the repo specifically because his
agent drifts less when he does.
Interview 01 · CS student, daily LLM user
Two things there matter more than a complaint would. People are already
hand-building this scaffolding, unprompted, at their own cost. And the reason is
comparative — drifts less — which is someone who has stopped expecting
instructions to be followed and has priced partial compliance into the work.
The file makes the constraint present in the context. It does nothing to check
whether the constraint was honoured on the turn it was given. That gap is the
thesis: not whether the instruction is available, but whether it was obeyed, on
this turn, while the answer can still be fixed.
03Why current fixes fall short
Everything that exists solves the problem next door
Three categories of tool sit near instruction drift. Each is genuinely good at something adjacent to it.
Instruction files
CLAUDE.md · system prompts · custom instructions
States the constraints once, at the start of the session.
Where it stops
Nothing ever asks whether the response that just arrived complied. When it drifts, they are silent — reporting compliance was never something they do.
They help. The interview evidence is that they help enough to be maintained by hand. That is the ceiling.
Memory tools
Supermemory · Mem0
Carries facts, preferences and history across sessions so they can be recalled later.
Where it stops
Retrieval asks what did we establish? Fidelity asks did you just do what I asked? A system can recall a constraint perfectly and still violate it on this turn.
A real problem, well solved. It is simply a different problem.
Offline auditors
Offscript (CHIIR 2026)
Reviews the conversation after the fact and scores it.
Where it stops
An offline review arrives at the same moment you already notice the problem unaided — once the work is done.
The nearest research to this one, and clarifying precisely because it stops where this starts.
Guardrail systems are the fourth neighbour, and they point a different way
again: they enforce a fixed policy the operator set in advance — safety, PII,
allowed topics. The constraints here belong to the user, arrive in ordinary
language mid-conversation, and change as the conversation does. A guardrail has
no idea what you asked for four turns ago.
What is missing, in every case, is a live correction loop — a check that runs on
the turn, while the conversation is still open.
04How it works
A bank, not a reservoir
A structured packet after each prompt-and-response pair, checking the response against the constraints in force at that moment.
The proposal is a live, per-turn instruction-fidelity layer. After each
prompt-and-response pair, a structured data packet holding the session’s
constraints is fed alongside the exchange, and the response that was just
produced is evaluated against the constraints in force at that moment. Where
it has violated one, that is caught on the turn rather than discovered later.
The distinction the design turns on is between storage and flow control. A
reservoir holds water; a bank decides where it goes. Memory systems are
reservoirs — they keep the constraint available. This is a bank. It does not try
to remember the conversation better than the model does; it stands alongside each
turn and holds the flow to the course its user set.
←→ Scroll the diagram sideways
Fig. 1 One turn. The packet is assembled from the constraints in force at that point in the session, the check runs against the response that was just produced, and the outcome updates the constraint set before the next turn.
01
Synchronous with the turn
A violation is caught at the only moment it is still cheap to fix.
Cost — An extra inference per turn — the open question a prototype has to answer before anything else is worth building.
02
Derived, not authored
The packet is assembled from constraints you already stated out loud, so there is no second document to keep in sync.
Cost — Ordinary language has to become checkable. “Only the file I paste” is clear to a person and not yet a predicate.
03
Ordered and reversible
Change your mind on turn fourteen and the newer constraint supersedes the older one without erasing it.
Cost — This is where the layer comes closest to being a memory system — the tension the thesis has to resolve rather than assume away.
04
Legible
The packet is a structured object a person can read, so when the layer is wrong you can see why.
Cost — A compliance layer whose judgements cannot be inspected would replace one trust problem with another.
What drift looks like — and what removing it looks like
Drag to move through a twenty-turn session and watch which constraints are still being honoured.
Formatdropped
Answer in prose. No bullet lists.
Scopeslipping
Only the file I paste. Do not refactor anything else.
Tonedropped
No preamble, no summary of what you just did.
0 of 3 constraints are still honoured at turn 12. The customer notices the rest only when they re-read the finished work against rules they already gave.
Illustrative schedule, not measured data. The decay turns are hand-authored to match the shape described in marketplace conversations; instrumenting real sessions is the next piece of work.
The reading on the left is the current experience, and the point of putting a
number on it is that the number is rarely zero and rarely all three. It is the
middle state — partial compliance, silently — that makes this expensive to
absorb and easy to miss.
Flow control, not memory is the claim. Keeping that claim true under a layer
that persists across breaks in a conversation is the work, and it is the first
of the open questions below.
05Research status
What is settled, and what is not
Research phase, supervised by Professor Steven Osburn in his NLP lab. Thesis work begins Spring 2027. Nothing is built, and the open questions below are printed as questions because that is what they are.
This is a thesis in its research phase, supervised by Professor Steven Osburn in
his NLP lab at Arizona State University, with thesis work beginning in
Spring 2027. Nothing is built. Saying so plainly is not modesty; a page that
presented this as a working system would be making a claim the work does not yet
support, and that is the one thing that would properly undermine it.
Settled
A competitive landscape audit is complete, and its finding is that the concept is
distinct from the existing categories of memory tools, guardrail systems, and
after-the-fact auditors — the three neighbours described
above. That is a real result and it is a narrow one: it establishes
that the idea is not already built, not that it will work.
Being tested
The problem side has interview evidence: two daily LLM users who hit instruction
drift constantly, one of whom maintains an instruction file by hand because of
it. What that supports is that the pain is real and self-reported. It does not
yet establish how often drift occurs, how early, or on which kinds of
constraint — which is measurement work, and it comes before any interface.
Open — not yet answered
These are unresolved. They are printed here as questions because that is what
they are, and filling them in with plausible-sounding answers would misrepresent
the state of the work.
Open · unanswered
How does the layer persist constraints across breaks in a conversation without becoming the memory layer it is defined against?
The design calls for persistence across breaks and for an ordered, reversible constraint set. Both are forms of carried state. The distinction I am relying on — that it carries constraints in force rather than facts recalled — is conceptually clear and I do not yet have an implementation that keeps it clean.
Open · unanswered
How does a constraint stated in ordinary language become something a check can actually evaluate?
"No bullet lists" is nearly mechanical. "Only the file I paste" needs a notion of scope. "Match the tone of the last thing I wrote" may not be checkable at all. Which classes of constraint are tractable, and whether the tractable ones are the ones users care about, is unknown.
Open · unanswered
What performs the check, and can it be narrower and cheaper than the model being checked?
If judging compliance requires a model as capable as the one under review, the loop is circular and the economics are poor. A small, constraint-specific checker is the hope, not yet a design.
Open · unanswered
What does a check on every turn cost, and is that tolerable?
A per-turn check is a second inference per turn in latency and in spend. If the cost exceeds the cost of the drift it catches, the arithmetic does not close. This is measurable early with a scrappy harness and no users, so it should be measured early.
Open · unanswered
When a newer constraint contradicts an older one, what should happen?
Reversibility says track the change rather than overwrite it. It does not say which constraint governs the current turn, how the user is told a supersession was inferred, or what happens when the contradiction was accidental.
Where the evidence is thin
The most consequential gap is not technical. Everything here about who would
pay for this rests on a conversation that has not happened — an engineering
lead or platform owner who treats unreliable output as a cost with a number
attached, rather than an individual’s annoyance. The likeliest outcome of finding
that person is that they describe the problem in language I would not have
chosen.
C-03AI research and development intern, telecom equipment vendor scheduled
C-05Master's student, global management scheduled
C-06Research group lead, university AI lab scheduled
C-07Engineering lead or platform owner, unidentified not yet found
Participants appear by role, not by name. Agreeing to talk to a classmate for
a course assignment is not agreeing to be named on a page that stays online
indefinitely and is indexed. C-07 is the
payer conversation, and it is listed because it has not happened — the gap is
the state of the evidence, not an omission from the log.
06What gets built, and when
Roadmap
Phases, not dates, past the point where dates would be invention. Each phase answers something the one before it raised — and a phase that returns the wrong answer should stop the ones after it.
Fall 2026
complete
Problem and landscape
Competitive landscape audit against memory tools, guardrail systems and offline
auditors — complete, and the concept is distinct from all three. Interviews with
daily LLM users establishing that instruction drift is real and self-reported.
Fall 2026
under way
Marketplace conversations
Finish the customer-side work FSE 301 is for: enough conversations to know
whether the pain generalises past two students, and above all to find the payer
persona the argument currently assumes.
Spring 2027
planned
Measure the drift
Thesis work begins. Instrument real long sessions and establish a baseline: how
often constraints are violated, how early, and on which classes of constraint.
No interface, no product — just the number that everything else has to beat.
Spring 2027
planned
Formalise the constraint packet
Decide what a constraint is in this system: how it is extracted from ordinary
language, how the ordered set is represented so that supersession is tracked
rather than overwritten, and which classes are tractable enough to check. This is
where the open questions either resolve or force the design to change.
After the above
contingent
Prototype the per-turn check
A narrow loop over one or two mechanical constraint classes — format and scope —
against a cheap, constraint-specific checker. The point is to produce a cost
figure and a fidelity figure, not a usable tool.
After the above
contingent
Evaluate honestly
Does per-turn checking reduce drift against the baseline, and what does it cost
in latency and spend to do so? A negative result here is a publishable finding
and a reason to stop, and it should be reported as one.
Beyond the thesis
contingent
Make it usable by someone else
Only if the evaluation holds. Packaging the layer so it sits in front of an
assistant somebody else already uses, with the packet legible to them. Nothing
before this phase requires it, and it is listed last because it is the part most
likely to change shape entirely.
07Pitch materials
Deck and video pitch
The FSE 301 EBPD V3 deck and video pitch, at paths that are not going to move.
Both files live at fixed paths on a domain I own —
/deck.pdf and /pitch.mp4. No
version numbers, no content hashes, no shortener in front of them. A newer
deck replaces the file at the same address, so a link handed to a grader,
a committee member, or a reporter today keeps resolving after the file
behind it has been revised.
V3 pitch deck/deck.pdf
Not yet published. The deck will appear here, and at
/deck.pdf, once the file
is in place — the URL is reserved for it now so it never has to
change later.
Video pitch/pitch.mp4
Not yet published. Self-hosted at
/pitch.mp4 rather than
embedded from a video platform, so the link does not depend on
somebody else's account staying open.
08Who is doing this
About
Vishesh Singh Rajput
Undergraduate, computer science · Barrett, The Honors College · Arizona
State University
Conversational Riverfronts is my honors thesis, supervised by Professor
Steven Osburn in his NLP lab, with thesis work beginning in
Spring 2027.
The idea came out of using these systems for hours at a stretch and
noticing that the constraints I set at the start were the first thing to
go. It reached its current shape through FSE 301, where the
discipline of talking to people rather than theorising at them turned a
private annoyance into something with a customer, a competitive
landscape, and a set of questions I cannot yet answer.
Contact
Questions, suggestions and disagreements are all welcome — especially
disagreements, since five of the questions on this page are still open
and I would rather be corrected early than late.
If you have watched an assistant quietly drop an instruction you gave
it, or you run a team where that costs real review time, that is the
conversation this project is most missing. Write to me.