coda

  • they are just pre-copies using our smart copy+paste logic
    • flow for creating a template today, you flag the doc, has to match certain criteria
      • world readable
      • only contain one page
      • editable by Codans
    • fails if not satisfiable
  • workflow that runs copy over canvas ranges section
    • goes over ranges and generates the minimum op log necessary to produce that
      • generate 3 versions: 1) dumb plain text, 2) html, 3) Coda op log
    • use the 3rd one for templates. big json with what packs are installed, what automations are there, all object properties, and ops for each of those.
  • load templates panel, looks at bookkeeping table: “what are all the avilable templates for given schema version?”
    • when you start to drag and drop, pre-fetch the data from s3
    • when dropped, use the copy info and play all those ops in the user’s doc
  • why is schema version important?
    • copy logic relies on this bc op logs are versioned
    • is this a problem in practice bc we forcibly upgrade?
      • no bc impact has been reasonable and able to mitigate
    • admin we can generate ops at previous versions