BotSquad Research / Trade / Technical guide

How BotSquad Trade works

Follow the experiment from a research question to a reviewed decision, a portfolio record and the public archive.

Evidence reviewed

Start here

BotSquad Trade is a forward-running trading experiment with a simulated portfolio. Two persistent AI employees, Atlas and Maya, use a controlled market-data packet to develop and challenge decisions. Trusted software checks their permissions, records any accepted simulated orders, computes the portfolio, and publishes selected evidence to Asymmetri. The experiment tests whether an AI team can do accountable, repeatable work over time. Investment returns are one outcome to measure, alongside the quality and reliability of that process.

For a reader with a computer science background, the useful starting point is a durable workflow system with an LLM runtime and a deterministic financial ledger. The model generates arguments and structured proposals. The application owns state transitions, clocks, budgets, accounting and publication. Understanding those responsibilities makes the daily process, and its current failures, much easier to follow.

Status checkpoint: October 15, 2026, 10:40 a.m. Vancouver / 17:40 UTC. Genuine research has run. The October 14 closing valuation and benchmark allocation completed. October 15 produced a HOLD proposal, but its review failed before commitment. There is no completed independent review, submitted decision or portfolio trade. The investment loop is blocked; its prevention fix is deployed. This guide describes the implemented system and its intended routine, with actual outcomes identified separately. It does not announce a restarted experiment.

The public Trade introduction, with BotSquad Research and Trade navigation.

Figure 1. The public Trade page introduces the experiment. These are actual public-interface captures from October 15; the screenshots are dated evidence, not live status panels.

View the public page · Captured · Full-size screenshot

What the experiment measures

The experiment asks two different questions. First, can a persistent AI organization use evidence, consider alternatives, preserve disagreement, make a decision, obtain independent review and learn from the result? Second, how does its simulated portfolio perform under a disclosed accounting method? A profit does not establish good reasoning, and a valid decision to hold cash can be more defensible than an unsupported trade.

There is no brokerage connection and no real-money execution mode. The portfolio starts with simulated USD 100,000. Its market observations are real; its orders, fills, fees and positions are modeled. That distinction applies even when a screen calls the interface a “Live Trading Desk.” The desk displays published records; it does not send orders to an exchange.

The selected configuration uses AAPL, MSFT, GOOGL, AMZN, JPM, JNJ, XOM and WMT as the equity universe, with SPY as the benchmark. The universe is a frozen experimental setting, not a stock recommendation. The current settings are long-only, no leverage, 15% maximum position weight and 35% maximum sector weight at new-risk admission, a 5% minimum cash requirement, at most two orders per session and six in a rolling seven-day window ending at the target session, zero modeled commission, and 10 basis points of adverse slippage. A 15% observed drawdown threshold stops new risk; it cannot guarantee a maximum loss during market moves.

The portfolio can outlive one operating allowance. The initial operating scope selected October 14 and 15. Its finite authority expires on October 15 at 4:40 p.m. Vancouver. The saved portfolio calendar extends through the 2026 calendar horizon, but that does not authorize daily model work until year-end. Future sessions need a new eligible operating scope without resetting the existing book. Persistent observed-paper design

Where BotSquad fits

BotSquad is the general coordination system underneath Trade. It provides durable workers, conversations, working groups, tasks, evidence, execution records, a dispatcher and scheduling. Trade adds a particular mandate, a market-data adapter, paper tools and a portfolio ledger to those general capabilities.

An employee is a persistent application identity with a role and permissions. It is not a model process that thinks continuously. When idle, the employee does not poll an LLM. A permitted request causes the dispatcher to invoke the runtime for a bounded turn; the result and its provenance return to the durable company state. The investment path uses working-group conversation executions. A discussion is distinct from a Task, and an ordinary message is not automatically a new execution.

In the selected experiment, Atlas develops research and alternatives, synthesizes conclusions and submits scoped paper decisions. Maya independently challenges the exact proposal, its evidence, downside and invalidation conditions. Those are responsibilities, not scripted opinions. The software does not require BUY, SELL or a profitable outcome.

Independent review here means a different eligible worker and a separately attributable execution. It does not prove statistical independence between models, eliminate shared blind spots, or make the reviewer a human expert.

