01AuthenticateCreate acct-v1:<hash> without contact data.Your Attention Density workspace.
Accounts will connect Token balances, API keys, watchlists, and Vega learning memory without changing the measurement posture. Scores and curated posts stay open.
Sign-in and profile
Account identity will attach local study state, watchlists, and Token balances to a durable user record.
plannedBalance and receipts
API delivery, Vega reads, and deep social search use the same public Token receipt vocabulary. Stripe Checkout grants now feed a hash-only balance status; account sync comes next.
balance status readyKeys and usage
Programmatic reads stay separated from free site scores and posts. Keys map to hashed ledger identities.
paid accessLearning memory
Saved names, post-study queues, and lesson checkpoints stay browser-local until account sync ships.
local nowGET /v1/tokens/account/status
Reads the API-key-derived account id and returns Token totals without echoing the key.
authenticatedGET /v1/tokens/account/sync-contract
Defines how local Vega learning, watchlists, and post-study queues can later attach to a durable account.
contract_onlyBalance found
Shows available Tokens, lifetime granted, lifetime spent, and the last balance update.
readyNo grant yet
Returns zero totals until a signed checkout webhook creates the first Token account row.
missing_accountSync stays disabled until the contract is live.
The account path is explicit before authentication ships: link a hash-only account, read Token balance status, then merge browser-local Vega learning and watchlists without changing the measurement posture.
02Link TokensAttach api-user:<hash> balance status and checkout grants.03Sync learningMerge local Vega focus, lessons, sessions, and post-study queues.04Keep receiptsPreserve ledger receipts and compliance status for paid work.Only contract fields leave the browser.
This is the future account payload shape, filtered through account-sync-v1. It is not submitted anywhere.
Sync contract details0/7 sources · 0 held back · 3 disabled gatesOpen for contract fields, redactions, tombstones, hash links, and sample payload.
{
"version": "account-sync-v1",
"mode": "disabled_preview",
"status": "waiting_for_server_sync_tables",
"merge_policy": {
"initial_sync": "pull_server_then_merge_local",
"conflict_resolution": "latest_user_timestamp_wins",
"delete_behavior": "user_clear_tombstone",
"offline_behavior": "queue_local_until_authenticated"
},
"tombstone_shape": {
"tombstone_id": "local:<source_id>:<record_hash>",
"source_id": "post_study_queue",
"record_ref": "public_post_hash_or_ticker",
"action": "delete_or_replace",
"local_updated_at": "client_timestamp",
"server_seen_at": null,
"reason": "user_clear_or_local_conflict",
"value_policy": "no prompts · no raw social text · no handles · no raw API keys"
}
}provider selection and session storage are absentsync tables, RLS, and upsert policy are absentreplay worker and conflict audit are absentwatchlist_tickersattention-density.watchlist.v1tickerpost_study_itemsattention-density.post-study.v1id · ticker · label · postedAt · credibilityTier · interestingness · engagementpost_study_recall_checksattention-density.post-study-recall.v1contextId · scorelesson_checkpointsattention-density.vega-lessons.v1ticker · lessonIdlearning_focusattention-density.vega-learning-focus.v1focusIdfocus_practice_entriesattention-density.vega-focus-practice.v1entryId · date · focusIdstudy_session_datesattention-density.vega-study-sessions.v1dateWatchlist0 rowsno blocked fields
ticker
none detected
[]
Post study0 rowsno blocked fields
id · ticker · label · postedAt · credibilityTier · interestingness · engagement
none detected
[]
Recall checks0 rowsno blocked fields
contextId · score
none detected
[]
Lessons0 rowsno blocked fields
ticker · lessonId
none detected
[]
Learning focus0 rowsno blocked fields
focusId
none detected
[]
Focus practice0 rowsno blocked fields
entryId · date · focusId
none detected
[]
Study sessions0 rowsno blocked fields
date
none detected
[]
{
"version": "account-sync-v1",
"mode": "local_preview",
"contract_path": "/v1/tokens/account/sync-contract",
"row_count": 0,
"payload": {}
}The account surface activates fully after balance status, generated-output receipts, Stripe webhook grants, compliance filtering, and key management are durable.