$LOG
The chain writes. The log remembers.
A behavioural memory of Solana wallets — verifiable receipts, not probabilities.
HOW TO READ THIS DOCUMENT Every section carries a status marker. Nothing here asks you to guess whether a capability exists today: -SHIPPED— running in production, on real tokens, now. -IN PROGRESS— specified and locked; being built. -ROADMAP— designed, dated, not started. This convention exists for the same reason the product refuses to print a zero it did not measure. A document that blurs what is built with what is planned is making the same error the system is engineered to avoid.
—PART I — POSITION
01AbstractSHIPPED
$LOG is building a behavioural record of Solana wallets — and opening it.
Every wallet that acts inside a token launch is fingerprinted and kept: what it did, how fast, what it paid, who funded it. Today that record renders as forensic screening — who bundled, who sniped, how concentrated a token is now. §19 is where it goes: a queryable layer any builder, researcher or user can read directly, where every answer still carries the transaction that proves it. This document is the path between those two points.
The subject is the wallet, not the token. Tokens are merely where wallets get caught. A scanner starts from nothing each time it is asked — it reads a contract, scores it, forgets. This accumulates, so the fourth token a wallet touches is read with the first three already in hand. The graph keys on wallets, which makes it venue-independent by construction, and operators are identified by funding chains and behavioural timing rather than by address, so a fresh wallet does not reset the record.
Why build it this way. Behaviour becomes pattern, and pattern is what makes a next move legible. That requires a long, honest record of what addresses actually did — which on Solana can be assembled entirely from public, permanent facts, rather than from anything anyone had to be asked to hand over. At venue scale the same record answers questions no single token screening can: whether this cluster is what drained a pool, whether a wallet's pattern is one you have been burned by before, how extractive behaviour propagates across launches. None of that runs today. It is stated because it is why the architecture is wallet-keyed, venue-agnostic and append-only, rather than as a claim about what exists.
What exists today. The system reconstructs a launch from the chain, identifies who acted inside it, and publishes each finding as a short entry tied to a transaction anyone can open. It runs on pump.fun, publishing to a public feed and a Telegram bot. Extending to Bonk, Raydium, Jupiter and Meteora adds an anchor, not a rewrite, and every venue compounds the same corpus instead of starting a new one.
Two rules govern every number printed, and most of what follows is their consequences:
1. Every published number is checkable — a transaction reference on every claim, the same denominator the screeners use. 2. Unmeasured is never zero. A launch that could not be reconstructed says so. It never renders as clean.
Both exist because the tools filling this gap mostly return scores: a number between 0 and 100, a colour, a risk band — an opinion with the evidence removed. When a score is wrong there is no way to tell, because there was never anything to check.
What is deliberately NOT claimed. No predictive model is running. The corpus exists and its labels are earned from observed behaviour, but nothing here forecasts a wallet's next action and no section describes a model that does. The record is also far smaller than it needs to be: one venue, and coverage is currently idle by operator choice — the streaming path is built and ran unattended for 27 publishing days, with zero subscribed mints today. Its size is measured in §09, never estimated.
02The problemSHIPPED
The information is public and unusable.
A trader deciding whether to buy a token wants to know a small number of things: did the team keep supply, did bots take the launch, is the float concentrated, is whatever coordination exists still holding or already gone.
Every one of those is answerable from chain data. None is answerable quickly. The bonding curve does not label itself. A bundle is not a transaction type — it is a pattern across several wallets in one slot. A sniper is not a flag on an account; it is a wallet that arrived machine-fast and paid to get there.
So the market runs on screenshots, screener percentages, and trust.
Scores make it worse. A single number compresses away exactly the thing a reader needs: which wallets, how much, and can I see it myself. A score of 17 cannot be argued with, corrected, or checked. It can only be believed or ignored.
03What $LOG isSHIPPED
A wallet-behaviour register with a forensic narrator on top of it.
The register is the asset: every wallet observed acting inside a launch is fingerprinted and kept — what it did, when relative to the launch slot, what it paid, who funded it. The narrator is what makes that register readable: it establishes what happened from chain data and writes it down as short entries — chapters — each carrying the transaction that proves it.
Stated in that order deliberately. A reader who meets the chapters first concludes this is a token scanner that writes nicely. It is the opposite: the chapters are a rendering of an accumulating record of wallets, and the same record answers questions about tokens nobody has asked about yet. See §14.
Three surfaces, one record:
- The feed — a public, permanent, chronological record.
- The bot — Telegram; ask about a token, subscribe, get told when something worth knowing happens.
- Reports — a full forensic read of one token, on demand.
Two properties define the product, and everything downstream follows from them:
1. Every published number is checkable. Same denominator as the screeners, a transaction reference on every claim. 2. Unmeasured is never zero. A token whose launch could not be reconstructed says so. It does not render as clean.
!The $LOG ecosystem — what it reads across any Solana launch, what it establishes, what it remembers across venues, where you read it, what is ahead, and what it will not do.
The words in this figure live in exactly one place — the branch definitions in scripts/mindmap.cjs — and the image is regenerated with npm run mindmap. Editing the rendered file directly would create a second copy of a public claim, which is how "beyond Solana" outlived the roadmap decision that dropped it.
04Why the free layer existsSHIPPED
It is distribution, and it is how the corpus grows. Pre-Buy Check is free and uncapped because it is the question traders ask most often — the cheapest demonstration of the product that exists, and every lookup is a signal about which tokens and wallets the market actually cares about. A record of wallet behaviour gets more valuable the more of the chain it has seen, so the free layer is the cheapest way to find out where to look next.
Two consequences follow, and both are commercial rather than charitable. The asymmetry below is the demand: it is why anyone pays for depth at all. And legibility is deterrence is why a project wants this on its own launch, which is a different customer from the trader reading it on someone else's.
Earlier drafts of this section argued $LOG as a public good in the economic sense — non-rival, non-excludable — because it was written for a grant. That framing is kept below where it is accurate, but it is not the reason the layer is free. The reason is that it brings people and data in.
The market failure
At the moment a token launches, its structure is known — precisely, immediately — to exactly the people positioned to exploit it. The deployer knows what was kept. The bundler knows how many wallets took supply in block 0. The sniper knows it arrived first and paid to.
Retail finds out later, or never. Not because the information is secret, but because it is expensive to read: thousands of transactions across accounts that do not announce what they are.
That asymmetry is what makes a predatory launch profitable. It is not a consequence of bad actors being clever; it is a consequence of the record being public and illegible at the same time. Close the gap and the strategy stops paying.
What $LOG makes non-rival
The chain already records every launch in full. $LOG turns that into a record people can actually read — and the record itself has the two properties that define a public good:
- Nobody is excluded. The forensic layer of every tracked token — verdict, signals, and the wallets behind each number — is public, and reading it requires no account.
- One person reading it does not use it up. A verdict read a thousand times is the same verdict.
It is also permanent. Removing a token stops future coverage; it does not retract the forensic record behind it. The register only grows.
The public register ROADMAP
The concrete form of all of this: every token that goes under coverage joins a public register. The verdict, the block it was derived from, the wallets behind each number, and the time it was last read. The forensic layer of every tracked token is permanent and public.
It stays current in three ways, and only one of them costs anything.
| the token is still tracked | the register reads live state — no extra work |
| someone new tracks it | the entry refreshes as part of their coverage |
| nobody is tracking it | anyone can trigger a refresh, rate-limited |
The third is affordable because of a split that matters: the launch half of a verdict never goes stale. Bundlers, snipers and the launch block are history and cannot change. Only current state — holders, concentration, liquidity — drifts, and re-reading that is a handful of RPC calls. So a public refresh button is a few cents a month, not a funding problem.
And a token we never reconstructed says so. Where coverage bought no history, or the venue is not yet integrated, the launch signals read — and the entry states that the launch was not reconstructed. We did not look is a different claim from we looked and found nothing, and the register is where that distinction does the most work — because it is the one place a reader compares tokens side by side.
This is what the grant buys. Not features on a product: rows in a public register. Every venue integrated widens what can be recorded, and the register is permanent.
Legibility is deterrence
Because the wallet graph keys on wallets, not tokens, a fresh address does not clear the record. An operator who ran one launch is recognised on the next one, on a different venue, months later.
That changes the incentive rather than merely reporting on it: a strategy that depended on nobody joining the dots stops working once the dots are public.
Where it sits
| screeners | rug scanners | $LOG | |
| output | prices, holders | a score or a verdict | entries with transaction references |
| launch cohort | no | percentages | *percentages and the wallets*** |
| unmeasured | shown as 0 | shown as 0 or "pass" | shown as unmeasured |
| history | current state | current state | reconstructed to block 0 |
| memory across tokens | no | no | yes — wallets are remembered |
The distinction that matters is the last two rows. A screener tells you a token's top-10 hold 61%. $LOG tells you which ten, what each holds, whether any of them took supply at launch, and what those same wallets did on other tokens.
And the benefit does not depend on trusting us. Every claim carries the transaction that proves it, so a reader can verify the record without believing the publisher. That is the line between a public record and an opaque risk score — and it is why this works as infrastructure rather than as a service.
—PART II — THE LOGICS
05VocabularySHIPPED
Defined before use, because most disagreements about token forensics are disagreements about definitions.
| term | meaning here |
| Slot | Solana's block unit, ~400ms. All launch timing is measured in slots, never in seconds. |
| Anchor / block 0 | The slot at which a token became tradeable. Everything in Part II is measured as an offset from it. |
| Launch window | The anchor plus the slots the cohort rules examine. |
| Bonding curve | A per-token account holding pre-graduation trades. Its oldest signature is block 0, by construction. |
| Graduation | A curve-launched token migrating to an AMM pool. |
| Bundle | Transactions executed atomically in one slot. On Solana, typically a Jito bundle — up to 5 transactions, all-or-nothing, uninterruptible. |
| Priority fee | Payment above the base fee to be included sooner. Evidence of automation. |
| Cohort | The set of wallets identified as acting inside the launch window. |
| Overhang | Supply held by wallets that are both launch-cohort and current top-10 — coordinated supply still in place. |
| Coverage | What $LOG buys about a token: full reconstructs its launch, watch follows current trades only. |
| Floor | The SOL size below which ordinary market trades are not published. Seven rungs. |
| Chapter | One published entry. Permanent, public, transaction-referenced. |
06The evidence modelSHIPPED
Four rules govern every claim in section 07. They are not editorial preferences; they are enforced in code and pinned by automated checks.
6.1 Unmeasured is never zero
If the launch window could not be reached, bundlers is unknown — not 0%. The distinction is the whole product. A token nobody looked at and a token that was looked at and found clean produce identical-looking numbers unless the system refuses to conflate them.
In practice this means a third state everywhere a percentage appears: measured / unmeasured / partial.
6.2 An accusation requires a conjunction
Naming a wallet a bot is a claim about a person's behaviour. One signal is never enough, because each one alone names the innocent:
- slot position alone — a lucky human in the first two seconds becomes a sniper.
- priority fee alone — an ordinary buyer paying for speed at slot 40 becomes one.
A bot is the conjunction: it arrived machine-fast and bid to get there.
6.3 A count and a percentage always travel together
"3% bundled" is unreadable without knowing whether that is three wallets or three hundred. Every cohort figure publishes both. A cohort that has fully exited renders as "66 wallets, all exited" rather than a green 0%, because the wallets existed and the record should say so.
6.4 Confidence is published, not implied
Every derived figure carries the completeness of the walk that produced it:
| class | meaning |
complete | the full window was read |
incomplete | the walk could not finish; the figure is a floor, not a total |
not-bought | coverage did not include this work; nothing was looked for |
incomplete and not-bought are different claims and are never merged. One says we tried and could not; the other says we did not try.
07 The logics SHIPPED (7.8 ROADMAP)
7.1 The launch anchor
Everything else is an offset from this, which makes it the highest-stakes value in the system.
Curve-anchored (SHIPPED) — the token's bonding curve account is walked to its oldest signature. That signature is block 0 by construction, not by inference: the curve did not exist before the token did. The walk costs a handful of paginated RPC calls and needs nothing but the mint.
The derived birth time is cross-checked against the launchpad's own published birth time before anything downstream uses it. A window that cannot be corroborated is rejected rather than used.
Pool-anchored (ROADMAP) — for tokens with no curve, the anchor is the pool creation transaction: the first slot at which the token could be traded. This is the correct analogue because snipers front-run liquidity — the LP add is the starting gun.
No anchor — returns unknown. Launch-derived signals publish as unmeasured.
7.2 Bundler
Rule: two or more wallets buying in the same slot as the anchor.
A bundle is atomic. No external transaction can be interleaved between the launch and the buys inside it, which is what distinguishes coordination from coincidence — those wallets did not race each other, they were submitted together.
Structural note: a Jito bundle carries at most 5 transactions. A launch with many wallets in block 0 therefore used several bundles in the same slot, which is a stronger signal than any single bundle — it is coordination that had to be assembled deliberately.
Refuses to claim: anything, if the anchor is unknown. Bundlers are meaningless without a block 0 to be in.
7.3 Sniper
Rule: bought within 5 slots of the anchor (~2 seconds) and paid a priority fee.
Both conditions, per §6.2. The window is deliberately tight: at ~400ms per slot, 5 slots is short enough that a human cannot be inside it while long enough to include a bot that lost the block-0 race and retried.
Jito is not the test. A Jito tip proves automation when present — no human assembles a bundle and submits it to a block engine — but a bot on a public RPC paying an ordinary priority fee leaves no tip. Absence of a tip proves nothing, so it is recorded as corroboration and never as the criterion.
Refuses to claim: a wallet whose priority fee could not be established. The claim requires proof of the fee, not absence of proof against it.
7.4 Dev / team
Rule: the deployer and wallets evidenced as connected to it — by direct funding, by launch behaviour, or by the token's own creator authority.
Deployer identity does not depend on the launch window. On-chain creator authority is readable directly, which is why dev/team survives on tokens whose launch could not be reconstructed.
7.5 Coordination
Coordination is claimed from structure, not from suspicion. Two independent methods, published separately:
- By similarity — wallets holding near-identical fractions of supply. Independent balances landing on the same number is not a coincidence a market produces.
- By creation time — wallets created in the same window. Wallet creation time is the one attribute an operator sets once and can never change afterwards.
Each is reported with its own count, never merged into a single "coordination score".
7.6 Transfer networks
Rule: wallets that received tokens from a cohort wallet rather than buying on the market.
This exists because a bundle that transfers its position looks identical to a bundle that sold, if you only watch sales. The recipients are the actual current holders of that supply.
Membership and holdings are two questions with two answers. A wallet that received a third of a bundle and dumped it contributes a wallet to the count and zero to the percentage. It is not the same as a wallet that never existed, and the record says so.
7.7 Supply structure
Current-state, venue-independent, works on any SPL token:
- holder count and distribution
- top-10 concentration — taken from a balance-ordered source, and excluding AMM pools, program-owned accounts and locked positions, because those are not holders in any meaningful sense
- overhang — supply held by wallets that are both cohort and top-10. This is the sharpest single number the system produces: coordinated supply that has not left.
Overhang is null, never 0, when the launch was not analysed or the bundler origin was not verified — a clean zero there would be an accusation-shaped mistake in the opposite direction.
7.8 Contract audit ROADMAP
Static analysis of the token itself rather than its trades. Venue-independent, and it applies to curve launches too:
- mint authority — can more supply still be created?
- freeze authority — can holders be frozen?
- transfer-hook / blacklist authority — can transfers be blocked selectively?
- program upgradeability — can the rules change after launch?
- liquidity — burned, locked, or still pullable?
This is what makes "every project on Solana" honest. A token deployed straight to a pool has no launch to reconstruct, but it always has a contract to read.
7.9 Structure score
A composite of the signals above, published beside the evidence rather than instead of it. It exists to order a list, not to replace a reading.
Two rules constrain it:
- A component that is unmeasured does not contribute a zero. It reduces the number of signals the score is computed across, and the count is published: "0 of 4 signals elevated" rather than "0 of 6" when two could not be read.
- Overhang floors the label. Coordinated supply still in place cannot be scored away by clean readings elsewhere.
7.10 Verdict
Four words, and it never softens:
Clean · Risky · High Risk · Rugged / Farmed
Every post-collapse state that did not recover is Rugged / Farmed. Which collapse it was — abandoned, farmed, open to a community takeover — goes in the reason line, where it belongs.
This is a deliberate correction of an earlier design in which a collapsed token whose cohort had cleanly exited could be headlined as an opportunity. A tidy wreck is still a wreck. Reports published before the rule changed keep their original wording: the record is fixed forward, never rewritten.
08Worked exampleSHIPPED
A token launched on a bonding curve, read end to end:
1. Anchor. The curve account is walked to its oldest signature → block 0, and the derived birth time is corroborated against the launchpad's own. 2. Launch window. Every buy in block 0 and the following 5 slots is collected with its wallet, slot offset and priority fee. 3. Bundlers. Six wallets bought in block 0 → bundled. Their combined share of supply is computed and published with the wallet count. 4. Snipers. Four more bought within 5 slots and paid priority fees → snipers. Two others were in-window but had no established fee → not claimed. 5. Transfer network. One bundler moved its entire position to a wallet that sold 23 minutes later. That recipient joins the cohort by membership and contributes zero to the held percentage. 6. Supply structure. Top-10 concentration from a balance-ordered source, pools excluded; overhang computed as cohort ∩ top-10. 7. Verdict. Derived from the signals that were actually measured, with the count of measured signals published alongside. 8. Publication. Each finding becomes a chapter carrying its transaction reference.
At every step, a value that could not be established stops that branch rather than defaulting.
—PART III — ARCHITECTURE
09System architectureSHIPPED
Five layers. Four of them are venue-independent.
5. PUBLICATION floors, narration, delivery, share text
4. CONTRACT AUDIT authorities, upgradeability, liquidity ROADMAP
3. UNIVERSAL holders, concentration, coordination,
transfer networks, the wallet graph
2. LAUNCH COHORT bundlers, snipers, dev/team
1. VENUE ADAPTER the only venue-specific code
The seam is Layer 1. Layers 2–5 consume an anchor and do not know or care where it came from.
10Venue architectureROADMAP
One forensic engine, many anchors.
●───────────────○───────────────○───────────────○
LIVE NEXT THEN FUTURE
pump.fun Bonding DEXs All of
curves Solana
curve launches Bonk and the Raydium, every launch
reconstructed other curve Meteora, on the chain
from block 0 launchpads Jupiter into one record
Every venue writes into the same wallet record. That is the consequence of keying the graph on wallets rather than tokens: a venue is a new anchor, not a new registry. Each one makes every previous answer better rather than starting a second record beside the first — which is why the order below is a sequence rather than a list of integrations.
The cohort rules in §7.2–7.3 depend on exactly three things: a launch slot, slot offsets, and priority fees. None is specific to a launchpad. The only venue-specific question is where the launch slot comes from.
So a venue is an interface, not a subsystem:
interface VenueAdapter {
claims(mint): boolean; // does this venue own this token?
resolveAnchor(mint): { // THE question
launchSlot: number;
launchBuys: LaunchBuy[];
complete: boolean;
} | null; // null → unmeasured, never zero
defaultSupply(): number | null;
lifecycle: LifecycleVocabulary; // "graduated" is not universal
}
Adding a venue is: implement the adapter, register program ids, freeze a golden fixture against one real token, and diff it. Layers 2–5 are untouched. That is what makes each venue a dated, verifiable deliverable rather than an open-ended integration.
A venue not yet integrated returns null and its tokens publish launch signals as unmeasured. This behaviour is already shipped — it is what watch coverage does in production today.
11Data acquisitionSHIPPED
History is reconstructed, not subscribed to. The forensic layer derives what it needs from account walks, which is why findings work independently of any live event feed and why a token can be added months after it launched.
- Signature walks — paginated account history, used to reach block 0.
- Enriched transactions — batched, and the dominant cost, so batching is pooled across work units rather than issued per wallet.
- Live stream — byte-billed, for tokens under active coverage.
Coverage is a purchasing decision, made once, at add time. full buys the launch reconstruction and position enrichment; watch buys current trades only. The distinction is enforced at every path that can spend, not merely at the first one — a lesson from an incident in which three separate code paths could each independently buy history the operator had declined.
12The AI layerSHIPPED
This is the section most often skipped in comparable documents, and it is where the strongest guarantee lives.
12.1 What the model does — and does not — do
The model writes. It never decides.
Every forensic fact in a chapter is computed deterministically before generation begins. The model receives a structured object of already-decided values — who, what, how much, which transaction — and is constrained to render them as prose.
It cannot:
- compute a percentage
- classify a wallet
- infer a motive
- resolve an unknown into a value
A field that arrives null stays absent from the output. There is no path by which a model's fluency becomes a published claim, because the model is never given the inputs from which such a claim could be constructed.
12.2 Constrained generation
- Structured output. The model returns JSON against a fixed schema, parsed and validated. A response that does not conform is rejected, not repaired.
- Reasoning disabled. Extended thinking is off. These prompts fix the voice and the schema in advance; there is no open question to deliberate, and a thinking block consuming the output budget produced empty chapters when it was left on.
- Bounded output. A generous token ceiling over the observed usage — headroom against a long finding, not a budget anything approaches.
- Model tiering. A small fast model narrates ordinary chapters; a larger one is reserved for the forensic layer, where the input is denser.
12.3 The deterministic re-check
Generation is followed by a rule-based scan that does not use a model. It enforces the evidence rules from §06 on the output, independently of whatever the model was told. Anything that trips it goes to review rather than out.
This matters because §12.1 is a claim about inputs. §12.3 is the check on outputs. Both exist because either alone is a single point of failure.
12.4 Voice, and its one exception
The register is flat and observational. One deliberate exception: when the outcome of a trade is known, an entry may open with a single human reaction before returning to flat.
CHAPTER · ELEVEN MINUTES OF CONVICTION Damn. A wallet trading as gakeflower (7xKQ…9mAe) took supply in the opening bundle and sold the lot 63.4% below where it got in. Eleven minutes, start to finish.
That reaction is gated on evidence. If the position history could not be established there is no reaction, no direction, and no implication — "damn" is a claim about whether a trade won or lost, and the system does not guess.
Laughing at a decision is allowed; it is what makes the record get read. Mocking a person, or implying anything was done to them, is not — that asserts a victim and an actor, which is an accusation rather than an observation.
12.5 Cost control
Narration is the dominant variable cost, not chain data. Two mechanisms hold it:
- Prompt caching. The system prompt is identical on every call and cached with a long TTL, because narration is bursty — a token goes quiet, then publishes a dozen chapters in a minute. Short-lived caching means every burst starts cold and pays full price for the same fixed prompt.
- The floor. What gets published is governed by an operator-set SOL floor, which is therefore the real cost dial. Coverage decides what is bought; the floor decides what is written.
13The recordSHIPPED
- PostgreSQL. Relational, because the product is a graph of wallets across tokens.
- Raw events retained verbatim. Every published entry traces to a persisted on-chain fact; nothing is asserted from memory.
- Chapters are permanent. Removing coverage stops future monitoring. It does not retract what was published. Retraction is a separate, deliberate act.
- Derived values are snapshots of a rule. When a rule changes, the code and the live rows are migrated; published prose is left exactly as it went out, because a chapter was written in the vocabulary of its day.
—PART IV — THE MEMORY
14The memory, and why it compoundsSHIPPED
A scanner starts from nothing every time you ask. $LOG does not.
Wallet fingerprints persist across every covered token. A wallet identified on one launch is already known the next time it appears on a different one. Operators who rotate wallets are fingerprinted by funding-source chains and behavioural timing, not by exact address match — so a fresh wallet does not reset the record.
The graph keys on wallets, not tokens. That makes it venue-independent by construction: a wallet first seen sniping a curve launch is recognised the moment it appears on an AMM pool, with no work required to connect them.
15Defensible, and merely accumulatedSHIPPED
The chain is public and permanent, so it is worth being precise about what a competitor could not simply reproduce.
The wallet graph is reproducible, at a price. Anyone applying the walks in Part II could reconstruct the same cohorts and funding chains. What they could not avoid is the bill: rebuilding a registry across thousands of launches at once, where we pay for each one incrementally, as it happens, at near-zero marginal cost. That is a real advantage — an accumulated one rather than an exclusive one.
The time series is not reproducible at any price. Significance is judged against each token's own history: the distribution of its trade sizes, its normal rate of movement, what its baseline was before a burst. Those are sampled, not derived. Nothing in a snapshot taken today can say what a token's trade distribution was last Tuesday — that record exists only for someone who was watching at the time.
So the moat is what was observed as it happened. Every token covered makes every future answer better, and the window to observe a given token's past closes permanently once it passes.
—PART V — PRODUCT
16Surfaces and coverageSHIPPED
Coverage — what is bought. Chosen once, at add time, because the add is what spends.
full— the launch reconstructed from block 0, positions enriched.watch— current trades only. No launch walk, no backfill, no enrichment. For mature tokens with no launch worth reconstructing. One-way: to give a watched token a past, remove it and add it again.
A watched token has no cohort — that follows from the definition rather than being a separate rule, since the launch walk is what identifies one.
The floor — what is published. Seven rungs, one ladder. Every rung is "the launch cohort, plus ordinary trades above n SOL":
cohort only · 5 · 2.5 · 1 · 0.5 · 0.25 · 0.1 (SOL)
The launch cohort publishes at any size on every rung. The floor governs the ordinary market only.
17Premium on prepaid creditsIN PROGRESS
What is sold is depth. The free read says what a token looks like now. Paid coverage reconstructs the launch, follows the wallets out, and keeps watching — and the same record answers four different questions depending on who is asking:
| who | what they buy |
| Traders | Depth on a token before they buy it, and alerts on wallets they have been burned by. The cost of one avoided exit pays for a year. |
| Projects | Who is in their launch, who is coordinated, who is draining their pool — on their own token, continuously. |
| Developers | The read, inside their own product. Query the record rather than rebuilding the walks in §07. |
| B2B / API | Explorers, wallets, trading interfaces and launchpads embedding the intelligence — the same answer, under their brand, at volume. See §19. |
Revenue is a function of the corpus, so the order is deliberate. Query access to a record covering one venue is worth little; the same access across every Solana launch is worth a great deal to anyone whose product shows a token or a wallet to a user. Venues and coverage first, monetisation after — and the asset does not depreciate while that happens, because the window to observe a launch closes permanently once it passes.
Rates are not published here. They are set against measured infrastructure cost per action, that measurement is still moving, and this phase is not optimising revenue — so a number quoted now would date the document and describe a decision that has not been made.
Prepaid, SOL-denominated, no fiat rails. You buy credits; actions cost credits. There are no subscriptions, no recurring charges and no minimums.
SOL is the source of truth. No pricing logic converts through USD. The rate is a single configurable constant, reviewed on a stated schedule against infrastructure costs — which are USD-denominated even though revenue is not. Repricing follows a published trigger rather than a market move, so it is never arbitrary.
Pre-Buy Check is free and ungated by design, whatever the rest costs. It is the question a trader asks most often and the one that demonstrates the product fastest.
Rates are not published here yet. Pack pricing and per-action costs are set against measured infrastructure cost per action, and that measurement is still moving — so quoting a number now would date the document. The structure below is settled; the figures follow once the cost base is stable.
17.1 The forensic layer is permanent. The watchlist is yours.
Credits buy coverage — which tokens are followed, how closely, and how much of their past is reconstructed.
The forensic layer of every tracked token is permanent and public: the verdict, the signals behind it, the block it was derived from and the wallets that produced each number, in the register described in §04.
The stories and chapters on your watchlist are yours. Coverage is what turns a static verdict into a running narrative — the cohort wallet that moved, the liquidity that changed, the name that showed up somewhere new — delivered on the tokens you chose, as it happens.
Stopping is not deleting. Removing a token ends future coverage and all recurring work on it immediately. The token's forensic record stays in the register — retraction is a separate, deliberate act.
17.2 Accounting
- Wallet-keyed. Balance and entitlements key to the wallet address, not to a messaging account. A messaging account is a delivery channel; the wallet is the identity. This means a future web sign-in finds an existing balance and watchlist with no linking step.
- Ledgered, not counted. Every credit-consuming action writes an atomic entry: action, credits, token, timestamp. Balance is derived from ledger history, not held as a mutable number — so spend is auditable and disputes are answerable.
- Charged on completion. Credits are deducted when the chapter is published or the report generated. Nothing is reserved speculatively.
—PART VI — FORWARD
18Roadmap
Q3 2026 · now — the curve launchpads, then the pools IN PROGRESS
Coverage widens one venue at a time, and the checks widen with it.
Today the launch walk runs on pump.fun, and only there. That is the venue the block-0 reconstruction was built against, and all but a handful of the tokens under coverage are its mints. The live count, and the split between tokens tracked and tokens carrying a stored analysis, are published on the homepage and the deck, where they are measured rather than written down.
Bonk and the other curve launchpads are next: the same walk against a different anchor, which is why they are a venue adapter rather than a rewrite. The DEXs — Raydium, Meteora, Jupiter — come after them, and bring the harder case with them: a token deployed straight to a pool never had a fair launch to reconstruct, so it is read from its contract and its holders instead.
Section 10 holds the same four stages, and the homepage prints them live. This document does not get to tell a different story in its roadmap than the product tells on its front page.
Alongside it, the token's own contract is read, not just its trades: can more supply still be minted, can holders be frozen, can transfers be blocked, is the liquidity burned or still pullable. A token with no launch to reconstruct still has a contract that answers.
And paste any contract address to get the forensic read free — holders, concentration, who is coordinated, what the contract still permits. No account, no charge.
Every token that goes under coverage also joins a public register: the verdict, the block it came from, and the wallets behind each number. The forensic layer of every tracked token is permanent and public; the stories and chapters on your watchlist are yours. Every token added makes that record longer.
A venue we haven't reached yet says so. It never shows a clean zero it didn't earn — and on a token from a venue with no adapter, the launch signals read —, not a reassuring nothing.
coverage today: pump.fun · next: bonk and the curve launchpads · then: raydium, meteora, jupiter
Q4 2026 · next — act on what you read, and go deeper than free ROADMAP
The read and the trade stop living in two tabs.
Every chapter tells you what a wallet did. Next it tells you what to do about it — buy or sell from inside the chapter itself, on web and in Telegram.
More venues land through the same door, each one adding to something that compounds: $LOG remembers wallets across tokens. A wallet that sniped a launch in August is recognised the moment it appears on a token in December — not because we watched that token, but because we watched that wallet.
Premium opens on prepaid credits — you buy coverage, you see exactly what it costs, and it never bills you for a token you stopped watching.
surfaces: web + telegram · premium: prepaid credits
Q1 2027 · then — $LOG, in your pocket ROADMAP
Everything above, carried over — not rebuilt.
The feed, the chat and the buy bot as a real app, not a page you bookmark.
Alerts that reach you the moment a chapter is worth reading — a cohort wallet moving, liquidity pulled, a name you have seen before showing up somewhere new.
surface: mobile app
Q2 2027 · later — the Solana Forensic Layer ROADMAP
Every wallet, every token, every project on Solana — verifiable receipts, not probabilities.
The wallet memory stops being something only $LOG reads. It becomes infrastructure other builders can query — the accumulated record of who did what, across every launch on the chain, with every number still traceable to a transaction anyone can open.
This is where §04 finishes. A public record that only one product can read is a public record with a gatekeeper. Opening the layer removes the last one: the intelligence normally assembled by a handful of firms with their own indexers becomes something any builder, any researcher and any user can query directly.
Not a score. Not a probability. A receipt.
infrastructure: open forensic layer
19The Solana Forensic LayerROADMAP
The endpoint of everything above.
Layers 2–5 already work on any Solana token. Layer 1 makes them work on every venue. The wallet graph accumulates across all of it. What remains is to open it: a queryable record of who did what, across every launch on the chain, where each answer still carries the transaction that proves it.
Not a risk score other builders have to trust. A receipt they can check.
Open does not mean free of charge, and this document should not be read as promising that. The split is the same one the product already runs on:
| public, no account | The current forensic read on a token — verdict, signals, and the wallets behind each number. Permanent, and never metered. |
| commercial | Depth and volume: reconstructed launch history, cross-token wallet lookups, the time series, and programmatic access at a rate no human reading a page would reach. |
That is what makes the layer sustainable rather than dependent on a grant renewing. The facts are public — they are on-chain and always were. What is sold is the work of having assembled, labelled and kept them, and the ability to ask the record a question at volume. Explorers, wallets, trading interfaces and launchpads are the buyers that matter here: the same answer, under their brand, served through an API.
Revenue follows the corpus, not the other way round. Query access to a record covering one venue is worth little; the same access across every Solana launch is worth a great deal to anyone whose product shows a token or a wallet to a user. So the order is deliberate — venues and coverage first, monetisation after — and the asset does not depreciate while that happens. A launch observed in 2026 still answers questions in 2028, and the window to observe it closes permanently once it passes.
20Glossary
See §05 for the working vocabulary. Additional terms used above:
| term | meaning |
| ATA | Associated Token Account — the per-wallet, per-mint account holding a balance. Walking it reconstructs a position. |
| DAS | Digital Asset Standard — the indexed asset API used for holder and metadata reads. |
| Jito bundle | Up to 5 transactions executed atomically in one slot, all-or-nothing, uninterruptible by outside transactions. |
| Reference-counted coverage | Coverage that persists while any watcher remains, rather than being owned by one subscriber. |
| Structure score | The composite in §7.9. Ordering aid, never a substitute for the evidence. |
21Appendix — signal reference
| signal | inputs | anchor required | refuses to claim when |
| Bundler | launch-slot buys | yes | anchor unknown |
| Sniper | slot offset + priority fee | yes | fee not established |
| Dev / team | creator authority, funding, launch behaviour | no | no deployer identifiable |
| Coordination — similarity | holder balances | no | fewer than two comparable holders |
| Coordination — creation time | wallet creation slots | no | creation times unread |
| Transfer network | cohort outbound transfers | yes | scan incomplete → published as partial |
| Top-10 concentration | balance-ordered holders, pools excluded | no | supply unreadable |
| Overhang | cohort ∩ top-10 | yes | launch unanalysed or origin unverified |
Contract audit ROADMAP | mint / freeze / hook authorities, LP state | no | authority state unreadable |
The one-line version
Every wallet, every token, every project on Solana — verifiable receipts, not probabilities. $LOG — receipts only.
This roadmap is direction, not a promise. The mechanic proves itself first.