The public worker roster showing Atlas as the portfolio researcher.

Figure 2. This excerpt of the published roster shows Atlas and his portfolio-research role. The full roster also identifies Maya as the independent reviewer; a roster entry alone does not establish current activity.

View the public page · Captured · Full-size screenshot

Persistent identity and fresh model context

Worker identity, discussion history, portfolio history and provider session identity are separate things. The current finite investment adapter starts fresh provider contexts for subsequent turns to obtain the required usage events. BotSquad carries forward bounded, attributed discussion and evidence through its database. A fresh model context therefore does not create a new employee or erase the previous decision.

This is analogous to reconstructing a worker process from durable state after a restart. Continuity comes from explicit records and selected context, not from assuming a particular provider session will retain everything indefinitely. Ordinary BotSquad conversations may use different continuity rules. System architecture · Investment adapter and tools

The architecture and data flow

The private HQ and the public website have different jobs. The HQ owns the experiment. The website owns a public archive and its presentation.

From a finite mandate to a public record
  1. Owner mandate and finite authority

    Configuration, people, permitted work, limits and selected sessions.

  2. Private BotSquad HQ

    The scheduler, dispatcher and durable SQLite state coordinate three distinct responsibilities.

    • Market gateway

      Controlled Yahoo requests and qualified evidence.

    • Atlas and Maya

      Bounded research, proposal and review tools.

    • Paper ledger

      Trusted admission, accounting and valuation.

    Evidence informs the employees. Their scoped requests are checked by the trusted ledger.

  3. Approved public projection and signed outbox

    Selected public fields leave HQ through authenticated, retryable delivery.

  4. Asymmetri receiver and archive

    Validated events and acceptance receipts preserve the public record.

  5. Trade pages and exact evidence

    Readers inspect accepted records through the public website.

Scroll sideways for more columns.

Responsibilities and evidence boundaries
ComponentOwnsDoes not establish
Owner configurationMandate, universe, roles, method, limits and selected sessionsA completed decision or trade
SchedulerDurable stage identities, due times, expiry and execution statePermission beyond the approved scope
Dispatcher and runtime adapterEligible worker invocation, concurrency, tool delivery, interruption and usage captureCorrect investment judgment
Market gatewayBounded requests, normalized evidence, provenance and price qualificationA model-selected replacement price
Paper ledgerExact state transitions, risk checks, orders, fills and accountingReal exchange execution
Publisher and receiverApproved projection, authenticated delivery, ordering and receiptsTruth of the investment thesis
Public websiteRead-only views of the accepted archivePrivate HQ state or operational authority

The HQ runs as an always-on service on the operator's server. A browser tab or this documentation chat does not drive the daily loop. Closing the owner's laptop does not itself stop the server scheduler. Conversely, a healthy web server cannot make a blocked investment loop proceed.

Public visitors do not receive a route for starting the private loop, increasing its budget or submitting paper orders. Ask BotSquad is a separate Q&A integration and remains disabled at this checkpoint. It is not an investment control channel. Cross-system integration

The objects that persist

Several objects are casually called a “run.” Keeping their lifetimes separate avoids a common misunderstanding: restarting a process is not the same as repeating an experiment.

Scroll sideways for more columns.

Persistent records and their lifetimes
ObjectMeaningLifetime
Portfolio runFrozen experiment configuration and continuing financial historySurvives service restarts and eligible operating renewals
Operating scope or authorityExact workers, model/routing conditions, allowed operations, limits, dates and expiryFinite; may finish, stop, expire or become held
Working groupParticipants, shared evidence and discussion contributionsRetained even after its activity stops
Session cycleEmployee work for one selected market sessionCan run under an existing valid operating scope; it is not necessarily a renewal
Loop planScheduled stages for selected market sessionsVersioned; old plans remain historical
OccurrenceOne stage on one session under one plan, such as October 15 researchDurable identity with due time, expiry, state and attempts
ExecutionOne admitted worker turnOne consumed attempt with status, settlement and usage
Proposal and reviewExact typed decision revision and independent dispositionImmutable evidence for that revision
Order, fill and valuationAccepted instruction, simulated accounting effect and marked snapshotSeparate financial records
Publication receiptEvidence that a particular public batch was acceptedSeparate from all private execution and financial receipts

