I think it's unlikely that closure-compiler will ever support
@property. My basic line of reasoning goes like this:
(1) It's not simply a new syntax. It introduces new type primitives
that didn't exist before (consider /** @type {Foo} @property {Bar} bar
*/)
(2) New type primitives greatly increase the complexity of the type
system overall (not just for the devs, but for any user that writes
type-annotated JS)
(3) A @property annotation that nobody validates is pure and ideal and
infinitely tractable. A real type-checker needs to follow well-defined
rules. Just about every new type operator we've added has gotten the
response "that's useful in fewer cases than I had in my head", because
once someone formally writes out the type relations, they discover all
the contradictions in the original idea.
All of that said, I do understand the fundamental problem you're
trying to solve--adding better descriptions to one-off properties. I
just think that @property does that in a hand-wavey way that's OK for
generating jsdoc but too vague for a type-checker.