dyff-schema 0.36.5__tar.gz → 0.36.7__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.

Potentially problematic release.


This version of dyff-schema might be problematic. Click here for more details.

Files changed (68) hide show
  1. {dyff_schema-0.36.5/dyff_schema.egg-info → dyff_schema-0.36.7}/PKG-INFO +1 -1
  2. dyff_schema-0.36.7/dyff/schema/_version.py +2 -0
  3. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/commands.py +31 -0
  4. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/platform.py +37 -15
  5. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/requests.py +6 -0
  6. {dyff_schema-0.36.5 → dyff_schema-0.36.7/dyff_schema.egg-info}/PKG-INFO +1 -1
  7. dyff_schema-0.36.5/dyff/schema/_version.py +0 -2
  8. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/.gitignore +0 -0
  9. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/.gitlab-ci.yml +0 -0
  10. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/.idea/dyff-schema.iml +0 -0
  11. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/.licenserc.yaml +0 -0
  12. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/.pre-commit-config.yaml +0 -0
  13. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/.prettierignore +0 -0
  14. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/.secrets.baseline +0 -0
  15. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/CODE_OF_CONDUCT.md +0 -0
  16. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/LICENSE +0 -0
  17. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/NOTICE +0 -0
  18. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/README.md +0 -0
  19. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/__init__.py +0 -0
  20. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/adapters.py +0 -0
  21. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/annotations.py +0 -0
  22. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/base.py +0 -0
  23. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/commands.py +0 -0
  24. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/copydoc.py +0 -0
  25. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/dataset/__init__.py +0 -0
  26. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/dataset/arrow.py +0 -0
  27. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/dataset/binary.py +0 -0
  28. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/dataset/classification.py +0 -0
  29. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/dataset/embedding.py +0 -0
  30. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/dataset/text.py +0 -0
  31. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/dataset/vision.py +0 -0
  32. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/errors.py +0 -0
  33. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/ids.py +0 -0
  34. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/io/__init__.py +0 -0
  35. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/io/vllm.py +0 -0
  36. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/platform.py +0 -0
  37. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/py.typed +0 -0
  38. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/quantity.py +0 -0
  39. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/requests.py +0 -0
  40. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/responses.py +0 -0
  41. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/test.py +0 -0
  42. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/__init__.py +0 -0
  43. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/__init__.py +0 -0
  44. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/adapters.py +0 -0
  45. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/base.py +0 -0
  46. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/dataset/__init__.py +0 -0
  47. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/dataset/arrow.py +0 -0
  48. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/dataset/binary.py +0 -0
  49. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/dataset/classification.py +0 -0
  50. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/dataset/embedding.py +0 -0
  51. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/dataset/text.py +0 -0
  52. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/dataset/vision.py +0 -0
  53. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/io/__init__.py +0 -0
  54. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/io/vllm.py +0 -0
  55. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/oci.py +0 -0
  56. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/responses.py +0 -0
  57. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/test.py +0 -0
  58. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/v0/r1/version.py +0 -0
  59. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff/schema/version.py +0 -0
  60. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff_schema.egg-info/SOURCES.txt +0 -0
  61. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff_schema.egg-info/dependency_links.txt +0 -0
  62. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff_schema.egg-info/requires.txt +0 -0
  63. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/dyff_schema.egg-info/top_level.txt +0 -0
  64. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/makefile +0 -0
  65. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/pyproject.toml +0 -0
  66. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/setup.cfg +0 -0
  67. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/tests/test_adapters.py +0 -0
  68. {dyff_schema-0.36.5 → dyff_schema-0.36.7}/tests/test_import.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dyff-schema
3
- Version: 0.36.5
3
+ Version: 0.36.7
4
4
  Summary: Data models for the Dyff AI auditing platform.
5
5
  Author-email: Digital Safety Research Institute <contact@dsri.org>
6
6
  License: Apache-2.0