SQLite transactions serialize competing mutations. Stable identities and request receipts make repeat delivery distinguishable from a new action. The loop's generation and plan revision prevent an old callback from committing work after stop or replacement. These are familiar concurrency techniques applied to an LLM workflow.

There is also an independently retained finite-authority ledger and checkpoint outside the ordinary HQ snapshot. Restoring an old application database must not restore spent provider allowance. The protection is against accidental rollback and replay within the trusted deployment model; it is not a claim that a privileged host administrator can never alter the system.

What happens on a normal trading day

The following is the configured October 15 schedule, shown in Vancouver time with UTC beside it. It is a schedule, not a claim that every stage completed. At the checkpoint, collection completed and research blocked; the later stages had not run. The calendar owns the actual exchange dates, holidays and early closes. Do not copy fixed UTC offsets into a year-round cron job.

Scroll sideways for more columns.

Configured October 15 schedule, not a completion record
Vancouver on October 15UTCStageWork performed
4:45 a.m.11:45Collect researchObtain the approved historical daily-data requests for eight equities and SPY; normalize and share the bounded packet
5:00 a.m.12:00Research window startsInvoke eligible employee turns; develop, challenge and formalize a decision
6:00 a.m.13:00Decision cutoffClose the original decision/review/order window, 30 minutes before the regular open
6:30 a.m.13:30Market opening referenceThe future price event against which a timely precommitted paper order may later be modeled
1:00 p.m.20:00Regular closeThe session finishes; same-session daily evidence can subsequently be qualified
1:05 p.m.20:05Collect close evidenceObtain the bounded same-session daily bars and validate original OPEN/CLOSE fields
1:20 p.m.20:20Paper accountingProcess eligible precommitted orders and applicable benchmark/accounting work
1:25 p.m.20:25Mark the portfolioCompute matched portfolio/benchmark valuation and queue approved public records
4:30 p.m.23:30Order expiryExpire remaining eligible pending orders under the configured rules
4:40 p.m.23:40Authority endsNo new operation can rely on this operating allowance

The ordinary session has three kinds of work. Source work makes explicitly bounded market-data requests. Model work consumes employee invocations. Deterministic work performs validation, bookkeeping and publication without asking an LLM what to do. A scheduler wake-up is not itself a model call.

Temporary capacity exhaustion can delay a never-started research occurrence while its original window remains valid. October 15 actually began at about 5:01 a.m. after the rolling-window capacity check. That wait preserves the same occurrence; it does not change the cutoff or refund previous calls.

An investment-loop block prevents ordinary dispatch of its remaining stages. Some narrowly defined expiry or publication-drain behavior can still be separate; “paused” should not be read as “every process on the server has stopped.” Due timestamps alone are insufficient evidence of completion. Inspect each occurrence's actual state and receipt. Scheduler implementation · NYSE calendar and hours

The clocks and the no-lookahead rule

The original method is named inv-real-open-v1. Its unusual but important feature is delayed accounting: the decision is committed before the target opening, but the trusted daily OPEN reference is retrieved after that session closes. The system then records a modeled fill using the already committed order. It does not claim to have obtained an executable opening quote or placed a market order in real time.

Scroll sideways for more columns.

The clocks in a recorded decision
ClockQuestion it answers
Evidence cutoff / commitment timeWhat was the employee allowed to know when making this decision?
Market timeWhen did the price event being modeled occur?
Provider availability timeWhen did the provider make it available? This can be unknown.
Retrieval timeWhen did the gateway actually obtain the evidence?
Ledger effective timeWhich economic instant does the simulated posting represent?
Recorded timeWhen did trusted software append the accounting record?
Public receipt timeWhen did the website's receiver accept the published record?

Using a future price after an earlier committed decision is the experiment's convention. Making a new decision at 10 a.m. and selecting that same day's already-known opening price would introduce lookahead. The model would benefit from information that was unavailable at the purported decision time. A correct rerun must choose a still-future price event and disclose any method change.

