homeassistant-stubs 2025.2.0b12__py3-none-any.whl → 2025.2.1__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.
@@ -2,6 +2,9 @@ from .const import AssistSatelliteEntityFeature as AssistSatelliteEntityFeature,
2
2
  from _typeshed import Incomplete
3
3
  from homeassistant.core import HomeAssistant as HomeAssistant
4
4
  from homeassistant.helpers import intent as intent
5
+ from typing import Final
6
+
7
+ EXCLUDED_DOMAINS: Final[set[str]]
5
8
 
6
9
  async def async_setup_intents(hass: HomeAssistant) -> None: ...
7
10
 
@@ -9,3 +9,4 @@ PLATFORMS: list[Platform]
9
9
 
10
10
  async def async_setup_entry(hass: HomeAssistant, entry: ElectricKiwiConfigEntry) -> bool: ...
11
11
  async def async_unload_entry(hass: HomeAssistant, entry: ElectricKiwiConfigEntry) -> bool: ...
12
+ async def async_migrate_entry(hass: HomeAssistant, config_entry: ElectricKiwiConfigEntry) -> bool: ...
@@ -2,9 +2,15 @@ from .const import API_BASE_URL as API_BASE_URL
2
2
  from _typeshed import Incomplete
3
3
  from aiohttp import ClientSession as ClientSession
4
4
  from electrickiwi_api import AbstractAuth
5
- from homeassistant.helpers import config_entry_oauth2_flow as config_entry_oauth2_flow
5
+ from homeassistant.core import HomeAssistant as HomeAssistant
6
+ from homeassistant.helpers import aiohttp_client as aiohttp_client, config_entry_oauth2_flow as config_entry_oauth2_flow
6
7
 
7
- class AsyncConfigEntryAuth(AbstractAuth):
8
+ class ConfigEntryElectricKiwiAuth(AbstractAuth):
8
9
  _oauth_session: Incomplete
9
10
  def __init__(self, websession: ClientSession, oauth_session: config_entry_oauth2_flow.OAuth2Session) -> None: ...
10
11
  async def async_get_access_token(self) -> str: ...
12
+
13
+ class ConfigFlowElectricKiwiAuth(AbstractAuth):
14
+ _token: Incomplete
15
+ def __init__(self, hass: HomeAssistant, token: str) -> None: ...
16
+ async def async_get_access_token(self) -> str: ...
@@ -1,11 +1,15 @@
1
1
  import logging
2
+ from . import api as api
2
3
  from .const import DOMAIN as DOMAIN, SCOPE_VALUES as SCOPE_VALUES
3
4
  from collections.abc import Mapping
4
- from homeassistant.config_entries import ConfigFlowResult as ConfigFlowResult
5
+ from homeassistant.config_entries import ConfigFlowResult as ConfigFlowResult, SOURCE_REAUTH as SOURCE_REAUTH
6
+ from homeassistant.const import CONF_NAME as CONF_NAME
5
7
  from homeassistant.helpers import config_entry_oauth2_flow as config_entry_oauth2_flow
6
8
  from typing import Any
7
9
 
8
10
  class ElectricKiwiOauth2FlowHandler(config_entry_oauth2_flow.AbstractOAuth2FlowHandler, domain=DOMAIN):
11
+ VERSION: int
12
+ MINOR_VERSION: int
9
13
  DOMAIN = DOMAIN
10
14
  @property
11
15
  def logger(self) -> logging.Logger: ...
@@ -1,7 +1,7 @@
1
1
  from _typeshed import Incomplete
2
2
  from dataclasses import dataclass
3
3
  from electrickiwi_api import ElectricKiwiApi as ElectricKiwiApi
4
- from electrickiwi_api.model import AccountBalance, Hop, HopIntervals as HopIntervals
4
+ from electrickiwi_api.model import AccountSummary, Hop, HopIntervals as HopIntervals
5
5
  from homeassistant.config_entries import ConfigEntry as ConfigEntry
6
6
  from homeassistant.core import HomeAssistant as HomeAssistant
7
7
  from homeassistant.exceptions import ConfigEntryAuthFailed as ConfigEntryAuthFailed
