           (assoc :board-uuid board-uuid)
           (assoc :author [(assoc author :updated-at ts)])
           (assoc :created-at ts)
-          (assoc :updated-at ts)))
+          (assoc :updated-at ts)
+          (publish-props ts author)))
     (throw (ex-info "Invalid board uuid." {:board-uuid board-uuid})))) ; no board
 
 (schema/defn ^:always-validate create-entry! :- (schema/maybe common/Entry)

          clean
          (assoc :uuid (db-common/unique-id))
          (assoc :secure-uuid (db-common/unique-id))
          (assoc :status "draft")
          (assoc :topic-slug topic-slug)
          (update :topic-name #(or % nil))
          (update :headline #(or % ""))

  "Remove any ignored properties from the entry."
  [entry]
  (apply dissoc entry ignored-properties))

(defn- publish-props
  "Provide properties for an initially published entry."
  [entry timestamp author]
  (if (= (:status entry) "published")
    (-> entry
      (assoc :published-at timestamp)
      (assoc :publisher author))
    entry))

;; ----- Entry CRUD -----

