@@ -209,33 +209,12 @@ async def test_read_skill_resource_returns_verified_text() -> None:
209209 """SDK-defined: a matching manifest allows a fetched text file."""
210210 async with _skills (_server ()) as skills :
211211 skill = await skills .get_skill (_SKILL_URI )
212- result = await skills .read_skill_resource (skill )
212+ result = await skills .read_skill_resource (skill , _SKILL_URI )
213213 contents = result .contents [0 ]
214214 assert isinstance (contents , TextResourceContents )
215215 assert contents .text == _SKILL_CONTENT
216216
217217
218- async def test_read_skill_resource_accepts_a_supporting_file_uri () -> None :
219- """SEP-2640: a supporting file is checked against the same held manifest."""
220- uri = "skill://git-workflow/references/GUIDE.md"
221- content = "# Guide\n "
222- server = _server ()
223- server .add_resource (TextResource (uri = uri , name = "GUIDE.md" , text = content ))
224- skill = Skill (
225- uri = _SKILL_URI ,
226- frontmatter = {"name" : "git-workflow" , "description" : "d" },
227- resources = [
228- SkillResource (uri = _SKILL_URI , digest = _SKILL_DIGEST , size = len (_SKILL_CONTENT )),
229- SkillResource (uri = uri , digest = f"sha256:{ hashlib .sha256 (content .encode ()).hexdigest ()} " , size = len (content )),
230- ],
231- )
232- async with _skills (server ) as skills :
233- result = await skills .read_skill_resource (skill , uri )
234- contents = result .contents [0 ]
235- assert isinstance (contents , TextResourceContents )
236- assert contents .text == content
237-
238-
239218async def test_read_skill_resource_rejects_a_changed_file () -> None :
240219 """SEP-2640: a host rejects content that differs from the held manifest."""
241220 stale = Skill (
@@ -245,7 +224,7 @@ async def test_read_skill_resource_rejects_a_changed_file() -> None:
245224 )
246225 async with _skills (_server ()) as skills :
247226 with pytest .raises (ValueError ) as exc_info :
248- await skills .read_skill_resource (stale )
227+ await skills .read_skill_resource (stale , _SKILL_URI )
249228 assert str (exc_info .value ) == snapshot (
250229 "resource 'skill://git-workflow/SKILL.md' has digest "
251230 "'sha256:7187b725da92d7447b6f50e21d0bf4f3b9db3387acb39239c4a4edc193ddcd4b', "
@@ -268,7 +247,7 @@ async def test_read_skill_resource_rejects_a_dynamic_skill() -> None:
268247 dynamic = Skill (uri = _SKILL_URI , frontmatter = {"name" : "git-workflow" , "description" : "d" }, resources = "dynamic" )
269248 async with _skills (_server ()) as skills :
270249 with pytest .raises (ValueError ) as exc_info :
271- await skills .read_skill_resource (dynamic )
250+ await skills .read_skill_resource (dynamic , _SKILL_URI )
272251 assert str (exc_info .value ) == snapshot (
273252 "skill 'skill://git-workflow/SKILL.md' has dynamic resources and cannot be integrity-verified"
274253 )
@@ -285,7 +264,7 @@ async def test_read_skill_resource_returns_verified_binary_content() -> None:
285264 resources = [SkillResource (uri = _SKILL_URI , digest = f"sha256:{ hashlib .sha256 (data ).hexdigest ()} " , size = len (data ))],
286265 )
287266 async with _skills (server ) as skills :
288- result = await skills .read_skill_resource (skill )
267+ result = await skills .read_skill_resource (skill , _SKILL_URI )
289268 contents = result .contents [0 ]
290269 assert isinstance (contents , BlobResourceContents )
291270 assert contents .blob == base64 .b64encode (data ).decode ("ascii" )
@@ -315,7 +294,7 @@ async def handler(ctx: ServerRequestContext[Any, Any], params: ReadResourceReque
315294 server .add_request_handler ("resources/read" , ReadResourceRequestParams , handler )
316295 async with Client (server , extensions = [ClientSkills ()]) as client :
317296 with pytest .raises (ValueError ) as exc_info :
318- await client .extension (ClientSkills ).read_skill_resource (_skill ())
297+ await client .extension (ClientSkills ).read_skill_resource (_skill (), _SKILL_URI )
319298 assert str (exc_info .value ) == snapshot (
320299 "resource 'skill://git-workflow/SKILL.md' did not return exactly one matching content item"
321300 )
@@ -335,7 +314,7 @@ async def handler(ctx: ServerRequestContext[Any, Any], params: ReadResourceReque
335314 server .add_request_handler ("resources/read" , ReadResourceRequestParams , handler )
336315 async with Client (server , extensions = [ClientSkills ()]) as client :
337316 with pytest .raises (ValueError ) as exc_info :
338- await client .extension (ClientSkills ).read_skill_resource (_skill ())
317+ await client .extension (ClientSkills ).read_skill_resource (_skill (), _SKILL_URI )
339318 assert str (exc_info .value ) == snapshot ("resource 'skill://git-workflow/SKILL.md' returned invalid base64 content" )
340319
341320
0 commit comments