v0.6.5: graceful C2PA attribution for unmapped devices
Closes the only real downside of an unmapped C2PA device (Canon/Samsung/Bria): the platform label no longer mis-attributes.
_attribute_platform now names a specific AI-generator platform (Adobe Firefly, OpenAI, Google, ...) only when the digital-source-type is trainedAlgorithmicMedia. On a non-AI source (e.g. a camera capture), an issuer-name byte match is treated as incidental — an "Adobe XMP" toolkit string in an unmapped Canon/Sony photo would otherwise mislabel it "Adobe Firefly" — so it degrades to a neutral "C2PA signer: X" label.
Real Firefly / OpenAI / Google output carries the AI source-type and is unaffected (verified: chatgpt-1.png → OpenAI, firefly-1.png → Adobe Firefly still attribute correctly). Detection (is_ai) and metadata removal were already independent of the signer mapping; this makes the platform label degrade gracefully too.