@@ -17,13 +17,13 @@ class ElectricKiwiRuntimeData:
17
17
  account: ElectricKiwiAccountDataCoordinator
18
18
  type ElectricKiwiConfigEntry = ConfigEntry[ElectricKiwiRuntimeData]
19
19
 
20
- class ElectricKiwiAccountDataCoordinator(DataUpdateCoordinator[AccountBalance]):
21
- _ek_api: Incomplete
20
+ class ElectricKiwiAccountDataCoordinator(DataUpdateCoordinator[AccountSummary]):
21
+ ek_api: Incomplete
22
22
  def __init__(self, hass: HomeAssistant, entry: ElectricKiwiConfigEntry, ek_api: ElectricKiwiApi) -> None: ...
23
- async def _async_update_data(self) -> AccountBalance: ...
23
+ async def _async_update_data(self) -> AccountSummary: ...
24
24
 
25
25
  class ElectricKiwiHOPDataCoordinator(DataUpdateCoordinator[Hop]):
26
- _ek_api: Incomplete
26
+ ek_api: Incomplete
27
27
  hop_intervals: HopIntervals | None
28
28
  def __init__(self, hass: HomeAssistant, entry: ElectricKiwiConfigEntry, ek_api: ElectricKiwiApi) -> None: ...
29
29
  def get_hop_options(self) -> dict[str, int]: ...
@@ -4,7 +4,7 @@ from _typeshed import Incomplete
4
4
  from collections.abc import Callable as Callable
5
5
  from dataclasses import dataclass
6
6
  from datetime import datetime
7
- from electrickiwi_api.model import AccountBalance as AccountBalance, Hop as Hop
7
+ from electrickiwi_api.model import AccountSummary as AccountSummary, Hop as Hop
8
8
  from homeassistant.components.sensor import SensorDeviceClass as SensorDeviceClass, SensorEntity as SensorEntity, SensorEntityDescription as SensorEntityDescription, SensorStateClass as SensorStateClass
9
9
  from homeassistant.const import CURRENCY_DOLLAR as CURRENCY_DOLLAR, PERCENTAGE as PERCENTAGE
10
10
  from homeassistant.core import HomeAssistant as HomeAssistant
@@ -20,7 +20,9 @@ ATTR_HOP_PERCENTAGE: str
20
20
 
21
21
  @dataclass(frozen=True, kw_only=True)
22
22
  class ElectricKiwiAccountSensorEntityDescription(SensorEntityDescription):
23
- value_func: Callable[[AccountBalance], float | datetime]
23
+ value_func: Callable[[AccountSummary], float | datetime]
24
+
25
+ def _get_hop_percentage(account_balance: AccountSummary) -> float: ...
24
26
 
25
27
  ACCOUNT_SENSOR_TYPES: tuple[ElectricKiwiAccountSensorEntityDescription, ...]
26
28
 
@@ -24,3 +24,4 @@ async def async_unload_entry(hass: HomeAssistant, entry: OneDriveConfigEntry) ->
24
24
  def _async_notify_backup_listeners(hass: HomeAssistant) -> None: ...
25
25
  @callback
26
26
  def _async_notify_backup_listeners_soon(hass: HomeAssistant) -> None: ...
27
+ async def _migrate_backup_files(client: OneDriveClient, backup_folder_id: str) -> None: ...
@@ -11,6 +11,7 @@ from typing import Any, Concatenate
11
11
  _LOGGER: Incomplete
12
12
  UPLOAD_CHUNK_SIZE: Incomplete
13
13
  TIMEOUT: Incomplete
14
+ METADATA_VERSION: int
14
15
 
15
16
  async def async_get_backup_agents(hass: HomeAssistant) -> list[BackupAgent]: ...
16
17
  @callback
@@ -37,5 +38,5 @@ class OneDriveBackupAgent(BackupAgent):
37
38
  async def async_list_backups(self, **kwargs: Any) -> list[AgentBackup]: ...
38
39
  @handle_backup_errors
39
40
  async def async_get_backup(self, backup_id: str, **kwargs: Any) -> AgentBackup | None: ...
40
- def _backup_from_description(self, description: str) -> AgentBackup: ...
41
41
  async def _find_item_by_backup_id(self, backup_id: str) -> File | Folder | None: ...
