Chasing MasteryDevelopers
Get started
Chasing Mastery public platform

Choose the correct artifact

Put each concern in the public component that can own it safely and portably.

NeedBuildOwnsNever owns
Rules, scoring, state, resultPackage activitydeterministic Attempt behavioridentity, persistence, clock, network
A board, puzzle, timer, or spatial controlweb_ui artifactpresentation and typed intentscanonical mutation, native access
Stream presentationoverlay_ui artifactread-only visualsOBS control, tokens, history queries
Ranks and milestonesprogression contributionmetric, aggregation, thresholdsAttempt truth
Editing-worthy factsstory contributionsemantic vocabularyrecording or media storage
Matches or racescoordination contributionroster policy, arbitration, outcomesinvites, connections, sequencing
Commentarynarration contributionfact-to-cue policyprovider keys, synthesis, playback
Shared vertical rules or UIDomain Kitpure build-time code and assetsruntime service or installation
Automatic source inputStation connectordiscovery, translation, stable event ID, healthrules, member routing, Sprint choice
Club setup by an agentHTTP API or MCPbounded ordinary member operationsattempts, billing, connector grants

Common wrong turns

Do not hide native code in a portable package

A sidecar receives a stricter independent review because it may need narrow local authority. Packaging it together does not make that authority safe.

Do not score inside the connector

The connector should report “segment 20, multiplier 3” or another exact observation. The active Practice Mode decides whether that is a hit, miss, checkout, invalid action, or ignored event.

Do not put provider execution in narration policy

A narration contribution proposes bounded provider-neutral cues from committed facts. The host owns voices, credentials, queues, synthesis, playback, caching, and recovery.

Decision test

Ask: would changing this behavior change what the Attempt means? If yes, it probably belongs in immutable package bytes. Ask: does it require trust in an account, clock, device, credential, connection, or durable store? If yes, it belongs in a host service or separately reviewed connector—not the package.

On this page