October 14 had an explicitly approved, session-specific exception: new decisions and orders had to be locked before 12:30 p.m. Vancouver, then could use that day's 1 p.m. regular close. The amendment retained the missed morning and all existing history. It applied to October 14 only. Its existence does not make every later afternoon an automatically authorized closing-price session.

The public exact valuation shows the benchmark closing allocation, retrieval time and later accounting time.

Figure 3. The benchmark evidence makes the clocks concrete: the October 14 market reference is 20:00 UTC, retrieval is about 20:07, and allocation is recorded about 20:20. “Available Unknown” remains unknown.

View the public page · Captured · Full-size screenshot

What evidence the employees receive

The current scheduled research path uses Yahoo Finance through a controlled daily-chart adapter associated with the pinned yfinance integration. Each instrument has an exact approved request. Research requests cover a ten-calendar-day historical window; the compact group packet carries the latest three daily rows per instrument, their evidence identities and retrieval times. The normalized retained record can contain more rows than the compact packet.

This is a bounded daily-price evidence packet. It is not proof of a comprehensive analyst research process across current news, filings, earnings calls and fundamentals. Broader research capabilities elsewhere in BotSquad do not automatically become part of this run.

The employees receive explicit limitations. Historical availability and historical adjustment basis are not silently asserted. Historical bars can support reasoning, but they cannot be substituted for the qualified price reference used to execute a paper order. The gateway checks the session, instrument, currency, original numeric fields, regular-session timestamps, completeness and consistency before admitting a same-session reference.

Request authority is recorded by exact hashes and consumed durably. An uncertain request is not blindly repeated. Provider-wide spacing, response-size and timeout bounds, denial handling and a source circuit limit the collection. Cached evidence may be reused only when its provenance and scope match; an arbitrary cached bar cannot satisfy a different session's request.

The incremental market-data budget is US$0. The owner reports Yahoo confirmation for the personal, noncommercial research, simulation and publication project; that remains owner-reported rather than independently verified permission. Raw response bodies are transient. Normalized evidence, hashes, qualifications and original decision history form the retained audit record. Observed data path · Price qualification

From a conversation to an accepted paper decision

A sentence such as “we should hold cash” is a discussion contribution. It is not yet a formal HOLD. A sentence recommending a purchase is likewise not an order. Trade has a typed path that turns a reasoned proposal into an independently checked action.

The typed decision path
  1. Research and discussion

    Workers consider evidence and alternatives before formalizing a proposal.

  2. Atlas proposes an exact revision

    paper_propose records a proposal and hash. The proposer execution must complete successfully, with no unresolved work, before independent review.

  3. Maya reviews that exact proposal

    paper_review approves or rejects the same revision. The reviewer execution must complete successfully, with no unresolved work, before submission.

  4. Atlas submits the approved proposal and review

    paper_submit binds the exact prior records and passes current authority, deadline and deterministic admission checks.

  5. The outcome branches

    A submitted HOLD creates no order. An admitted BUY or SELL creates a pending order.

  6. Trusted accounting uses the qualified future price

    A pending order may fill, be rejected or expire. Discussion and approval alone do not establish a fill.

paper_inspect exposes bounded current context and handoff identities. paper_read_proposal returns the exact proposal and related records. paper_propose requires an allowed author, scoped evidence, rationale, alternatives, risks and an invalidation condition. Observed proposals also carry separately designated public-summary fields. BUY/SELL proposals include a concrete order; HOLD has no order.

paper_review requires an eligible worker different from the proposer. The reviewer must have received the exact proposal, and the proposal's execution must have completed successfully, with no unresolved provider work. The review binds the proposal's full hash and revision, with an approve/reject disposition, rationale and dissent. Changing the proposal requires a new revision and review. Approval of an earlier version does not float forward.

paper_submit requires the exact approved review and successfully completed prior producing executions, with no unresolved provider work. Mere settlement of a failed or interrupted turn is insufficient. Trusted code checks current scope, occurrence, deadline, ledger version, risk inputs, cash or holdings, price guard and applicable operation limits. Model-written claims about an available balance or completed approval cannot replace those checks. Even after admission, a later price gap, missing data or failed risk check can prevent a fill.

