anchor.diff:  
   [[PR-1]]
   .PR-1: Client-Server Architecture
  -Vaporpad will use a client-server architecture.
  +Vaporpad will use a client-server architecture. ↑[<<N-O-11>>, <<N-I-2>>]
   
   [[PR-2]]
   .PR-2: Reference Code + Protocol
  -Vaporpad includes reference client code, reference server code, and a documented protocol spoken between them.
  +Vaporpad includes reference client code, reference server code, and a documented protocol spoken between them. ↑[<<N-I-2>>]
   
   [[PR-3]]
   .PR-3: Operational Transformation Theory
  
positive.code: 
  [[CL-1]]
  .CL-1: Vaporfield Setup
  To operate, each Vaporfield must be connected to a VPP Client with an active session.
  
  [[CL-2]]
  .CL-2: VPP Client Setup
  To have an active session, a VPP Client must be connected to a VPP Service by way of a VPP Service Locator.
  
  [[CL-3]]
  .CL-3: VPP Service Locators
  VPP Service Locators are URLs.
  
  [[CL-4]]
  .CL-4: Vaporfield Operation
  Once connected, vaporfields use VPP to synchronize their state.
  
  [[CL-5]]
  .CL-5: Authentication
  VPP clients will authenticate with http://tools.ietf.org/html/rfc4422[SASL], possibly including with http://tools.ietf.org/html/rfc4422#appendix-A[SASL EXTERNAL] for cookie or TLS-client-cert-based web client authentication.
  
  [[CL-6]]
  .CL-6: Multiplexing
  For now, there is no need to multiplex/route VPP connections over a limited number of underlying transports.
  
  === Server Logic
  
  [[SRV-1]]
  .SRV-1: Multiple Vaporpads
  The Focus server needs to support concurrent editing of multiple vaporpads. ↑<<N-E-2>>
  
  [[SRV-2]]
  .SRV-2: File System Metaphor
  The Focus server will use a network/file system metaphor -- connections, file descriptions, and documents -- to route edits.
  
  === Protocol Logic
  
  
negative.code: 
  
  
  == Problems
  
  [[PRB-1]]
  .PRB-1: Locking
  The focus server must tolerate concurrency without crashing. ↑[<<SRV-1>>, <<A-1>>, <<A-2>>, <<A-3>>]
  
  [[PRB-2]]
  .PRB-2: Buffering
  The focus server must tolerate fast writers and slow readers. ↑[<<SRV-1>>, <<A-1>>, <<A-2>>, <<A-3>>]
  
  [[PRB-3]]
  .PRB-3: DoS
  The focus server must tolerate load spikes. ↑[<<N-O-11>>, <<N-I-2>>]
  
  [[PRB-4]]
  .PRB-4: Coverage
  The focus server's test suite must achieve high test coverage. ↑[<<N-C-3>>, <<N-O-11>>, <<N-I-2>>, <<N-E-10>>]
  
  
  
  
  
  
  