← Back to journal

Capturing Interaction Without Clicking Blindly

Exploration needs budgets, risk policy, structural state measurement, and a terminal disposition for every candidate action.

Evidence basisKodeCapture interaction-policy, exploration-ledger, and state-surface implementation history
DisclosureEarly-access research note; automated exploration cannot determine every safe or meaningful action in an unfamiliar application.
Published by Kalu KodeRequest KodeCapture access →

An application often reveals important code only after interaction. That does not make “click everything” a responsible capture strategy.

Buttons can submit forms, delete data, start payments, send messages, change account state, or trigger expensive operations. Even harmless interfaces can contain infinite carousels, repeated controls, and animation surfaces that consume an exploration budget without adding evidence.

Capture needs an explicit interaction policy.

Discovery and authority are separate

An explorer can discover a visible element that looks interactive. Discovery does not authorize the action.

Candidates can be classified by factors such as:

  • element type and role;
  • accessible label, handled through privacy-preserving fingerprints;
  • destination origin and route;
  • form or destructive semantics;
  • configured allow and deny selectors;
  • whether the action repeats an observed state;
  • remaining interaction budget;
  • operator-provided flow instructions.

Every candidate should end with a terminal disposition: exercised, skipped by policy, skipped as duplicate, skipped by budget, failed, or left residual. Interrupted exploration then remains auditable.

Operator policy extends defaults

Different applications need different capture behavior. A policy can add, remove, or replace candidate selectors and call-to-action terms, set limits, and define a bounded drag gesture for canvas surfaces.

The portable environment record should retain counts and limits rather than raw custom terms that might include sensitive product language.

This lets an operator tune coverage without editing capture source or exposing private labels in the workspace metadata.

A click is evidence only if state changed

Configuring a selector does not prove that an action opened a new state.

For ordinary DOM interfaces, KodeCapture measures a bounded structural state surface before and after the action. It can include visible semantic class tokens, dialog and menu roles, open state, aria-expanded, aria-modal, and constrained state attributes.

Text content is excluded from this state signature. The purpose is to detect a structural transition without storing user data.

If the measured surface does not change, the click may still be recorded diagnostically, but it should not be promoted as authoritative parity interaction evidence.

Canvas interaction needs stability

A canvas can change every frame even when the user does nothing. Comparing one before frame to one after frame would manufacture transitions from animation noise.

A stronger rule samples bounded frame sequences and requires stable before and after observations around a real browser pointer action. Only then can a changed pixel fingerprint support a transition.

The structural canvas selector and action details can be retained so replay uses the same target instead of guessing from source text.

Budgets are part of the result

Exploration must be bounded by interaction count, route count, depth, time, and discovered-candidate limits. Reaching a budget is not necessarily a capture failure, but it is a coverage fact.

The summary should show:

  • what was discovered;
  • what was exercised;
  • what changed state;
  • what was skipped and why;
  • which budgets were consumed;
  • which residual candidates remain;
  • whether exploration ended normally or by interruption.

Human flows remain important

Automated exploration is useful for breadth. Operator-authored flows are better for high-value or stateful journeys where sequence and safety matter.

The two approaches can coexist: automated discovery maps the accessible surface, while explicit flows establish authority for important transitions.

KodeCapture is designed to preserve interaction evidence without pretending unfamiliar actions are harmless. A responsible capture can say “this state was reached through this measured flow” and just as importantly, “these actions were not attempted.”