Больше не вопрос сейчас. Я заново редактирую это, чтобы объяснить, что случилось:
Я сделал вложенную запись, как это
let key: String!
key = "foo"
let dict = ["Zoes": "7th Street"]
ref.child("/\(key)/shops").setValue(dict)
В результате ключ "foo" становится: "Optional(\"foo\")"
как строка, хранящаяся в базе данных Firebase.
Так что я подумал, что поскольку ключ объявлен как неявно развернутый, он просто развернется при интерполяции строк. Но оказалось, что строка не была принудительно развернута во время интерполяции строки, поэтому написано «Необязательно». Теперь это не проблема Firebase, а просто как работает String-интерполяция в Swift.