The discussion lifecycle also has opening, facilitation, synthesis, review and finalization turns. Paper tools can be called within an appropriate turn before its terminal discussion action. The typed proposal/review/submission chain needs at least three separately attributable executions from scratch. A fresh two-person final discussion cycle ordinarily needs six turns because of its surrounding lifecycle. The October 15 continuation needed four turns; it failed during its third. “One more model call” is therefore not interchangeable with “finish the workflow.” Paper-tool implementation

How the simulated portfolio is calculated

Financial state is computed by trusted code using fixed-point decimal arithmetic, with six-decimal serialized money and quantity values and defined rounding. It is not parsed from the employee's natural-language answer. The ledger retains journal identity, ordering, previous/resulting state and provenance. Weighted-average cost basis, cash reservations, holdings, fees and realized results follow deterministic transitions.

Illustrative arithmetic only, not an actual Trade order: suppose a timely reviewed order buys 10 shares against a qualified raw opening reference of $100. With 10 basis points, or 0.1%, adverse buy slippage, the modeled fill price is $100.10. With zero commission, cost is $1,001 and cash falls from $100,000 to $98,999. At a later qualified $102 mark, the position is worth $1,020, total equity is $100,019, and unrealized profit is $19. The slippage is already in the fill price; subtracting it again would double-count it.

The actual portfolio at the checkpoint has no such purchase. It remains $100,000 cash with no holdings. Its zero reported return belongs to the last complete October 14 valuation. It should not be read as a fresh October 15 valuation.

Splits, dividends and corrections also need explicit evidence. A supported split preserves cost basis while changing units. A dividend may create a receivable; an unknown payment date does not create cash. Unsupported actions or missing marks can block accounting or produce incomplete valuation. Unknown value is represented as unavailable, not as a zero-price asset.

The public portfolio section reports the last complete valuation and its cash, equity and return values.

Figure 4. Read “last complete valuation” and the as-of timestamp before interpreting the numbers. A complete old snapshot can coexist with a currently paused run and unknown market freshness.

View the public page · Captured · Full-size screenshot

The SPY benchmark is a separate book

The benchmark provides a comparison, not a portfolio holding. Under the October 14 amendment it stayed in cash until the same regular close, then allocated to SPY. The recorded allocation is 129.925815 SPY units with $0.000178 residual cash; the UI rounds that residual to $0.00. Benchmark allocation uses zero slippage and fees, while portfolio trades use the configured 10 basis points of adverse slippage. This is a cash-then-SPY comparator, not full-period SPY buy-and-hold and not the S&P 500 index itself.

Portfolio and benchmark returns use matched valuations and the same initial capital. Excess return is the percentage-point difference between their returns. It is not automatically alpha. Drawdown compares equity with its prior peak; missing observations should remain visible gaps. A short history of cash and one benchmark allocation cannot establish investment skill. Accounting and simulation rules

How private work becomes a public record

The HQ keeps private conversations, original evidence, proposals, reviews and operational records. A separate projection prepares the public fields permitted by an owner grant. The observed path uses designated employee thesis/review summaries and typed financial events; it does not copy the private transcript wholesale.

A durable outbox sends signed, ordered batches to the isolated Asymmetri receiver. The receiver checks the allowed publisher, schema, scope, integrity and sequence and returns a receipt. Accepted records enter a public archive. The website renders that archive through bounded read-only interfaces; it does not query arbitrary private HQ tables.

This is a distributed-systems boundary. If delivery is retried, exact identities and receipts let the system recognize the same batch. A missing response is not permission to invent a new event or silently skip a sequence. Publisher restart and receiver generation must reconcile. A valid signature authenticates the configured publisher key and signed bytes; it does not independently establish model authorship, a sound thesis or a correct external source.

The visible desk polls a bounded record window. Its refresh button reloads public data; it does not ask Atlas to think again. Publisher heartbeats can continue while the investment loop is blocked, so recent contact is compatible with an old valuation. Source-event sequence and portfolio-journal sequence count different streams and need not be equal.

At this checkpoint, genuine private employee turns exist but no public contributions or decisions are displayed. The missing committed review prevents the exact proposal/review pair from producing public summaries. Those paired summaries require successfully completed producing executions; submission is not itself a prerequisite for publishing the pair. Financial events have their own typed source records. Empty sections must remain empty rather than being filled with invented conversation. Public protocol · Observed public projection

