Turns out this was [a bug in alameda](https://github.com/requirejs/alameda/issues/4), which is not in requirejs. Fixed in [0.0.9](https://raw.github.com/requirejs/alameda/0.0.9/alameda.js) (which also includes the data-main fix, which is why the inline define for 'startup' should be 'startup_init' now).

My full patch for the other comments I mention in here, and including 0.0.9:

https://gist.github.com/jrburke/6821302

Note that I did **not** update the mock alarmsdb file, but it should work now if it follows the exports path and (require('alarm')) as the alarmsdb.js in that patch file.