OK thanks for all the help. I got it to work with 2 changes overall
• EnableCookie() doc says "Causes any Set-Cookie headers returned from the request to be interpreted and the resulting cookies to be added to the cookie cache" - but it turns out to be necessary also when adding cookies manually via AddCookie()
• Empty domain names make sense for GetCookies(), but don't make sense for AddCookies()
Here is a working version of the code
expires = CreateObject("roDateTime")
expires.FromSeconds( expires.asSeconds() + 3600 )
cookie = {version:1, name:"thecookies", value:"thevalue", domain: domain, path:path, expires: expires}
player = CreateObject("roVideoPlayer")
player.EnableCookies()
player.AddCookies([cookie])
player = http.GetCookies("", "/")
if cookies.count() = 1
Print "YEP"
else
Print "NOPE"
end if