42
+ async def _download_backup_metadata(self, item_id: str) -> AgentBackup: ...
@@ -45,6 +45,12 @@ class RpcBluTrvNumber(RpcNumber):
45
45
  def __init__(self, coordinator: ShellyRpcCoordinator, key: str, attribute: str, description: RpcNumberDescription) -> None: ...
46
46
  async def async_set_native_value(self, value: float) -> None: ...
47
47
 
48
+ class RpcBluTrvExtTempNumber(RpcBluTrvNumber):
49
+ _reported_value: float | None
50
+ @property
51
+ def native_value(self) -> float | None: ...
52
+ async def async_set_native_value(self, value: float) -> None: ...
53
+
48
54
  NUMBERS: dict[tuple[str, str], BlockNumberDescription]
49
55
  RPC_NUMBERS: Final[Incomplete]
50
56
 
@@ -5,7 +5,7 @@ from .json import json_dumps as json_dumps
5
5
  from _typeshed import Incomplete
6
6
  from aiohttp import web
7
7
  from aiohttp.typedefs import JSONDecoder as JSONDecoder
8
- from aiohttp_asyncmdnsresolver.api import AsyncMDNSResolver
8
+ from aiohttp_asyncmdnsresolver.api import AsyncDualMDNSResolver
9
9
  from collections.abc import Awaitable, Callable as Callable
10
10
  from homeassistant import config_entries as config_entries
11
11
  from homeassistant.components import zeroconf as zeroconf
@@ -60,4 +60,4 @@ class HomeAssistantTCPConnector(aiohttp.TCPConnector):
60
60
  @callback
61
61
  def _async_get_connector(hass: HomeAssistant, verify_ssl: bool = True, family: socket.AddressFamily = ..., ssl_cipher: ssl_util.SSLCipherList = ...) -> aiohttp.BaseConnector: ...
62
62
  @callback
63
- def _async_make_resolver(hass: HomeAssistant) -> AsyncMDNSResolver: ...
63
+ def _async_make_resolver(hass: HomeAssistant) -> AsyncDualMDNSResolver: ...
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: homeassistant-stubs
3
- Version: 2025.2.0b12
3
+ Version: 2025.2.1
4
4
  Summary: PEP 484 typing stubs for Home Assistant Core
5
5
  Project-URL: Homepage, https://github.com/KapJI/homeassistant-stubs
6
6
  Project-URL: Bug Tracker, https://github.com/KapJI/homeassistant-stubs/issues
@@ -18,7 +18,7 @@ Classifier: Topic :: Home Automation
18
18
  Classifier: Topic :: Software Development
19
19
  Classifier: Typing :: Typed
20
20
  Requires-Python: <3.14,>=3.13
21
- Requires-Dist: homeassistant==2025.2.0b12
21
+ Requires-Dist: homeassistant==2025.2.1
22
22
  Description-Content-Type: text/markdown
23
23
 
