SHARPIE
Getting Started
Installation
Quickstart
Hello World Example
Architecture
Frequently Asked Questions
Deep Dive
Customization
Deployment
Crowdworker Platforms
Updating SHARPIE
Data Model
Dependencies and Licenses
Glossary
Development
Contributing
Engineering Principles
Benchmark
Release Checklist
API
API
SHARPIE
Index
Index
_
|
A
|
B
|
C
|
D
|
E
|
F
|
G
|
H
|
I
|
K
|
L
|
M
|
N
|
O
|
P
|
R
|
S
|
T
|
U
|
V
|
W
_
__init__() (sharpie.webserver.accounts.forms.ProfileInfoForm method)
(sharpie.webserver.accounts.forms.ProfilePasswordForm method)
(sharpie.webserver.experiment.environment_template.EnvironmentWrapper method)
(sharpie.webserver.experiment.policy_template.Policy method)
A
AccountsConfig (class in sharpie.webserver.accounts.apps)
(class in sharpie.webserver.data.apps)
(class in sharpie.webserver.experiment.apps)
(class in sharpie.webserver.home.apps)
(class in sharpie.webserver.runner.apps)
(class in sharpie.webserver.server.apps)
AccountTestCase (class in sharpie.webserver.accounts.tests)
action (sharpie.webserver.data.models.Record attribute)
Agent
(class in sharpie.webserver.experiment.models)
Agent.DoesNotExist
Agent.MultipleObjectsReturned
agent_set (sharpie.webserver.experiment.models.Policy attribute)
AgentAdmin (class in sharpie.webserver.experiment.admin)
agents (sharpie.webserver.experiment.models.Experiment attribute)
agreed_at (sharpie.webserver.accounts.models.Participant attribute)
B
bandwidth_threshold (sharpie.webserver.experiment.models.ConnectionCheckerConfig attribute)
C
checkpoint_interval (sharpie.webserver.experiment.models.Policy attribute)
clean() (sharpie.webserver.experiment.forms.ConfigForm method)
(sharpie.webserver.experiment.models.Agent method)
(sharpie.webserver.experiment.models.Environment method)
(sharpie.webserver.experiment.models.Policy method)
completed (sharpie.webserver.data.models.Episode attribute)
conda_environment (sharpie.webserver.experiment.models.Experiment attribute)
config_() (in module sharpie.webserver.experiment.views)
ConfigForm (class in sharpie.webserver.experiment.forms)
connect() (sharpie.webserver.experiment.websocket.RunConsumer method)
(sharpie.webserver.runner.websocket.ConnectionConsumer method)
connected_participants (sharpie.webserver.data.models.Session attribute)
connection_key (sharpie.webserver.runner.models.Runner attribute)
ConnectionCheckerConfig (class in sharpie.webserver.experiment.models)
ConnectionCheckerConfig.DoesNotExist
ConnectionCheckerConfig.MultipleObjectsReturned
ConnectionCheckerConfigAdmin (class in sharpie.webserver.experiment.admin)
ConnectionConsumer (class in sharpie.webserver.runner.websocket)
Consent (class in sharpie.webserver.accounts.models)
consent (sharpie.webserver.accounts.models.Participant attribute)
Consent.DoesNotExist
Consent.MultipleObjectsReturned
consent_() (in module sharpie.webserver.accounts.views)
consent_id (sharpie.webserver.accounts.models.Participant attribute)
consent_required() (in module sharpie.webserver.accounts.decorators)
ConsentAdmin (class in sharpie.webserver.accounts.admin)
ConsentForm (class in sharpie.webserver.accounts.forms)
created_at (sharpie.webserver.accounts.models.Consent attribute)
(sharpie.webserver.accounts.models.Participant attribute)
D
decode_data() (in module sharpie.webserver.experiment.consumer_helpers)
default_auto_field (sharpie.webserver.accounts.apps.AccountsConfig attribute)
(sharpie.webserver.data.apps.AccountsConfig attribute)
(sharpie.webserver.experiment.apps.AccountsConfig attribute)
(sharpie.webserver.home.apps.AccountsConfig attribute)
(sharpie.webserver.runner.apps.AccountsConfig attribute)
(sharpie.webserver.server.apps.AccountsConfig attribute)
default_environment_filepaths() (in module sharpie.webserver.experiment.models)
default_keyboard_inputs() (in module sharpie.webserver.experiment.models)
default_policy_filepaths() (in module sharpie.webserver.experiment.models)
default_research_team() (in module sharpie.webserver.accounts.models)
delete() (sharpie.webserver.accounts.models.Consent method)
(sharpie.webserver.experiment.models.ConnectionCheckerConfig method)
demographics (sharpie.webserver.accounts.models.Participant attribute)
description (sharpie.webserver.experiment.models.Agent attribute)
(sharpie.webserver.experiment.models.Environment attribute)
(sharpie.webserver.experiment.models.Policy attribute)
disconnect() (sharpie.webserver.experiment.websocket.RunConsumer method)
(sharpie.webserver.runner.websocket.ConnectionConsumer method)
Django
download_environment_template() (in module sharpie.webserver.experiment.views)
download_policy_template() (in module sharpie.webserver.experiment.views)
duration_steps (sharpie.webserver.data.models.Episode attribute)
E
enabled (sharpie.webserver.experiment.models.Experiment attribute)
end_time (sharpie.webserver.data.models.Session attribute)
ended_at (sharpie.webserver.data.models.Episode attribute)
Environment
(class in sharpie.webserver.experiment.models)
environment (sharpie.webserver.experiment.models.Experiment attribute)
Environment.DoesNotExist
Environment.MultipleObjectsReturned
environment_id (sharpie.webserver.experiment.models.Experiment attribute)
EnvironmentAdmin (class in sharpie.webserver.experiment.admin)
EnvironmentWrapper (class in sharpie.webserver.experiment.environment_template)
Episode
(class in sharpie.webserver.data.models)
episode (sharpie.webserver.data.models.Record attribute)
Episode.DoesNotExist
Episode.MultipleObjectsReturned
episode_id (sharpie.webserver.data.models.Record attribute)
EpisodeAdmin (class in sharpie.webserver.data.admin)
episodes (sharpie.webserver.data.models.Session attribute)
ethical_guidelines (sharpie.webserver.accounts.models.Consent attribute)
Event
EventLog
Experiment
(class in sharpie.webserver.experiment.models)
experiment (sharpie.webserver.data.models.Session attribute)
(sharpie.webserver.experiment.models.Agent attribute)
Experiment.DoesNotExist
Experiment.MultipleObjectsReturned
experiment_id (sharpie.webserver.data.models.Session attribute)
experiment_set (sharpie.webserver.experiment.models.Environment attribute)
ExperimentAdmin (class in sharpie.webserver.experiment.admin)
ExperimentTestCase (class in sharpie.webserver.data.tests)
(class in sharpie.webserver.experiment.tests)
(class in sharpie.webserver.runner.tests)
explanation_text (sharpie.webserver.accounts.models.Consent attribute)
external_id (sharpie.webserver.accounts.models.Participant attribute)
F
filepaths (sharpie.webserver.experiment.models.Environment attribute)
(sharpie.webserver.experiment.models.Policy attribute)
G
get_agent_data() (in module sharpie.runner.manage)
get_inputs_type_display() (sharpie.webserver.experiment.models.Agent method)
get_keyboard_input_display_map() (sharpie.webserver.experiment.models.Agent method)
get_next_by_created_at() (sharpie.webserver.accounts.models.Consent method)
(sharpie.webserver.accounts.models.Participant method)
get_next_by_last_modified() (sharpie.webserver.accounts.models.Participant method)
get_next_by_start_time() (sharpie.webserver.data.models.Session method)
get_next_by_started_at() (sharpie.webserver.data.models.Episode method)
get_next_by_timestamp() (sharpie.webserver.data.models.Record method)
get_policy_actions() (in module sharpie.runner.manage)
get_previous_by_created_at() (sharpie.webserver.accounts.models.Consent method)
(sharpie.webserver.accounts.models.Participant method)
get_previous_by_last_modified() (sharpie.webserver.accounts.models.Participant method)
get_previous_by_start_time() (sharpie.webserver.data.models.Session method)
get_previous_by_started_at() (sharpie.webserver.data.models.Episode method)
get_previous_by_timestamp() (sharpie.webserver.data.models.Record method)
get_status_display() (sharpie.webserver.data.models.Session method)
H
has_add_permission() (sharpie.webserver.experiment.admin.ConnectionCheckerConfigAdmin method)
has_delete_permission() (sharpie.webserver.experiment.admin.ConnectionCheckerConfigAdmin method)
Human-AI Interaction
I
id (sharpie.webserver.accounts.models.Consent attribute)
(sharpie.webserver.accounts.models.Participant attribute)
(sharpie.webserver.data.models.Episode attribute)
(sharpie.webserver.data.models.Record attribute)
(sharpie.webserver.data.models.Session attribute)
(sharpie.webserver.experiment.models.Agent attribute)
(sharpie.webserver.experiment.models.ConnectionCheckerConfig attribute)
(sharpie.webserver.experiment.models.Environment attribute)
(sharpie.webserver.experiment.models.Experiment attribute)
(sharpie.webserver.experiment.models.Policy attribute)
(sharpie.webserver.runner.models.Runner attribute)
index() (in module sharpie.webserver.home.views)
info (sharpie.webserver.data.models.Record attribute)
inputs_type (sharpie.webserver.experiment.models.Agent attribute)
ip_address (sharpie.webserver.runner.models.Runner attribute)
K
keyboard_input_display (sharpie.webserver.experiment.models.Agent attribute)
keyboard_inputs (sharpie.webserver.experiment.models.Agent attribute)
L
last_active (sharpie.webserver.runner.models.Runner attribute)
last_modified (sharpie.webserver.accounts.models.Participant attribute)
latency_threshold (sharpie.webserver.experiment.models.ConnectionCheckerConfig attribute)
link (sharpie.webserver.experiment.models.Experiment attribute)
list_display (sharpie.webserver.accounts.admin.ConsentAdmin attribute)
(sharpie.webserver.accounts.admin.ParticipantAdmin attribute)
(sharpie.webserver.data.admin.EpisodeAdmin attribute)
(sharpie.webserver.data.admin.RecordAdmin attribute)
(sharpie.webserver.data.admin.SessionAdmin attribute)
(sharpie.webserver.experiment.admin.AgentAdmin attribute)
(sharpie.webserver.experiment.admin.ConnectionCheckerConfigAdmin attribute)
(sharpie.webserver.experiment.admin.EnvironmentAdmin attribute)
(sharpie.webserver.experiment.admin.ExperimentAdmin attribute)
(sharpie.webserver.experiment.admin.PolicyAdmin attribute)
(sharpie.webserver.runner.admin.RunnerAdmin attribute)
list_filter (sharpie.webserver.accounts.admin.ConsentAdmin attribute)
(sharpie.webserver.accounts.admin.ParticipantAdmin attribute)
(sharpie.webserver.data.admin.EpisodeAdmin attribute)
(sharpie.webserver.data.admin.RecordAdmin attribute)
(sharpie.webserver.data.admin.SessionAdmin attribute)
(sharpie.webserver.experiment.admin.ExperimentAdmin attribute)
(sharpie.webserver.runner.admin.RunnerAdmin attribute)
load_environment() (in module sharpie.runner.manage)
load_episode() (in module sharpie.runner.manage)
load_policies() (in module sharpie.runner.manage)
load_task_description() (in module sharpie.webserver.server.markdown_utils)
login_() (in module sharpie.webserver.accounts.views)
LoginForm (class in sharpie.webserver.accounts.forms)
logout_() (in module sharpie.webserver.accounts.views)
long_description (sharpie.webserver.experiment.models.Experiment attribute)
M
main() (in module sharpie.runner.manage)
(in module sharpie.webserver.manage)
media (sharpie.webserver.accounts.admin.ConsentAdmin property)
(sharpie.webserver.accounts.admin.ParticipantAdmin property)
(sharpie.webserver.accounts.forms.ConsentForm property)
(sharpie.webserver.accounts.forms.LoginForm property)
(sharpie.webserver.accounts.forms.ProfileInfoForm property)
(sharpie.webserver.accounts.forms.ProfilePasswordForm property)
(sharpie.webserver.accounts.forms.RegisterForm property)
(sharpie.webserver.data.admin.EpisodeAdmin property)
(sharpie.webserver.data.admin.RecordAdmin property)
(sharpie.webserver.data.admin.SessionAdmin property)
(sharpie.webserver.experiment.admin.AgentAdmin property)
(sharpie.webserver.experiment.admin.ConnectionCheckerConfigAdmin property)
(sharpie.webserver.experiment.admin.EnvironmentAdmin property)
(sharpie.webserver.experiment.admin.ExperimentAdmin property)
(sharpie.webserver.experiment.admin.PolicyAdmin property)
(sharpie.webserver.experiment.forms.ConfigForm property)
(sharpie.webserver.runner.admin.RunnerAdmin property)
metadata (sharpie.webserver.data.models.Session attribute)
(sharpie.webserver.experiment.models.Agent attribute)
(sharpie.webserver.experiment.models.Environment attribute)
(sharpie.webserver.experiment.models.Policy attribute)
module
sharpie.runner
sharpie.runner.manage
sharpie.webserver
sharpie.webserver.accounts
sharpie.webserver.accounts.admin
sharpie.webserver.accounts.apps
sharpie.webserver.accounts.decorators
sharpie.webserver.accounts.forms
sharpie.webserver.accounts.migrations
sharpie.webserver.accounts.models
sharpie.webserver.accounts.tests
sharpie.webserver.accounts.urls
sharpie.webserver.accounts.views
sharpie.webserver.data
sharpie.webserver.data.admin
sharpie.webserver.data.apps
sharpie.webserver.data.migrations
sharpie.webserver.data.models
sharpie.webserver.data.tests
sharpie.webserver.experiment
sharpie.webserver.experiment.admin
sharpie.webserver.experiment.apps
sharpie.webserver.experiment.consumer_helpers
sharpie.webserver.experiment.environment_template
sharpie.webserver.experiment.forms
sharpie.webserver.experiment.migrations
sharpie.webserver.experiment.models
sharpie.webserver.experiment.policy_template
sharpie.webserver.experiment.tests
sharpie.webserver.experiment.urls
sharpie.webserver.experiment.views
sharpie.webserver.experiment.websocket
sharpie.webserver.home
sharpie.webserver.home.apps
sharpie.webserver.home.urls
sharpie.webserver.home.views
sharpie.webserver.manage
sharpie.webserver.runner
sharpie.webserver.runner.admin
sharpie.webserver.runner.apps
sharpie.webserver.runner.migrations
sharpie.webserver.runner.models
sharpie.webserver.runner.tests
sharpie.webserver.runner.websocket
sharpie.webserver.server
sharpie.webserver.server.apps
sharpie.webserver.server.asgi
sharpie.webserver.server.markdown_utils
sharpie.webserver.server.settings
sharpie.webserver.server.urls
multiple_keyboard_inputs (sharpie.webserver.experiment.models.Agent attribute)
N
name (sharpie.webserver.accounts.apps.AccountsConfig attribute)
(sharpie.webserver.accounts.models.Consent attribute)
(sharpie.webserver.data.apps.AccountsConfig attribute)
(sharpie.webserver.experiment.apps.AccountsConfig attribute)
(sharpie.webserver.experiment.models.Agent attribute)
(sharpie.webserver.experiment.models.Environment attribute)
(sharpie.webserver.experiment.models.Experiment attribute)
(sharpie.webserver.experiment.models.Policy attribute)
(sharpie.webserver.home.apps.AccountsConfig attribute)
(sharpie.webserver.runner.apps.AccountsConfig attribute)
(sharpie.webserver.server.apps.AccountsConfig attribute)
number_of_episodes (sharpie.webserver.experiment.models.Experiment attribute)
O
objects (sharpie.webserver.accounts.models.Consent attribute)
(sharpie.webserver.accounts.models.Participant attribute)
(sharpie.webserver.data.models.Episode attribute)
(sharpie.webserver.data.models.Record attribute)
(sharpie.webserver.data.models.Session attribute)
(sharpie.webserver.experiment.models.Agent attribute)
(sharpie.webserver.experiment.models.ConnectionCheckerConfig attribute)
(sharpie.webserver.experiment.models.Environment attribute)
(sharpie.webserver.experiment.models.Experiment attribute)
(sharpie.webserver.experiment.models.Policy attribute)
(sharpie.webserver.runner.models.Runner attribute)
outcome (sharpie.webserver.data.models.Episode attribute)
override_actions() (in module sharpie.runner.manage)
override_rewards() (in module sharpie.runner.manage)
P
parse_markdown_sections() (in module sharpie.webserver.server.markdown_utils)
Participant
(class in sharpie.webserver.accounts.models)
participant (sharpie.webserver.experiment.models.Agent attribute)
Participant.DoesNotExist
Participant.MultipleObjectsReturned
ParticipantAdmin (class in sharpie.webserver.accounts.admin)
participants (sharpie.webserver.accounts.models.Consent attribute)
(sharpie.webserver.data.models.Session attribute)
Policy
(class in sharpie.webserver.experiment.models)
(class in sharpie.webserver.experiment.policy_template)
policy (sharpie.webserver.experiment.models.Agent attribute)
Policy.DoesNotExist
Policy.MultipleObjectsReturned
policy_id (sharpie.webserver.experiment.models.Agent attribute)
PolicyAdmin (class in sharpie.webserver.experiment.admin)
predict() (sharpie.webserver.experiment.policy_template.Policy method)
profile_() (in module sharpie.webserver.accounts.views)
ProfileInfoForm (class in sharpie.webserver.accounts.forms)
ProfilePasswordForm (class in sharpie.webserver.accounts.forms)
R
readonly_fields (sharpie.webserver.accounts.admin.ConsentAdmin attribute)
(sharpie.webserver.accounts.admin.ParticipantAdmin attribute)
receive() (sharpie.webserver.experiment.websocket.RunConsumer method)
(sharpie.webserver.runner.websocket.ConnectionConsumer method)
receive_message() (in module sharpie.runner.manage)
Record (class in sharpie.webserver.data.models)
Record.DoesNotExist
Record.MultipleObjectsReturned
RecordAdmin (class in sharpie.webserver.data.admin)
records (sharpie.webserver.data.models.Episode attribute)
redirect_url (sharpie.webserver.experiment.models.Experiment attribute)
register_() (in module sharpie.webserver.accounts.views)
RegisterForm (class in sharpie.webserver.accounts.forms)
Reinforcement Learning (RL)
render() (sharpie.webserver.experiment.environment_template.EnvironmentWrapper method)
research_team (sharpie.webserver.accounts.models.Consent attribute)
reset() (sharpie.webserver.experiment.environment_template.EnvironmentWrapper method)
reward (sharpie.webserver.data.models.Record attribute)
role (sharpie.webserver.experiment.models.Agent attribute)
room (sharpie.webserver.data.models.Session attribute)
run_() (in module sharpie.webserver.experiment.views)
run_episode() (in module sharpie.runner.manage)
RunConsumer (class in sharpie.webserver.experiment.websocket)
RunConsumerHelpers (class in sharpie.webserver.experiment.consumer_helpers)
Runner
(class in sharpie.webserver.runner.models)
Runner.DoesNotExist
Runner.MultipleObjectsReturned
runner_set (sharpie.webserver.data.models.Session attribute)
RunnerAdmin (class in sharpie.webserver.runner.admin)
S
sanitize_data() (in module sharpie.runner.manage)
save() (sharpie.webserver.accounts.models.Consent method)
(sharpie.webserver.experiment.models.ConnectionCheckerConfig method)
(sharpie.webserver.experiment.models.Experiment method)
search_fields (sharpie.webserver.accounts.admin.ParticipantAdmin attribute)
(sharpie.webserver.experiment.admin.AgentAdmin attribute)
(sharpie.webserver.experiment.admin.EnvironmentAdmin attribute)
(sharpie.webserver.experiment.admin.ExperimentAdmin attribute)
(sharpie.webserver.experiment.admin.PolicyAdmin attribute)
send_message() (in module sharpie.runner.manage)
Session
(class in sharpie.webserver.data.models)
session (sharpie.webserver.data.models.Episode attribute)
(sharpie.webserver.runner.models.Runner attribute)
Session.DoesNotExist
Session.MultipleObjectsReturned
session_id (sharpie.webserver.data.models.Episode attribute)
(sharpie.webserver.runner.models.Runner attribute)
SessionAdmin (class in sharpie.webserver.data.admin)
sessions (sharpie.webserver.accounts.models.Participant attribute)
(sharpie.webserver.experiment.models.Experiment attribute)
setUp() (sharpie.webserver.accounts.tests.AccountTestCase method)
(sharpie.webserver.data.tests.ExperimentTestCase method)
(sharpie.webserver.experiment.tests.ExperimentTestCase method)
(sharpie.webserver.runner.tests.ExperimentTestCase method)
SHARPIE
sharpie.runner
module
sharpie.runner.manage
module
sharpie.webserver
module
sharpie.webserver.accounts
module
sharpie.webserver.accounts.admin
module
sharpie.webserver.accounts.apps
module
sharpie.webserver.accounts.decorators
module
sharpie.webserver.accounts.forms
module
sharpie.webserver.accounts.migrations
module
sharpie.webserver.accounts.models
module
sharpie.webserver.accounts.tests
module
sharpie.webserver.accounts.urls
module
sharpie.webserver.accounts.views
module
sharpie.webserver.data
module
sharpie.webserver.data.admin
module
sharpie.webserver.data.apps
module
sharpie.webserver.data.migrations
module
sharpie.webserver.data.models
module
sharpie.webserver.data.tests
module
sharpie.webserver.experiment
module
sharpie.webserver.experiment.admin
module
sharpie.webserver.experiment.apps
module
sharpie.webserver.experiment.consumer_helpers
module
sharpie.webserver.experiment.environment_template
module
sharpie.webserver.experiment.forms
module
sharpie.webserver.experiment.migrations
module
sharpie.webserver.experiment.models
module
sharpie.webserver.experiment.policy_template
module
sharpie.webserver.experiment.tests
module
sharpie.webserver.experiment.urls
module
sharpie.webserver.experiment.views
module
sharpie.webserver.experiment.websocket
module
sharpie.webserver.home
module
sharpie.webserver.home.apps
module
sharpie.webserver.home.urls
module
sharpie.webserver.home.views
module
sharpie.webserver.manage
module
sharpie.webserver.runner
module
sharpie.webserver.runner.admin
module
sharpie.webserver.runner.apps
module
sharpie.webserver.runner.migrations
module
sharpie.webserver.runner.models
module
sharpie.webserver.runner.tests
module
sharpie.webserver.runner.websocket
module
sharpie.webserver.server
module
sharpie.webserver.server.apps
module
sharpie.webserver.server.asgi
module
sharpie.webserver.server.markdown_utils
module
sharpie.webserver.server.settings
module
sharpie.webserver.server.urls
module
short_description (sharpie.webserver.experiment.models.Experiment attribute)
start_experiment() (in module sharpie.runner.manage)
start_time (sharpie.webserver.data.models.Session attribute)
started_at (sharpie.webserver.data.models.Episode attribute)
state (sharpie.webserver.data.models.Record attribute)
status (sharpie.webserver.data.models.Session attribute)
(sharpie.webserver.runner.models.Runner attribute)
step() (sharpie.webserver.experiment.environment_template.EnvironmentWrapper method)
step_index (sharpie.webserver.data.models.Record attribute)
T
target_fps (sharpie.webserver.experiment.models.Experiment attribute)
test_config() (sharpie.webserver.data.tests.ExperimentTestCase method)
(sharpie.webserver.experiment.tests.ExperimentTestCase method)
(sharpie.webserver.runner.tests.ExperimentTestCase method)
test_image_size (sharpie.webserver.experiment.models.ConnectionCheckerConfig attribute)
test_login() (sharpie.webserver.accounts.tests.AccountTestCase method)
test_register() (sharpie.webserver.accounts.tests.AccountTestCase method)
test_run() (sharpie.webserver.data.tests.ExperimentTestCase method)
(sharpie.webserver.experiment.tests.ExperimentTestCase method)
(sharpie.webserver.runner.tests.ExperimentTestCase method)
textual_inputs (sharpie.webserver.experiment.models.Agent attribute)
timestamp (sharpie.webserver.data.models.Record attribute)
train_policies() (in module sharpie.runner.manage)
U
update() (sharpie.webserver.experiment.policy_template.Policy method)
update_single_agent() (in module sharpie.runner.manage)
User
user (sharpie.webserver.accounts.models.Participant attribute)
user_id (sharpie.webserver.accounts.models.Participant attribute)
V
validate_unique_running_session() (sharpie.webserver.data.models.Session method)
verify_runner() (sharpie.webserver.experiment.websocket.RunConsumer method)
W
wait_for_inputs (sharpie.webserver.experiment.models.Experiment attribute)
Web server
websocket_message() (sharpie.webserver.experiment.websocket.RunConsumer method)
withdrawn_at (sharpie.webserver.accounts.models.Participant attribute)