The public transaction journal shows the initial simulated capital posting and its exact-record link.

Figure 5. The journal's initialization entry records the simulated $100,000 starting capital. It is a financial posting, not a purchase. Benchmark-only activity is represented separately in benchmark evidence.

View the public page · Captured · Full-size screenshot

Why finite budgets and usage records matter

Simulated capital and real AI resource consumption are different accounts. The $100,000 paper balance cannot pay for inference. The selected model policy permits a bounded number of actual invocations under a particular approved profile and account/routing context. The application records attempts before provider work so a crash or local rollback cannot make a call appear unspent.

Scroll sideways for more columns.

Selected finite operating limits
Selected controlLimit or meaning
Original aggregate ceiling16 calls
Recovery-family ceiling11 calls across the original and successor authorities; this stricter ceiling currently controls
Calls consumed at checkpoint10; failed/incomplete attempts remain consumed
Calendar-day limit8 calls per New York day
Rolling-window limit8 calls over the preceding 24 hours, independent of midnight
Cycle limit7 calls
Per-worker limit12 calls
Investment concurrency1 active investment turn; the shared dispatcher has separate global capacity
Local duration300 seconds per invocation; local interruption cannot guarantee an upstream billing cutoff

These limits are ceilings, not a plan to spend every available call. The planner reserves room for later review and finalization, so it may reject a new discussion turn even when a raw counter is below its maximum. Reaching midnight does not reset a rolling 24-hour counter. A new scope does not automatically refill a lineage's allowance.

One invocation can contain multiple provider responses and tool interactions. A terminal runtime event tells the application something about completion, but complete usage accounting requires the corresponding authoritative response measurements. Settlement and telemetry completeness are separate flags. A turn can be settled while its required usage data is incomplete. Missing usage must not be reported as zero.

API-equivalent reference cost, where available, is also separate from actual subscription charges or purchased-credit deductions. The current controls bound local activity; they do not create an exact dollar billing ceiling or prove that provider-managed work stops immediately when the local process is interrupted.

Conceptually, admission follows this sequence:

Admission and settlement
  1. Check eligibility

    Verify current authority, time window, identity and unresolved outcomes.

  2. Reserve the attempt

    Durably consume a one-use attempt and reserve required capacity.

  3. Invoke the worker

    Provide permitted scoped tools and evidence.

  4. Collect distinct outcomes

    Retain output, provider settlement and usage evidence separately.

  5. Preserve consumption

    The attempt remains consumed in every outcome.

  6. Evaluate the next stage

    Continue only if that stage’s own guards still pass.

Finite usage implementation · Usage semantics

What pause, restart and rerun actually mean

“Rerun” can mean several operations with very different effects.

Scroll sideways for more columns.

Different meanings of restart and rerun
OperationMeaning and consequence
Refresh the websiteRead the accepted public archive again; no model invocation
Recompute a ledger from retained inputsDeterministic verification of recorded history; not a fresh investment decision
Retry an idempotent requestReturn the existing receipt for the same action when its outcome is known
Restart the serviceReplace an OS process while preserving state; recovery checks still apply
Resume an investment loopContinue only eligible future work under still-valid authority
Repeat an LLM turnA new invocation that can produce a different answer and consumes allowance
Create or renew an operating scopeNew bounded authority, future windows and eligible evidence; retained portfolio and consumption stay intact
Start a different experimentA visibly distinct configuration/history, not a way to hide failure in the existing run

Global model pause, investment-loop pause, a runtime interrupt and publication pause are also distinct controls. Stopping new model dispatch does not undo completed accounting. Interrupting a process does not establish that an external request never happened. Investment pause/stop affects pending scoped work and orders; completed effects remain history. Ordinary resume does not resurrect cancelled orders or elapsed windows.

What prevented an immediate October 15 rerun