24
24
  [![CI](https://github.com/KapJI/homeassistant-stubs/actions/workflows/ci.yaml/badge.svg)](https://github.com/KapJI/homeassistant-stubs/actions/workflows/ci.yaml)
@@ -363,7 +363,7 @@ homeassistant-stubs/components/assist_satellite/connection_test.pyi,sha256=n6GR9
363
363
  homeassistant-stubs/components/assist_satellite/const.pyi,sha256=zxePYfB_Dl-090bOIkxzuwWVk_hdM7xNfaD7cM6V8FQ,476
364
364
  homeassistant-stubs/components/assist_satellite/entity.pyi,sha256=uxHFkBzqB6lnjn4xYeaIF5c0pM3nTWTpgim3VOlLPX0,4607
365
365
  homeassistant-stubs/components/assist_satellite/errors.pyi,sha256=roq9cFMrbiJ4-OGqUVmD3SzW88R3CedlPADk_JX5MIU,183
366
- homeassistant-stubs/components/assist_satellite/intent.pyi,sha256=4-2OhqoBiHDXJj_DKXzSzrGHOSFvkYrFYakOwVS_FHc,561
366
+ homeassistant-stubs/components/assist_satellite/intent.pyi,sha256=HTbQZnSD7MC-tG_SovCLcymYfUW9q3JuDiRXpyR_K_w,621
367
367
  homeassistant-stubs/components/assist_satellite/websocket_api.pyi,sha256=C8uU0dRDbbnTrONT0zj27OrLs0h4oJ7n2f9lXkYhnEc,1362
368
368
  homeassistant-stubs/components/asuswrt/__init__.pyi,sha256=kqTxaQbRWiEJDZsT-JbwWPDFMtDTu0-uqVKa8YYxL_g,680
369
369
  homeassistant-stubs/components/asuswrt/bridge.pyi,sha256=9wrn95CGxJHil1OwpJtxwHwzL42mKq9oeWwrWDU_t7I,5519
@@ -928,15 +928,15 @@ homeassistant-stubs/components/electrasmart/__init__.pyi,sha256=Ihs3IF0cNVlrf4Ww
928
928
  homeassistant-stubs/components/electrasmart/climate.pyi,sha256=JFXHcb43FfvbJMn7G-v-tXnWScYrSU6gZi_NnmVqiQo,3272
929
929
  homeassistant-stubs/components/electrasmart/config_flow.pyi,sha256=WIr2iCfHWH7m9uI0ocMxRpUFYKY9VoDnzaV0mX01gTI,1488
930
930
  homeassistant-stubs/components/electrasmart/const.pyi,sha256=XdqHbZAjMTDTAr3l1nuD70kEKXKbHLow0J5imEBNV4g,201
931
- homeassistant-stubs/components/electric_kiwi/__init__.pyi,sha256=r6PU7lYvL634pQtQ81AfvM54f-MC171r0Iam65bQE0Y,874
932
- homeassistant-stubs/components/electric_kiwi/api.pyi,sha256=HaXgcRvAIpZplXCwQjhTPKASQR2cnG612nRTY0NUry4,508
931
+ homeassistant-stubs/components/electric_kiwi/__init__.pyi,sha256=_fZJhgw2ACJCpdL5ZXZi82UKgrSNwC6T9rExnq0o-rw,977
932
+ homeassistant-stubs/components/electric_kiwi/api.pyi,sha256=2CEraSoHgkK3Yz65cXbo7oC9dGfjwD1Syj4H8vzpdls,807
933
933
  homeassistant-stubs/components/electric_kiwi/application_credentials.pyi,sha256=mlbJhHlpo-3wVCJd_Uzj43WzNfey6hQVcYTmlcLZDm4,827
934
- homeassistant-stubs/components/electric_kiwi/config_flow.pyi,sha256=Dx_65YCMDAozJViiYlnhpPHGZv9zSKkhGGAxqMlZ08U,849
934
+ homeassistant-stubs/components/electric_kiwi/config_flow.pyi,sha256=7LsOo1QeqcyFpVybqH31iAemC5RsoCWHbiJO3nfgpX4,1001
935
935
  homeassistant-stubs/components/electric_kiwi/const.pyi,sha256=a71L52FmjCV0nsHgCn6Ie1dQk7AdMyPxW2KUQdSdG48,115
936
- homeassistant-stubs/components/electric_kiwi/coordinator.pyi,sha256=jm0ApuxVj58vfB9T-Q14rupAzk_rKtuPDZzhNadYnKk,1542
936
+ homeassistant-stubs/components/electric_kiwi/coordinator.pyi,sha256=yQbU9ZEEEaYFNxPvEDvBRfSDjfW-ZTC5dGz8Mg5S0hs,1540
937
937
  homeassistant-stubs/components/electric_kiwi/oauth2.pyi,sha256=Qx_tvwN7FaweC9MyyxQkyrDJHMAsuQpTvWm1cTuqV6g,968
938
938
  homeassistant-stubs/components/electric_kiwi/select.pyi,sha256=YqmTERgCMgSdGNYwmAOImPiIWG18EXAJXi32HpsLke4,1420
939
- homeassistant-stubs/components/electric_kiwi/sensor.pyi,sha256=9vtS_50sB_H61vtSUEoESm2XumKMxREPPvWYW3BZ5PA,2796
939
+ homeassistant-stubs/components/electric_kiwi/sensor.pyi,sha256=MJY0vf-Gahq5P9KHZHPWXdEh5qRNc5oxCz1g_FHh9Fw,2868
940
940
  homeassistant-stubs/components/elevenlabs/__init__.pyi,sha256=KEMB2eegv-I_WekcYHApvve58A9v8wpAJHF2odsPs4M,1156
941
941
  homeassistant-stubs/components/elevenlabs/config_flow.pyi,sha256=feixhesJ_QKikLnUbiYcAubnwIh7RQiWf_yZAYJQpaw,2251
942
942
  homeassistant-stubs/components/elevenlabs/const.pyi,sha256=2A9l66DS5VETvvknwWA7VpjL7E9mjFgCIjuiG5wwkGI,349
@@ -2393,9 +2393,9 @@ homeassistant-stubs/components/oncue/const.pyi,sha256=4EdfjkoGOjFyxQQnpGXMvvi-E5
2393
2393
  homeassistant-stubs/components/oncue/entity.pyi,sha256=TZJvQio7AWzk_dLywz3eSiHJJJQsMeVOqjA69LfZ5xc,1181
2394
2394
  homeassistant-stubs/components/oncue/sensor.pyi,sha256=9gLVq1feftHBrtw02Be1vpbB6Gus0lAv2JBxniW-g_8,1612
2395
2395
  homeassistant-stubs/components/oncue/types.pyi,sha256=KqG_536UpHzCPPb-qCPZA6bUmXVTiPqmIZKwz8NabMs,285
2396
- homeassistant-stubs/components/onedrive/__init__.pyi,sha256=j8cLs2kYhBu47va4k71HVi8DKr_zH1kq9s_bP0__mXk,1450
2396
+ homeassistant-stubs/components/onedrive/__init__.pyi,sha256=6m18BAwZUoFmBGeFg6PpSjoE5Er7_5zy18BMpL_L8TE,1542
2397
2397
  homeassistant-stubs/components/onedrive/application_credentials.pyi,sha256=gC5LevrYVBmGRf6YJuwIR4rPyphIk0ro8IvjoPQVjiI,343
2398
- homeassistant-stubs/components/onedrive/backup.pyi,sha256=jgSiNppzVywVBvZuRPzuzduHPVZkR-Ay5LJcibbrTyc,2370
2398
+ homeassistant-stubs/components/onedrive/backup.pyi,sha256=XDx-rIDvVgKCywx_PtwAZV1p0n8ymoMdxKMuPsT7fWo,2395
2399
2399
  homeassistant-stubs/components/onedrive/config_flow.pyi,sha256=QuwE73Q4jjlVOZCBLkGWTyEC10_t9W5UUaYMxTiDfmE,1079
2400
2400
  homeassistant-stubs/components/onedrive/const.pyi,sha256=evMrmc2zcW6JonKLyshgaphWE_14cDyc9PQphaM_jGY,336
2401
2401
  homeassistant-stubs/components/onewire/__init__.pyi,sha256=wMDZKMHzaTbanOaeZ95Qi4krp8DV-HxY9toO5lC0PEo,878
@@ -3041,7 +3041,7 @@ homeassistant-stubs/components/shelly/entity.pyi,sha256=AgkQZKQN8c1LChaqsBHYY4zX
3041
3041
  homeassistant-stubs/components/shelly/event.pyi,sha256=FKK-aiQNOkDW7k35ZQfcw_8zgKmohVyrVzlFPFGcFqk,2970
3042
3042
  homeassistant-stubs/components/shelly/light.pyi,sha256=E2g80xjr0QtdoRzowTMS8_90jZtUey6o3SLcUD8Ki4g,5019
3043
3043
  homeassistant-stubs/components/shelly/logbook.pyi,sha256=7p2mfjNrdLxLwroHbJg2rR6R-67CnqrQPyn-VeeOFdQ,1004
3044
- homeassistant-stubs/components/shelly/number.pyi,sha256=vnz7Ksm2ktItBFFuHfpD9_ayEslAkdsriRraesifXzA,4043
3044
+ homeassistant-stubs/components/shelly/number.pyi,sha256=HiGWyxxkXIdgaMFmdWbpZVKSQwzC6ifWjp7_QvoPugg,4257
3045
3045
  homeassistant-stubs/components/shelly/select.pyi,sha256=OJ1yzLbr2j0ZGQI9FBcxSYgqG47Lq1bYfhLGaL5aHYk,1523
3046
3046
  homeassistant-stubs/components/shelly/sensor.pyi,sha256=juXfzLefrHxiKicPmiBkf4cjYXKTbQvP10vpyfGsjRI,5330
3047
3047
  homeassistant-stubs/components/shelly/switch.pyi,sha256=uaElw-sPaomcFB10TBSdb_7VS8Vx8l5if-oi2rslx7A,4696
@@ -3892,7 +3892,7 @@ homeassistant-stubs/generated/ssdp.pyi,sha256=Fwxmmpk2W3xQko-vPgMLOiGJVVfO92UjBG
3892
3892
  homeassistant-stubs/generated/usb.pyi,sha256=tmd24dIlCRCPK_7cFie969eJcRaJVGAu5IDVPYc4-Y0,50
3893
3893
  homeassistant-stubs/generated/zeroconf.pyi,sha256=9mJ1oELAXblcOhVmAj4sw0Lf0VQB3PSbbJHCQjmSLfs,75
3894
3894
  homeassistant-stubs/helpers/__init__.pyi,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3895
- homeassistant-stubs/helpers/aiohttp_client.pyi,sha256=_PYl4i068a8yZrfHZXuZ3kcpuIhXiUAwt0yBsdeR43M,3645
3895
+ homeassistant-stubs/helpers/aiohttp_client.pyi,sha256=hu3D-X-EkYxH4Qij0-Wx3fnbWqDKe42wD_RffY0sFJE,3653
3896
3896
  homeassistant-stubs/helpers/area_registry.pyi,sha256=A79r99U_gIIBUfmDgX9wbxFwkz-T3oe9c5JnHF7bnIs,5430
3897
3897
  homeassistant-stubs/helpers/category_registry.pyi,sha256=Y5q21gyQsjTluqH8hNGs9kfFgNsM9nXTEheNZo0I9zw,3095
3898
3898
  homeassistant-stubs/helpers/check_config.pyi,sha256=zOdzvtEUMrEmQ9D8acIIWejJvd8bGO-HL8aU0N1UUv4,1672
@@ -4018,7 +4018,7 @@ homeassistant-stubs/util/yaml/dumper.pyi,sha256=uQjW0KuME-gXVWgYJLNLoRDwDzVhhhgg
4018
4018
  homeassistant-stubs/util/yaml/input.pyi,sha256=wuxpKYTXZL4MujFhqjHnRLv4VPYY6QPYd-Zji-Lz9Mo,383
4019
4019
  homeassistant-stubs/util/yaml/loader.pyi,sha256=9MJS3AZNCemqAEU41KVJox1f16OceP64SNXE1-Z37kU,4117
4020
4020
  homeassistant-stubs/util/yaml/objects.pyi,sha256=EmJiT8WnVUHa5dkbYzXtWzu5mhO1YG5bBnEAIF0XLAU,665
4021
- homeassistant_stubs-2025.2.0b12.dist-info/METADATA,sha256=T7-w9q1jS-6Xlv0v9qhfUzP-ZvRl85sMBbduwhAr-O0,2958
4022
- homeassistant_stubs-2025.2.0b12.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
4023
- homeassistant_stubs-2025.2.0b12.dist-info/licenses/LICENSE,sha256=_kHFjg-MAmJ-lXc7HiEjUzD3vZutVYKUVZZpAWcIuqo,1075
4024
- homeassistant_stubs-2025.2.0b12.dist-info/RECORD,,
4021
+ homeassistant_stubs-2025.2.1.dist-info/METADATA,sha256=hYcZZ-Z4-hvzh1_mI9qJg5ep6ObBSBgjX5ox85_qBJs,2952
4022
+ homeassistant_stubs-2025.2.1.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
4023
+ homeassistant_stubs-2025.2.1.dist-info/licenses/LICENSE,sha256=_kHFjg-MAmJ-lXc7HiEjUzD3vZutVYKUVZZpAWcIuqo,1075
4024
+ homeassistant_stubs-2025.2.1.dist-info/RECORD,,