@@ -0,0 +1,2 @@
1
+ __version__ = version = "0.36.7"
2
+ __version_tuple__ = version_tuple = (0, 36, 7)
@@ -28,6 +28,7 @@ from .platform import (
28
28
  SchemaVersion,
29
29
  Status,
30
30
  TagNameType,
31
+ Team,
31
32
  body_maxlen,
32
33
  summary_maxlen,
33
34
  title_maxlen,
@@ -48,6 +49,7 @@ class Command(SchemaVersion, DyffSchemaBaseModel):
48
49
 
49
50
  command: Literal[
50
51
  "CreateChallengeTask",
52
+ "CreateChallengeTeam",
51
53
  "CreateEntity",
52
54
  "EditChallengeContent",
53
55
  "EditChallengeTaskRules",
@@ -101,6 +103,31 @@ class CreateChallengeTask(Command):
101
103
  # ----------------------------------------------------------------------------
102
104
 
103
105
 
106
+ class CreateChallengeTeamAttributes(DyffSchemaBaseModel):
107
+ """Attributes for the CreateChallengeTeam command."""
108
+
109
+ team: Team = pydantic.Field(description="The team to create.")
110
+
111
+
112
+ class CreateChallengeTeamData(EntityIdentifier):
113
+ """Payload data for the CreateChallengeTeam command."""
114
+
115
+ attributes: CreateChallengeTeamAttributes = pydantic.Field(
116
+ description="The command attributes"
117
+ )
118
+
119
+
120
+ class CreateChallengeTeam(Command):
121
+ """Create a new team participating in an existing challenge."""
122
+
123
+ command: Literal["CreateChallengeTeam"] = "CreateChallengeTeam"
124
+
125
+ data: CreateChallengeTeamData = pydantic.Field(description="The command data.")
126
+
127
+
128
+ # ----------------------------------------------------------------------------
129
+
130
+
104
131
  class ChallengeContentPagePatch(JsonMergePatchSemantics):
105
132
  """Same properties as ChallengeContentPage.
106
133
 
@@ -516,6 +543,7 @@ class UpdateEntityStatus(Command):
516
543
 
517
544
  DyffCommandType = Union[
518
545
  CreateChallengeTask,
546
+ CreateChallengeTeam,
519
547
  CreateEntity,
520
548
  EditChallengeContent,
521
549
  EditEntityDocumentation,
@@ -537,6 +565,9 @@ __all__ = [
537
565
  "CreateChallengeTask",
538
566
  "CreateChallengeTaskAttributes",
539
567
  "CreateChallengeTaskData",
568
+ "CreateChallengeTeam",
569
+ "CreateChallengeTeamAttributes",
570
+ "CreateChallengeTeamData",
540
571
  "CreateEntity",
541
572
  "DyffCommandType",
542
573
  "EditChallengeContent",
@@ -2487,14 +2487,9 @@ class TeamAffiliation(DyffSchemaBaseModel):
2487
2487
  )
2488
2488
 
2489
2489
 
2490
- class Team(DyffEntity):
2491
- """The members and affiliations of a team that has entered a challenge."""
2492
-
2493
- kind: Literal["Team"] = Entities.Team.value
2490
+ class TeamBase(DyffSchemaBaseModel):
2491
+ """The members and affiliations of a team."""
2494
2492
 
2495
- challenge: str = pydantic.Field(
2496
- description="ID of the Challenge that this Team is participating in"
2497
- )
2498
2493
  members: dict[str, TeamMember] = pydantic.Field(
2499
2494
  description="The members of this team"
2500
2495
  )
@@ -2503,6 +2498,16 @@ class Team(DyffEntity):
2503
2498
  " affiliations by referencing these entries by their keys."
2504
2499
  )
2505
2500
 
2501
+
2502
+ class Team(DyffEntity, TeamBase):
2503
+ """The members and affiliations of a team that has entered a challenge."""
2504
+
2505
+ kind: Literal["Team"] = Entities.Team.value
2506
+
2507
+ challenge: str = pydantic.Field(
2508
+ description="ID of the Challenge that this Team is participating in"
2509
+ )
2510
+
2506
2511
  def dependencies(self) -> list[str]:
2507
2512
  return []
2508
2513
 
@@ -2518,9 +2523,17 @@ class ChallengeTaskExecutionEnvironment(DyffSchemaBaseModel):
2518
2523
  use fewer resources.
2519
2524
  """
2520
2525
 
2521
- cpu: Quantity
2522
- memory: Quantity
2523
- accelerators: dict[str, int]
2526
+ cpu: Quantity = pydantic.Field(
2527
+ description="Number of available CPUs. Uses k8s Quantity notation."
2528
+ )
2529
+ memory: Quantity = pydantic.Field(
2530
+ description="Available memory. Uses k8s Quantity notation."
2531
+ )
2532
+ accelerators: dict[str, int] = pydantic.Field(
2533
+ default_factory=dict,
2534
+ description="Available accelerators; the keys are accelerator types"
2535
+ " and the values are the available count.",
2536
+ )
2524
2537
 
2525
2538
 
2526
2539
  class ChallengeTaskExecutionEnvironmentChoices(DyffSchemaBaseModel):
@@ -2532,8 +2545,10 @@ class ChallengeTaskExecutionEnvironmentChoices(DyffSchemaBaseModel):
2532
2545
  defined in the execution environment.
2533
2546
  """
2534
2547
 
2535
- choices: dict[str, ChallengeTaskExecutionEnvironment]
2536
- default: str
2548
+ choices: dict[str, ChallengeTaskExecutionEnvironment] = pydantic.Field(
2549
+ description="The choices of execution environment.",
2550
+ min_length=1,
2551
+ )
2537
2552
 
2538
2553
 
2539
2554
  class ChallengeTaskSchedule(DyffSchemaBaseModel):
@@ -2571,7 +2586,7 @@ class ChallengeTaskRules(DyffSchemaBaseModel):
2571
2586
  description="The available choices for the execution environment."
2572
2587
  )
2573
2588
  schedule: ChallengeTaskSchedule = pydantic.Field(
2574
- description="The challenge schedule."
2589
+ default_factory=ChallengeTaskSchedule, description="The challenge schedule."
2575
2590
  )
2576
2591
 
2577
2592
 
@@ -2579,7 +2594,8 @@ class ChallengeTaskContent(DyffSchemaBaseModel):
2579
2594
  """The content of a ChallengeTask UI view."."""
2580
2595
 
2581
2596
  page: ChallengeContentPage = pydantic.Field(
2582
- description="The content of the challenge task Web page."
2597
+ default_factory=ChallengeContentPage,
2598
+ description="The content of the challenge task Web page.",
2583
2599
  )
2584
2600
 
2585
2601
 
@@ -2600,7 +2616,8 @@ class ChallengeTaskBase(DyffSchemaBaseModel):
2600
2616
  )
2601
2617
  rules: ChallengeTaskRules = pydantic.Field(description="The rules for submissions.")
2602
2618
  content: ChallengeTaskContent = pydantic.Field(
2603
- description="Content of the task view in the Dyff App."
2619
+ default_factory=ChallengeTaskContent,
2620
+ description="Content of the task view in the Dyff App.",
2604
2621
  )
2605
2622
 
2606
2623
 
@@ -3084,6 +3101,10 @@ __all__ = [
3084
3101
  "ChallengeSubmission",
3085
3102
  "ChallengeTask",
3086
3103
  "ChallengeTaskBase",
3104
+ "ChallengeTaskExecutionEnvironment",
3105
+ "ChallengeTaskExecutionEnvironmentChoices",
3106
+ "ChallengeTaskRules",
3107
+ "ChallengeTaskSchedule",
3087
3108
  "Concern",
3088
3109
  "ConcernBase",
3089
3110
  "Container",
@@ -3206,6 +3227,7 @@ __all__ = [
3206
3227
  "TagNameType",
3207
3228
  "TaskSchema",
3208
3229
  "Team",
3230
+ "TeamBase",
3209
3231
  "TeamMember",
3210
3232
  "TeamAffiliation",
3211
3233
  "UseCase",
@@ -44,6 +44,7 @@ from .platform import (
44
44
  ModuleBase,
45
45
  ReportBase,
46
46
  TagNameType,
47
+ TeamBase,
47
48
  summary_maxlen,
48
49
  title_maxlen,
49
50
  )
@@ -151,6 +152,10 @@ class ChallengeTaskCreateRequest(DyffEntityCreateRequest, ChallengeTaskBase):
151
152
  pass
152
153
 
153
154
 
155
+ class ChallengeTeamCreateRequest(DyffEntityCreateRequest, TeamBase):
156
+ pass
157
+
158
+
154
159
  class ConcernCreateRequest(DyffEntityCreateRequest, ConcernBase):
155
160
  @pydantic.field_validator("documentation", check_fields=False)
156
161
  def _validate_documentation(
@@ -493,6 +498,7 @@ __all__ = [
493
498
  "ChallengeContentEditRequest",
494
499
  "ChallengeCreateRequest",
495
500
  "ChallengeTaskCreateRequest",
501
+ "ChallengeTeamCreateRequest",
496
502
  "ConcernCreateRequest",
497
503
  "DyffEntityCreateRequest",
498
504
  "DyffEntityQueryRequest",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dyff-schema
3
- Version: 0.36.5
3
+ Version: 0.36.7
4
4
  Summary: Data models for the Dyff AI auditing platform.
5
5
  Author-email: Digital Safety Research Institute <contact@dsri.org>
6
6
  License: Apache-2.0
@@ -1,2 +0,0 @@
1
- __version__ = version = "0.36.5"
2
- __version_tuple__ = version_tuple = (0, 36, 5)
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes