e.g.
portlet = assignment_from_key( getSite(), u'plone.rightcolumn', CONTEXT_CATEGORY, '/', 'p_name' )
(Pdb) portlet
<Assignment at ++contextportlets++plone.rightcolumn/p_name>
(Pdb) portlet.aq_chain
[<Assignment at ++contextportlets++plone.rightcolumn/p_name>, <PortletAssignmentMapping at ++contextportlets++plone.rightcolumn>]
In other words, the chain ends at the assignment mapping and doesn't go up to the portal.