Four conditions overlapped. First, the family had used 10 of its 11 calls, leaving too little for independent review plus submission. Second, the failed review introduced another incomplete usage record. Third, the original morning cutoff had passed. Fourth, the implemented recovery exception allowed one specifically bound successor accepting one exact old telemetry gap. Its close-method amendment applied only to October 14, while its authority retained the original October 15 schedule. It was not a general-purpose “start another cycle now” mechanism.

These conditions have different origins. Avoiding a decision at an already-known favorable price protects experimental validity. Call ceilings and incomplete-usage holds are chosen operational policies. The single-date recovery path is an implementation limitation. None means an LLM is inherently unable to analyze the same research again.

A supported fresh-cycle operation would have to carry forward the portfolio, historical attempts and unresolved records; verify no active or uncertain provider work; obtain a concrete new allowance and future schedule; and record any method amendment before the selected price event. The deployed application does not yet implement that general recovery operation for this two-gap state. Editing a timestamp, clearing a hold flag or deleting usage rows would hide the problem rather than provide that operation. Exact existing recovery boundary

What actually happened on October 14 and 15

The history is useful because it separates genuine model behavior from application defects and accounting outcomes.

Scroll sideways for more columns.

Observed October 14 and 15 outcomes
Vancouver timeActual resultWhat it establishes
October 14, 4:45 a.m. onwardNine historical research requests completedReal bounded source collection
October 14, about 5:00 to 5:02 a.m.Four genuine employee turns; the fourth lacked required complete usage telemetryGenuine discussion and a retained usage hold; no formal decision
October 14, about 10:06 to 10:08 a.m.Three genuine turns under the one-time close recoveryFurther discussion and provisional HOLD reasoning; no formal proposal or submission
October 14, 12:30 p.m.Close-method decision deadline elapsed without an orderNo retrospective trade may be manufactured
October 14, 1:05 to 1:25 p.m.Nine close requests, benchmark allocation and complete valuationWorking source/accounting/publication path; portfolio still all cash
October 15, about 5:01 to 5:03 a.m.Two Atlas turns, then Maya review attemptA genuine HOLD proposal was created; independent review did not commit
October 15, 10:25 a.m.Review-clock/runtime correction deployed and preservation checkedPrevention fix installed; no new model run or historical repair

The October 15 review failure was an application clock defect. The facade created reviewedAt, then the journal sampled a slightly later recordedAt. The reducer required exact equality, so a valid review request was rejected. Frozen test clocks had hidden the discrepancy. The repair uses one trusted timestamp for the review and its journal entry while retaining live deadline checks.

A second defect mislabeled any bounded tool callback failure as an unavailable approval request. That produced an awaiting_approval label even though no genuine permission request occurred. The adapter now reports the actual tool failure. The original execution and its incomplete usage record remain retained; deploying better code does not retroactively complete that turn.

At the checkpoint there are 27 collected instrument/request records: nine October 14 research captures, nine October 14 close captures and nine October 15 research captures. There are ten employee executions, one proposal, zero committed reviews and zero submissions. The portfolio has no discretionary trades. The last complete public valuation is still October 14. The end-to-end genuine proposal → approved review → submission → possible fill path remains unproven, even though its authored regression tests pass.

The public run status shows paused, unknown archive freshness and distinct publication and publisher-contact times.

Figure 6. A recent publisher contact and a paused experiment are compatible. The status panel explicitly says that publisher contact does not establish employee activity or fresh market data.

View the public page · Captured · Full-size screenshot

October 14 workflow evidence · Review-clock repair

How to read the website and operate a day

For a public reader, start with run state, snapshot quality and as-of time. They answer different questions: whether work is authorized to proceed, whether a snapshot has sufficient inputs, and which market instant it describes. Then follow the decision and exact evidence links rather than inferring a trade from a discussion or a flat chart.

The roster establishes who participates. The desk shows only published contributions in its loaded window. Decisions distinguish recommendations, reviews and accepted outcomes. Research links show registered public deliverables. The portfolio shows typed snapshots. The journal shows portfolio financial effects. Exact records preserve versions, timestamps, supporting links and public receipts. The methodology page binds those records to their original method and session amendments.

