dreadnode 2.0.16__tar.gz → 2.0.17__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {dreadnode-2.0.16 → dreadnode-2.0.17}/PKG-INFO +1 -1
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/api/client.py +36 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/api/models.py +45 -14
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/airt.py +573 -129
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/capability.py +196 -30
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/dataset.py +24 -6
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/environment.py +73 -26
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/evaluation.py +72 -140
- dreadnode-2.0.17/dreadnode/app/cli/inference_model.py +152 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/main.py +9 -3
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/model.py +24 -6
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/optimize.py +58 -12
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/runtime.py +12 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/sandbox.py +8 -5
- dreadnode-2.0.17/dreadnode/app/cli/secret.py +101 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/shared.py +270 -4
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/task.py +28 -7
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/train.py +43 -4
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/worlds.py +492 -79
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/client/runtime_client.py +28 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/print_mode.py +7 -11
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/server/app.py +174 -7
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/server/prompt_registry.py +20 -16
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/server/runtime_events.py +12 -5
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/server/session_policy.py +5 -6
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/server/websocket.py +34 -33
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/app.py +195 -190
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/capabilities_manager.py +65 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/dreadnode.tcss +52 -9
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/model_manager.py +14 -2
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/profile_manager.py +81 -39
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screen_router.py +12 -3
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/auth.py +4 -1
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/base.py +1 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/capabilities.py +88 -67
- dreadnode-2.0.17/dreadnode/app/tui/screens/sessions.py +1158 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/sessions_manager.py +86 -84
- dreadnode-2.0.17/dreadnode/app/tui/status_messages.py +11 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/tool_format.py +27 -1
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/turn_coordinator.py +14 -23
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/turn_reducer.py +4 -4
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/turn_state_phase.py +7 -3
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/update_check.py +57 -2
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/__init__.py +2 -1
- dreadnode-2.0.17/dreadnode/app/tui/widgets/confirm_modal.py +109 -0
- dreadnode-2.0.17/dreadnode/app/tui/widgets/human_prompt.py +609 -0
- dreadnode-2.0.17/dreadnode/app/tui/widgets/permission_prompt.py +112 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/status_bar.py +6 -5
- dreadnode-2.0.17/dreadnode/app/tui/widgets/welcome.py +398 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/agents/dreadnode.md +1 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/quickstart.md +4 -4
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/sdk/capabilities.md +50 -1
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/tui/default-tools.md +9 -5
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/SKILL.md +4 -1
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/INDEX.md +3 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/airt.md +22 -2
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/capability.md +35 -1
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/dataset.md +1 -1
- dreadnode-2.0.17/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/env.md +147 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/evaluation.md +7 -7
- dreadnode-2.0.17/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/inference-model.md +57 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/model.md +1 -1
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/optimize.md +9 -8
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/sandbox.md +1 -1
- dreadnode-2.0.17/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/secret.md +40 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/task.md +1 -1
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/train.md +5 -4
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/worlds.md +16 -12
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/getting-started/authentication.md +42 -86
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/getting-started/authentication.md +42 -86
- dreadnode-2.0.17/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/getting-started/overview.md +43 -0
- dreadnode-2.0.17/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/getting-started/quickstart.md +130 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/platform/chat-models.md +2 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/sandboxes/environment-lifecycle.md +3 -3
- dreadnode-2.0.17/dreadnode/builtin_capabilities/dreadnode/skills/getting-started/SKILL.md +161 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/self-improvement/hooks/observer.py +1 -1
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/capabilities/sync.py +50 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/__init__.py +3 -1
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/interaction.py +117 -107
- {dreadnode-2.0.16 → dreadnode-2.0.17}/pyproject.toml +1 -1
- dreadnode-2.0.16/dreadnode/app/tui/screens/sessions.py +0 -652
- dreadnode-2.0.16/dreadnode/app/tui/widgets/permission_prompt.py +0 -155
- dreadnode-2.0.16/dreadnode/app/tui/widgets/welcome.py +0 -107
- dreadnode-2.0.16/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/getting-started/overview.md +0 -32
- dreadnode-2.0.16/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/getting-started/quickstart.md +0 -117
- {dreadnode-2.0.16 → dreadnode-2.0.17}/.gitignore +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/LICENSE +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/README.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/__main__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/agent.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/events.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/exceptions.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/format.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/hooks.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/judge.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/mcp/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/mcp/auth.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/mcp/client.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/mcp/config.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/mcp/server.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/reactions.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/skills.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/stopping.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/subagent.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/tool_resolution.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/tools.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/agents/trajectory.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/adversarial_reasoning.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/advpromptier.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/alignment_faking.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/analogy_escalation.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/analytics/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/analytics/aggregator.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/analytics/classifier.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/analytics/compliance.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/analytics/engine.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/analytics/recommendations.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/analytics/types.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/aprt_progressive.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/assessment.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/attention_shifting.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/autodan_turbo.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/autoredteamer.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/beast.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/compliance/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/compliance/atlas.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/compliance/nist.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/compliance/owasp.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/compliance/owasp_agentic.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/compliance/saif.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/constants.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/cot_jailbreak.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/crescendo.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/assets/audio/adversarial_query.mp3 +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/assets/image/bomb.jpg +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/assets/image/meth.png +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/prompts/adversarial_benchmark_subset.csv +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/prompts/ai_safety.csv +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/rubrics/data_exfiltration.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/rubrics/goal_hijacking.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/rubrics/memory_poisoning.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/rubrics/privilege_escalation.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/rubrics/rce.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/rubrics/scope_creep.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/rubrics/tool_chaining.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/rubrics/tool_selection_safety.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/rubrics/unbounded_agency.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/rubrics/web_chatbot_security.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/templates/crescendo/variant_1.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/templates/crescendo/variant_2.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/templates/crescendo/variant_3.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/templates/crescendo/variant_4.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/data/templates/crescendo/variant_5.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/deep_inception.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/drattack.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/echo_chamber.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/events.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/genetic_persona.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/goat.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/goat_v2.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/gptfuzzer.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/humor_bypass.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/image.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/j2_meta.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/jbdistill.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/jbfuzz.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/lrm_autonomous.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/mapf.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/multimodal.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/nexus.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/pair.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/persona_hijack.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/prompt.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/quantization_safety.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/rainbow.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/refusal_aware.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/renellm.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/reporting/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/reporting/json_report.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/reporting/llm_summary.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/reporting/markdown.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/reward_hacking.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/salami_slicing.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/self_persuasion.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/siren.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/tap.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/templatefuzz.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/tmap_trajectory.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/trojail.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/airt/watermark_removal.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/api/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/args.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/templates/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/templates/init/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/templates/init/challenge/Dockerfile +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/templates/init/docker-compose.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/templates/init/provision.sh +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/templates/init/solution.sh +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/templates/init/task-remote.yaml.tmpl +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/templates/init/task.yaml.tmpl +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/templates/init/teardown.sh +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/cli/templates/init/verify.sh +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/client/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/client/interactive.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/client/managed_client.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/client/models.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/client/transports.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/config.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/env.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/main.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/model_catalog.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/paths.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/server/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/server/auth.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/server/capability_manager.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/server/model_resolution.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/server/prompt.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/server/session_hydrator.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/server/session_persistence.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/server/turn_coordinator.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/server/utils.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/server/worker_manager.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/auth_flow.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/command_dispatcher.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/commands.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/connection.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/error_handler.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/model_variants.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/runtime_cache.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/capability_docs.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/connection_error.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/console.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/environments.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/evaluations.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/model_picker.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/models.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/raw_spans.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/runtimes.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/sandboxes.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/secrets.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/services.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/theme_showcase.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/traces.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/screens/workspaces.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/spans_reader.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/theme.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/turn_lifecycle.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/agent_dialog.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/agent_suggester.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/composer.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/context_bar.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/conversation.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/flash.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/header_bar.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/help_panel.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/mention_overlay.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/message_queue.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/new_messages_pill.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/overlay_mixin.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/profile_dialog.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/prompt_info.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/session_sidebar.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/skills_dialog.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/slash_overlay.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/throbber.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/tool.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/tool_progress.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/tools_dialog.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/widgets/whoami.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/app/tui/wire_events.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/MAINTAINING.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/capability.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/SKILL.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/capability-improvement.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/promoting-capabilities.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/INDEX.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/agents.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/dependencies-and-checks.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/env-vars.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/events.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/flags.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/installing.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/manifest.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/mcp-servers.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/overview.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/publishing.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/skills.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/tools.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/workers-reference.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/workers.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/capabilities/writing-skills.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/guides/capability-optimization-loop.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/references/sdk/agents.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/creating-capabilities/runtime-default-capability.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/main.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/overview.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-cli/references/cli/runtime.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/SKILL.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/INDEX.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/capabilities/installing.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/capabilities/overview.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/platform/credits.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/platform/organizations.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/platform/overview.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/platform/projects.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/platform/secrets.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/platform/settings.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/platform/users.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/platform/workspaces.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/runtimes/configuration.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/runtimes/managing.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/runtimes/manifest-reference.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/runtimes/overview.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/runtimes/quickstart.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/runtimes/serve.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/sandboxes/inspecting.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/dreadnode-concepts/references/sandboxes/overview.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/dreadnode/skills/research-capabilities/SKILL.md +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/self-improvement/.gitignore +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/self-improvement/capability.yaml +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/self-improvement/hooks/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/self-improvement/self_improvement_lib/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/self-improvement/self_improvement_lib/classifier.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/self-improvement/self_improvement_lib/reflector_goal.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/self-improvement/self_improvement_lib/skill_io.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/self-improvement/skills-promoted/.gitkeep +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/self-improvement/skills-proposed/.gitkeep +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/self-improvement/tools/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/self-improvement/tools/reflector.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/builtin_capabilities/self-improvement/tools/skill_stats.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/capabilities/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/capabilities/capability.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/capabilities/flags.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/capabilities/loader.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/capabilities/tool_rules.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/capabilities/types.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/capabilities/worker.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/capabilities/worker_runner.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/conditions.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/discovery.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/environment.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/exceptions.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/execution.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/hook.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/judge.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/load.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/log.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/meta/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/meta/config.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/meta/context.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/meta/hydrate.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/meta/introspect.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/metric.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/object.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/scorer.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/serialization.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/stopping.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/task.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/templating.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/transforms.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/types/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/types/audio.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/types/base.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/types/common.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/types/image.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/types/object_3d.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/types/table.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/types/text.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/types/video.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/core/util.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/datasets/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/datasets/dataset.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/datasets/hf.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/datasets/local.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/evaluations/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/evaluations/console.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/evaluations/evaluation.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/evaluations/events.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/evaluations/format.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/evaluations/result.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/evaluations/sample.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/caching.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/chat.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/data.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/exceptions.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/generator/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/generator/base.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/generator/http.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/generator/litellm_.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/generator/transformers_.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/generator/vllm_.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/message.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/models.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/parsing.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/tokenizer/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/tokenizer/base.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/tokenizer/transformers_.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/generators/utils.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/models/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/models/hf.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/models/local.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/models/model.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/adapters/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/adapters/_env_eval.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/adapters/agent.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/adapters/env.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/adapters/runtime.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/adapters/stack.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/api.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/backends/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/backends/base.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/backends/gepa.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/collectors.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/config.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/console.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/events.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/format.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/jobs.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/result.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/sampler.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/sampling.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/search.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/stopping.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/study.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/optimization/trial.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/packaging/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/packaging/loader.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/packaging/manifest.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/packaging/oci.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/packaging/package.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/packaging/task_validation.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/py.typed +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/samplers/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/samplers/boundary.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/samplers/fuzzing.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/samplers/graph.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/samplers/grid.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/samplers/image.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/samplers/mapelites.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/samplers/optuna.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/samplers/random.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/samplers/registry.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/samplers/strategy.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/advanced_jailbreak_detection.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/agent_security.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/agentic.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/agentic_workflow.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/attack_outcome.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/classification.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/consistency.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/contains.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/cosine_sim.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/credentials.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/crucible.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/documentation_security.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/exfiltration_detection.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/format.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/harm.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/ide_security.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/image.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/json.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/judge.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/judge_ensemble.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/length.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/lexical.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/mcp_security.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/memorization.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/multi_agent_security.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/pii.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/prompt_leak.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/readability.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/reasoning_security.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/sentiment.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/similarity.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/structural_detection.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/scorers/supply_chain_detection.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/storage/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/storage/providers.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/storage/session_store.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/storage/storage.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/_ripgrep.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/apply_patch.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/dreadnode_cli.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/editing.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/execute.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/fetch.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/glob.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/grep.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/ls.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/memory.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/read.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/report.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/task.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/think.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/todo.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/trajectory_search.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/web_extract.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/web_search.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tools/write.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tracing/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tracing/constants.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tracing/convert.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tracing/exporter.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tracing/exporters.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tracing/span.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tracing/spans.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/tracing/trace_converter.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/_progress.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/base.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/dpo.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/env_rollouts.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/etl/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/etl/_common.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/etl/rl.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/etl/sft.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/etl/worlds.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/events.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/grpo.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/jobs.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/models.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ppo.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/prime.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/async_trainer.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/config.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/coordinator.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/distributed.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/dpo.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/experience.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/fsdp2_learner.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/inference.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/learner.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/multi_turn.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/ppo.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/reward_model.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/rollout_env.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/rollout_worker.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/sft.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/ray/trainer.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/recipes.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/rewards/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/rewards/aggregator.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/rewards/functions.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/rewards/scorer_bridge.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/rewards/shaping.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/rewards/types.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/rollouts/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/rollouts/adapters.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/rollouts/agent_rollout.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/rollouts/orchestrator.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/rollouts/types.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/rollouts/worlds.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/serving/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/serving/vllm_client.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/sft.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/tinker/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/tinker/config.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/tinker/data.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/tinker/renderer.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/tinker/rl.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/tinker/trainer.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/tinker_sft.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/training/utils.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/__init__.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/advanced_jailbreak.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/adversarial_suffix.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/agent_skill.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/agentic_workflow.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/audio.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/backdoor_finetune.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/browser_agent_attacks.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/cipher.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/competitive_parity.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/constitutional.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/document.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/documentation_poison.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/encoding.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/exfiltration.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/flip_attack.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/guardrail_bypass.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/ide_injection.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/image.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/injection.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/json_tools.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/language.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/logic_bomb.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/mcp_attacks.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/multi_agent_attacks.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/multimodal_attacks.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/persuasion.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/perturbation.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/pii_extraction.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/pythonic_tools.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/rag_poisoning.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/reasoning_attacks.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/refine.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/response_steering.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/structural_exploits.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/stylistic.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/substitution.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/supply_chain.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/swap.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/system_prompt_extraction.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/text.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/video.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/transforms/xml_tools.py +0 -0
- {dreadnode-2.0.16 → dreadnode-2.0.17}/dreadnode/version.py +0 -0
|
@@ -318,6 +318,15 @@ class ApiClient:
|
|
|
318
318
|
response = self.request("GET", "/inference/catalog", params=params)
|
|
319
319
|
return t.cast("list[dict[str, t.Any]]", response.json().get("models", []))
|
|
320
320
|
|
|
321
|
+
def validate_inference_model(self, model_id: str) -> dict[str, t.Any]:
|
|
322
|
+
"""POST /api/v1/inference/validate - Validate a model ID via LiteLLM."""
|
|
323
|
+
response = self.request(
|
|
324
|
+
"POST",
|
|
325
|
+
"/inference/validate",
|
|
326
|
+
json_data={"model_id": model_id},
|
|
327
|
+
)
|
|
328
|
+
return t.cast("dict[str, t.Any]", response.json())
|
|
329
|
+
|
|
321
330
|
def get_user_preferences(self) -> dict[str, t.Any]:
|
|
322
331
|
"""GET /api/v1/user/preferences - Get user's enabled models with status."""
|
|
323
332
|
response = self.request("GET", "/user/preferences")
|
|
@@ -2229,6 +2238,33 @@ class ApiClient:
|
|
|
2229
2238
|
)
|
|
2230
2239
|
return t.cast("dict[str, t.Any]", response.json())
|
|
2231
2240
|
|
|
2241
|
+
def delete_session(
|
|
2242
|
+
self,
|
|
2243
|
+
org: str,
|
|
2244
|
+
workspace: str,
|
|
2245
|
+
session_id: str,
|
|
2246
|
+
) -> bool:
|
|
2247
|
+
"""DELETE /org/{org}/ws/{workspace}/sessions/{id}.
|
|
2248
|
+
|
|
2249
|
+
Returns ``True`` when the platform deleted the row, ``False`` when
|
|
2250
|
+
the session was already absent (404). Other failures raise — a
|
|
2251
|
+
local-only session that was never registered with the platform
|
|
2252
|
+
still 404s here, so the caller can safely treat that as success.
|
|
2253
|
+
"""
|
|
2254
|
+
response = self._request(
|
|
2255
|
+
"DELETE",
|
|
2256
|
+
f"/org/{org}/ws/{workspace}/sessions/{session_id}",
|
|
2257
|
+
)
|
|
2258
|
+
if response.status_code == 404:
|
|
2259
|
+
return False
|
|
2260
|
+
if response.status_code == 401:
|
|
2261
|
+
raise AuthenticationError(self._get_error_message(response))
|
|
2262
|
+
try:
|
|
2263
|
+
response.raise_for_status()
|
|
2264
|
+
except httpx.HTTPStatusError as e:
|
|
2265
|
+
raise RuntimeError(self._get_error_message(response)) from e
|
|
2266
|
+
return True
|
|
2267
|
+
|
|
2232
2268
|
def unarchive_session(
|
|
2233
2269
|
self,
|
|
2234
2270
|
org: str,
|
|
@@ -806,28 +806,59 @@ class HumanPromptOption(BaseModel):
|
|
|
806
806
|
description: str | None = None
|
|
807
807
|
|
|
808
808
|
|
|
809
|
+
class HumanQuestion(BaseModel):
|
|
810
|
+
"""A single question inside a ``HumanPrompt`` bundle."""
|
|
811
|
+
|
|
812
|
+
kind: t.Literal["choice", "input"]
|
|
813
|
+
prompt: str
|
|
814
|
+
header: str | None = None
|
|
815
|
+
options: list[HumanPromptOption] = Field(default_factory=list)
|
|
816
|
+
multiple: bool = False
|
|
817
|
+
custom: bool = True
|
|
818
|
+
|
|
819
|
+
@model_validator(mode="after")
|
|
820
|
+
def _validate_choice_options(self) -> HumanQuestion:
|
|
821
|
+
if self.kind == "choice" and not self.options:
|
|
822
|
+
raise ValueError("choice questions require at least one option")
|
|
823
|
+
return self
|
|
824
|
+
|
|
825
|
+
|
|
809
826
|
class HumanPrompt(BaseModel):
|
|
810
|
-
"""
|
|
827
|
+
"""Bundle of one or more questions sent to a human via ``ask_user``."""
|
|
811
828
|
|
|
812
829
|
request_id: str
|
|
813
|
-
|
|
814
|
-
|
|
815
|
-
|
|
816
|
-
|
|
817
|
-
|
|
818
|
-
|
|
819
|
-
|
|
820
|
-
|
|
821
|
-
|
|
830
|
+
questions: list[HumanQuestion]
|
|
831
|
+
|
|
832
|
+
@model_validator(mode="after")
|
|
833
|
+
def _validate_questions(self) -> HumanPrompt:
|
|
834
|
+
if not self.questions:
|
|
835
|
+
raise ValueError("HumanPrompt requires at least one question")
|
|
836
|
+
return self
|
|
837
|
+
|
|
838
|
+
|
|
839
|
+
class QuestionAnswer(BaseModel):
|
|
840
|
+
"""Answer to a single ``HumanQuestion``."""
|
|
841
|
+
|
|
842
|
+
selected_labels: list[str] = Field(default_factory=list)
|
|
843
|
+
custom_text: str | None = None
|
|
844
|
+
text: str | None = None
|
|
845
|
+
was_custom: bool = False
|
|
822
846
|
|
|
823
847
|
|
|
824
848
|
class HumanInputResponse(BaseModel):
|
|
825
|
-
"""Structured response from a
|
|
849
|
+
"""Structured response from a ``HumanPrompt``."""
|
|
826
850
|
|
|
827
851
|
request_id: str
|
|
828
|
-
action: t.Literal["submit", "cancel"
|
|
829
|
-
|
|
830
|
-
|
|
852
|
+
action: t.Literal["submit", "cancel"]
|
|
853
|
+
answers: list[QuestionAnswer] | None = None
|
|
854
|
+
|
|
855
|
+
@model_validator(mode="after")
|
|
856
|
+
def _validate_action_answers(self) -> HumanInputResponse:
|
|
857
|
+
if self.action == "submit" and self.answers is None:
|
|
858
|
+
raise ValueError("submit responses require answers")
|
|
859
|
+
if self.action == "cancel" and self.answers:
|
|
860
|
+
raise ValueError("cancel responses must not carry answers")
|
|
861
|
+
return self
|
|
831
862
|
|
|
832
863
|
|
|
833
864
|
class ChatRequest(BaseModel):
|