Hi Paulo,
You're correct that the limit is not hard coded. 1 QPS writes per document is just the maximum limit for sustained writes that we expect to always work. If you do a quick burst of 5, 10, or even 50 writes in one second we can handle it by simply queuing the writes and executing them one by one. So for example in a social networking app, you wouldn't see any errors if two users "liked" a post at the same instant. However if you keep up high QPS to a single document over a long period of time, you'll eventually exceed the write queue capacity and get errors back from the API.
You're also correct that indexes play a big part in this. The write is not complete until all relevant index entries have been updated. So if your document has hundreds of fields and a few dozen compound indexes, each write will take longer and your max QPS writing to that document will get lower until you're at that 1 QPS number.
The main point of publishing that limit is to warn developers not to build an app that depends on achieving sustained writes >1QPS for a single document, because you will almost definitely see some failures.
- Sam