hawk 2.0.0__py3-none-any.whl
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.
- hawk/__init__.py +29 -0
- hawk/__main__.py +4 -0
- hawk/api/EvalSetConfig.schema.json +1216 -0
- hawk/api/ScanConfig.schema.json +1023 -0
- hawk/api/__init__.py +0 -0
- hawk/api/auth/__init__.py +0 -0
- hawk/api/auth/access_token.py +159 -0
- hawk/api/auth/job_auth.py +71 -0
- hawk/api/auth/middleman_client.py +90 -0
- hawk/api/auth/permission_checker.py +89 -0
- hawk/api/auth/read_only.py +82 -0
- hawk/api/auth/s3_files.py +177 -0
- hawk/api/auth_router.py +365 -0
- hawk/api/cors_middleware.py +32 -0
- hawk/api/datadog.py +55 -0
- hawk/api/datadog_monitors.py +134 -0
- hawk/api/eval_log_server.py +63 -0
- hawk/api/eval_set_server.py +501 -0
- hawk/api/health.py +180 -0
- hawk/api/helm_chart/Chart.yaml +5 -0
- hawk/api/helm_chart/templates/config_map.yaml +34 -0
- hawk/api/helm_chart/templates/job.yaml +201 -0
- hawk/api/helm_chart/templates/namespace.yaml +37 -0
- hawk/api/helm_chart/templates/network_policy.yaml +60 -0
- hawk/api/helm_chart/templates/secret.yaml +22 -0
- hawk/api/helm_chart/templates/service_account.yaml +42 -0
- hawk/api/human_eval_server.py +379 -0
- hawk/api/human_server.py +304 -0
- hawk/api/import_server.py +564 -0
- hawk/api/jumphost.py +156 -0
- hawk/api/meta_server.py +1589 -0
- hawk/api/monitoring_server.py +1109 -0
- hawk/api/otel.py +30 -0
- hawk/api/presigned_urls.py +29 -0
- hawk/api/problem.py +177 -0
- hawk/api/run.py +416 -0
- hawk/api/sample_content_router.py +326 -0
- hawk/api/sample_edit_router.py +332 -0
- hawk/api/scan_server.py +571 -0
- hawk/api/scan_view_server.py +420 -0
- hawk/api/server.py +306 -0
- hawk/api/server_policies.py +70 -0
- hawk/api/settings.py +234 -0
- hawk/api/state.py +255 -0
- hawk/api/timeline.py +320 -0
- hawk/api/util/aiohttp_to_starlette.py +46 -0
- hawk/api/util/namespace.py +28 -0
- hawk/api/util/validation.py +315 -0
- hawk/api/yaml_safety.py +71 -0
- hawk/cli/__init__.py +0 -0
- hawk/cli/cli.py +2206 -0
- hawk/cli/config.py +264 -0
- hawk/cli/delete.py +22 -0
- hawk/cli/download.py +113 -0
- hawk/cli/download_artifacts.py +242 -0
- hawk/cli/edit_samples.py +32 -0
- hawk/cli/eval_set.py +57 -0
- hawk/cli/human.py +89 -0
- hawk/cli/human_eval.py +191 -0
- hawk/cli/import_cmd.py +182 -0
- hawk/cli/list.py +161 -0
- hawk/cli/local.py +327 -0
- hawk/cli/login.py +87 -0
- hawk/cli/middleman.py +93 -0
- hawk/cli/models.py +56 -0
- hawk/cli/monitoring.py +367 -0
- hawk/cli/scan.py +98 -0
- hawk/cli/seed/__init__.py +0 -0
- hawk/cli/seed/constants.py +296 -0
- hawk/cli/seed/eval_log.py +423 -0
- hawk/cli/seed/seeder.py +165 -0
- hawk/cli/stacktrace.py +66 -0
- hawk/cli/stop.py +32 -0
- hawk/cli/tokens.py +62 -0
- hawk/cli/trace.py +424 -0
- hawk/cli/transcript.py +501 -0
- hawk/cli/util/api.py +544 -0
- hawk/cli/util/auth.py +492 -0
- hawk/cli/util/model.py +200 -0
- hawk/cli/util/responses.py +36 -0
- hawk/cli/util/secrets.py +164 -0
- hawk/cli/util/table.py +48 -0
- hawk/cli/util/trace.py +30 -0
- hawk/cli/util/types.py +129 -0
- hawk/cli/util/version_check.py +96 -0
- hawk/cli/watch.py +265 -0
- hawk/core/__init__.py +0 -0
- hawk/core/auth/__init__.py +5 -0
- hawk/core/auth/auth_context.py +17 -0
- hawk/core/auth/jwt_validator.py +148 -0
- hawk/core/auth/model_file.py +57 -0
- hawk/core/auth/permissions.py +111 -0
- hawk/core/aws_secret_arns.py +25 -0
- hawk/core/constants.py +9 -0
- hawk/core/db/__init__.py +0 -0
- hawk/core/db/alembic/env.py +83 -0
- hawk/core/db/alembic/script.py.mako +26 -0
- hawk/core/db/alembic/versions/0844cd8afa68_score_unique.py +31 -0
- hawk/core/db/alembic/versions/0a15eda2d9f5_token_counts_input.py +78 -0
- hawk/core/db/alembic/versions/1bec8cf5d1cf_add_cost_limit_tracking.py +30 -0
- hawk/core/db/alembic/versions/20260517_add_sample_attachment.py +106 -0
- hawk/core/db/alembic/versions/29d00d0f0dc2_add_label_to_scanner_result_unique_.py +44 -0
- hawk/core/db/alembic/versions/40285195f664_merge_heads.py +23 -0
- hawk/core/db/alembic/versions/549e90e5525c_add_sample_event_table.py +548 -0
- hawk/core/db/alembic/versions/5d72524d723a_init.py +374 -0
- hawk/core/db/alembic/versions/65dbc6ab948e_merge_branch_anchor_events_with_human_.py +23 -0
- hawk/core/db/alembic/versions/6c0a6ce96105_add_sample_started_completed_timestamps.py +32 -0
- hawk/core/db/alembic/versions/70562d043fe1_add_job_table.py +110 -0
- hawk/core/db/alembic/versions/7161087c5d94_cascade_deletes_on_middleman_model_.py +89 -0
- hawk/core/db/alembic/versions/73b04dca7c10_merge_heads_cascade_deletes_enable_rls.py +23 -0
- hawk/core/db/alembic/versions/77cdf99dcd0d_add_pg_trgm_indexes.py +60 -0
- hawk/core/db/alembic/versions/7f3caddc67ed_add_branch_and_anchor_event_columns.py +34 -0
- hawk/core/db/alembic/versions/86cfe97fc6d6_grant_rls_function_execute.py +78 -0
- hawk/core/db/alembic/versions/88abdab61a5d_sample_last_imported.py +48 -0
- hawk/core/db/alembic/versions/8b4908438916_merge_cost_limit_tracking_and_human_.py +23 -0
- hawk/core/db/alembic/versions/8c6950acaca1_merge_migration_heads.py +23 -0
- hawk/core/db/alembic/versions/9236fa4b5bb2_eval_set_id.py +53 -0
- hawk/core/db/alembic/versions/9a8a68ffa612_add_sample_invalidation_fields.py +59 -0
- hawk/core/db/alembic/versions/a1b2c3d4e5f6_rename_sample_ids.py +39 -0
- hawk/core/db/alembic/versions/a1b2c3d4e5f7_add_model_to_scan.py +55 -0
- hawk/core/db/alembic/versions/a1b2c3d4e5f9_memoize_rls_access_checks.py +342 -0
- hawk/core/db/alembic/versions/a2b3c4d5e6f7_add_sample_id_btree_index.py +33 -0
- hawk/core/db/alembic/versions/a3b4c5d6e7f8_add_fulltext_search_tsv.py +151 -0
- hawk/core/db/alembic/versions/a7b8c9d0e1f2_scan_model_groups_unresolved_sentinel.py +95 -0
- hawk/core/db/alembic/versions/a7c9d2e4f6b8_add_model_roles_tables.py +73 -0
- hawk/core/db/alembic/versions/b2c3d4e5f6a0_revert_rls_memoization.py +276 -0
- hawk/core/db/alembic/versions/b2c3d4e5f6a8_add_sample_search_text.py +80 -0
- hawk/core/db/alembic/versions/b4c5d6e7f8a9_cap_search_tsv_jsonb_columns.py +57 -0
- hawk/core/db/alembic/versions/c1d2e3f4a5b6_add_model_group_mapping.py +158 -0
- hawk/core/db/alembic/versions/c3d4e5f6a7b9_token_limit_bigint.py +50 -0
- hawk/core/db/alembic/versions/c4d5e6f7a8b9_denormalize_model_groups.py +223 -0
- hawk/core/db/alembic/versions/c5d6e7f8a9b0_add_sample_search_indexes.py +92 -0
- hawk/core/db/alembic/versions/c8b3a2e1f4d5_add_completed_at_eval_pk_index.py +34 -0
- hawk/core/db/alembic/versions/c8d1e2f3a4b5_job_type_enum_to_hyphen.py +32 -0
- hawk/core/db/alembic/versions/ccfec570758e_merge_heads.py +23 -0
- hawk/core/db/alembic/versions/cd456ad85d24_scored_at.py +23 -0
- hawk/core/db/alembic/versions/d1e2f3a4b5c6_add_parallel_query_indexes.py +55 -0
- hawk/core/db/alembic/versions/d2e3f4a5b6c7_add_rls_infrastructure.py +350 -0
- hawk/core/db/alembic/versions/d5e6f7a8b9c0_add_gin_index_on_eval_model_groups.py +29 -0
- hawk/core/db/alembic/versions/d6e7f8a9b0c1_search_all_websearch_tsquery.py +47 -0
- hawk/core/db/alembic/versions/d9e0f1a2b3c4_merge_unresolved_sentinel_and_completed_at_index.py +23 -0
- hawk/core/db/alembic/versions/e2f3a4b5c6d7_add_score_scored_at.py +33 -0
- hawk/core/db/alembic/versions/e3f4a5b6c7d8_enable_rls.py +44 -0
- hawk/core/db/alembic/versions/e6f7a8b9c0d1_denormalize_scan_model_groups.py +200 -0
- hawk/core/db/alembic/versions/e7f8a9b0c1d2_search_all_recency_sort.py +62 -0
- hawk/core/db/alembic/versions/e9a523a87aeb_add_human_table.py +50 -0
- hawk/core/db/alembic/versions/e9f1a2b3c4d5_add_model_role_type.py +36 -0
- hawk/core/db/alembic/versions/ecf5fbecb879_add_human_eval_assignment_table.py +77 -0
- hawk/core/db/alembic/versions/f3a4b5c6d7e8_add_score_model_usage.py +37 -0
- hawk/core/db/alembic/versions/f8a9b0c1d2e3_search_all_scope_pushdown.py +54 -0
- hawk/core/db/alembic/versions/fb819443bf37_rm_is_complete.py +39 -0
- hawk/core/db/alembic/versions/fdee9bee9bf8_scans.py +251 -0
- hawk/core/db/backfill_search_tsv.py +177 -0
- hawk/core/db/connection.py +231 -0
- hawk/core/db/functions.py +1135 -0
- hawk/core/db/job_writes.py +60 -0
- hawk/core/db/models.py +1431 -0
- hawk/core/db/parallel.py +121 -0
- hawk/core/db/serialization.py +73 -0
- hawk/core/db/upsert.py +99 -0
- hawk/core/dependencies.py +184 -0
- hawk/core/envsubst.py +51 -0
- hawk/core/eval_header.py +95 -0
- hawk/core/exceptions.py +52 -0
- hawk/core/importer/__init__.py +0 -0
- hawk/core/importer/eval/__init__.py +1 -0
- hawk/core/importer/eval/attachment_resolver.py +41 -0
- hawk/core/importer/eval/converter.py +926 -0
- hawk/core/importer/eval/externalization.py +144 -0
- hawk/core/importer/eval/importer.py +145 -0
- hawk/core/importer/eval/models.py +23 -0
- hawk/core/importer/eval/records.py +288 -0
- hawk/core/importer/eval/utils.py +101 -0
- hawk/core/importer/eval/writer/__init__.py +4 -0
- hawk/core/importer/eval/writer/postgres.py +824 -0
- hawk/core/importer/eval/writers.py +141 -0
- hawk/core/importer/scan/__init__.py +0 -0
- hawk/core/importer/scan/importer.py +96 -0
- hawk/core/importer/scan/writer/__init__.py +6 -0
- hawk/core/importer/scan/writer/postgres.py +362 -0
- hawk/core/importer/writer.py +64 -0
- hawk/core/logging.py +86 -0
- hawk/core/model_access.py +25 -0
- hawk/core/monitoring/__init__.py +13 -0
- hawk/core/monitoring/base.py +115 -0
- hawk/core/monitoring/eval_status.py +447 -0
- hawk/core/monitoring/kubernetes.py +1057 -0
- hawk/core/providers.py +369 -0
- hawk/core/run_in_venv.py +45 -0
- hawk/core/sanitize.py +148 -0
- hawk/core/scan_export.py +118 -0
- hawk/core/search/__init__.py +25 -0
- hawk/core/search/backend.py +36 -0
- hawk/core/search/postgres.py +623 -0
- hawk/core/search/service.py +41 -0
- hawk/core/search/types.py +129 -0
- hawk/core/shell.py +147 -0
- hawk/core/sse.py +64 -0
- hawk/core/tracing.py +297 -0
- hawk/core/types/__init__.py +185 -0
- hawk/core/types/__main__.py +38 -0
- hawk/core/types/artifacts.py +56 -0
- hawk/core/types/base.py +426 -0
- hawk/core/types/client_config.py +33 -0
- hawk/core/types/evals.py +392 -0
- hawk/core/types/monitoring.py +326 -0
- hawk/core/types/sample_edit.py +118 -0
- hawk/core/types/scans.py +287 -0
- hawk/core/version.py +110 -0
- hawk/e2e/__init__.py +0 -0
- hawk/e2e/task.py +25 -0
- hawk/janitor/__init__.py +0 -0
- hawk/janitor/__main__.py +233 -0
- hawk/py.typed +0 -0
- hawk/runner/__init__.py +0 -0
- hawk/runner/common.py +197 -0
- hawk/runner/credential_helper.py +407 -0
- hawk/runner/datadog_dashboard.json +225 -0
- hawk/runner/datadog_metrics.py +123 -0
- hawk/runner/entrypoint.py +267 -0
- hawk/runner/memory_monitor.py +635 -0
- hawk/runner/oauth_errors.py +31 -0
- hawk/runner/observability_headers.py +100 -0
- hawk/runner/oom_diagnostics.py +531 -0
- hawk/runner/otel_tracing.py +694 -0
- hawk/runner/process_tree.py +119 -0
- hawk/runner/ptrace.py +65 -0
- hawk/runner/refresh_token.py +204 -0
- hawk/runner/refresh_token_override.py +33 -0
- hawk/runner/run_eval_set.py +975 -0
- hawk/runner/run_scan.py +404 -0
- hawk/runner/run_scan_resume.py +100 -0
- hawk/runner/secrets.py +241 -0
- hawk/runner/set_memory_high.py +108 -0
- hawk/runner/stop_monitor.py +321 -0
- hawk/runner/stuck_eval_monitor.py +222 -0
- hawk/tools/__init__.py +0 -0
- hawk/tools/sync_models.py +170 -0
- hawk-2.0.0.dist-info/METADATA +157 -0
- hawk-2.0.0.dist-info/RECORD +242 -0
- hawk-2.0.0.dist-info/WHEEL +4 -0
- hawk-2.0.0.dist-info/entry_points.txt +5 -0
hawk/__init__.py
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"""Hawk — platform for running AI agent evaluations.
|
|
2
|
+
|
|
3
|
+
Exposes the standard ``hawk.__version__`` (SemVer string, e.g. ``2.0.0``) and a
|
|
4
|
+
structured ``hawk.__version_info__`` (release tuple, e.g. ``(2, 0, 0)``),
|
|
5
|
+
resolved lazily via :pep:`562` so importing a submodule doesn't pay for a
|
|
6
|
+
package-metadata lookup.
|
|
7
|
+
"""
|
|
8
|
+
|
|
9
|
+
from __future__ import annotations
|
|
10
|
+
|
|
11
|
+
from typing import TYPE_CHECKING
|
|
12
|
+
|
|
13
|
+
if TYPE_CHECKING:
|
|
14
|
+
__version__: str
|
|
15
|
+
__version_info__: tuple[int, ...]
|
|
16
|
+
|
|
17
|
+
__all__ = ["__version__", "__version_info__"]
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
def __getattr__(name: str) -> object:
|
|
21
|
+
if name == "__version__":
|
|
22
|
+
import hawk.core.version
|
|
23
|
+
|
|
24
|
+
return hawk.core.version.get_version()
|
|
25
|
+
if name == "__version_info__":
|
|
26
|
+
import hawk.core.version
|
|
27
|
+
|
|
28
|
+
return hawk.core.version.version_tuple()
|
|
29
|
+
raise AttributeError(f"module {__name__!r} has no attribute {name!r}")
|
hawk/__main__.py
ADDED