An owner reviewing a day has a broader private view. Before a scheduled window, the owner verifies the selected dates, active authority, remaining capacity, account/profile eligibility, source permissions, prior settlement and publication health. During the research window, the owner checks actual occurrence and execution states, not just whether the service responds. After cutoff, the owner distinguishes a submitted HOLD, a rejected proposal, an admitted pending order and no submitted decision. After close, the owner reconciles source qualification, ledger results, valuation quality and receiver receipts. Before a later operating epoch, the owner verifies preservation and eligibility instead of assuming tomorrow is automatically authorized.

In a healthy authorized scope, those scheduled stages run without manual clicking each morning. Owner attention is needed when a finite scope ends, a policy changes, evidence is incomplete or a failure requires a reviewed recovery. At the present checkpoint, the loop needs that intervention; this is not a claim of reliable unattended daily trading.

A practical debugging order is: service health → current authority → occurrence → execution/settlement/usage → proposal/review/submission → source/ledger → outbox/receiver → public rendering. Each step has its own evidence. A green HTTP health check proves much less than a completed investment cycle.

What is proven and what remains limited

Scroll sideways for more columns.

Evidence and limits at the October 15 checkpoint
AreaEvidence at the checkpoint
Persistent HQ and genuine workersDeployed; real research turns and retained execution history
Scheduled source collectionGenuine morning and October 14 close records
Formal employee workflowOctober 15 proposal exists; genuine approved-review/submission chain incomplete
Paper accounting and benchmarkOctober 14 benchmark allocation and complete cash-only portfolio valuation reconciled
Public publicationAccepted records, exact evidence pages and retained history visible
Reliability fixesTimestamp and error-classification fixes deployed; advancing-clock and focused Linux regressions pass
Autonomous daily completionNot established; current finite loop blocked
Investment effectivenessNo portfolio trades or meaningful return history to evaluate
General repeat-recovery supportNot implemented for the current two-gap state
Data breadth and finalityDaily-price evidence is narrow; retained qualification does not independently prove the vendor will never revise a bar
Public AskDisabled; no visitor-to-employee service claimed

Testing proves particular properties under its inputs. Fixture tests can verify rounding, stale-review rejection, cutoff enforcement and replay behavior. Genuine runtime receipts establish that actual employees were invoked. Source receipts establish real data collection. Accounting and public receipts establish later transitions. None can substitute for all the others.

Glossary and implementation map

Authority
A trusted, finite permission envelope; prose from a worker cannot enlarge it
Scope
The exact run, group, people, tools and bounds to which work belongs
Occurrence
One durable scheduled stage, with identity, due time and expiry
Invocation / execution
One admitted model turn, not one token or one tool call
Settlement
Trusted evidence about the provider turn's terminal outcome
Usage completeness
Whether required authoritative usage measurements were captured
Idempotency
Recognizing a repeated request as the same action and retaining its original receipt
Generation
A version used to reject callbacks belonging to replaced or stopped work
Proposal hash
Integrity binding over the exact proposal that a reviewer must assess
Paper fill
A modeled financial effect using a qualified reference and frozen rules
Mark / valuation
Pricing the current book at a particular market as-of time
Outbox
Durable pending publication jobs, separate from financial execution
Watermark
A cursor describing how far a record stream has been accepted
Projection
A deliberately selected public representation of private source records
Fail closed
Refuse further guarded work when required authority or evidence is missing
No lookahead
A decision must not benefit from information unavailable at its committed time

Readers who want to connect the explanation to code can start with these implementation areas. The HQ references are pinned to the deployed review-clock repair, so later source changes do not silently change this guide's technical basis.

Scroll sideways for more columns.

Implementation source map
TopicSource
Persistent observed configuration and collectionobserved-investment.ts
Scheduling, admission and stage transitionsinvestment-loop/service.ts
Scoped paper tools and exact reviewinvestment-team/service.ts
Runtime failure and usage handlingruntime/codex.ts
Price qualificationmarket/observed-paper.ts
Deterministic accountingdomain/investment
Canonical public contractcontracts/investment/v1
Website receiver and archiveAsymmetri receiver

The experiment becomes convincing through a sustained, inspectable sequence of genuine decisions, independent reviews, valid accounting and candid failures. Its present value is an observable engineering experiment. Its current record supports that narrower description, not a claim that an AI team has already demonstrated profitable or reliable daily trading.