drop-free.openapps.xyz

Source

This app’s code and revision history are public. Download a copy or explore the files below.

Public
The app’s code and revision history are public.
Owned app · rev b2e053fd98cb
Run it yourself
Take the whole tree and run it on your own machine. The download needs no account. Cloning needs a sign-in.
Download .zip
bounded clone 80ddb8c5df822e290afdd3c7
A copy you download is not bounded. The guarantees this app runs under - declared egress, proven invariants, writes that fail closed - live in the runtime serving this page, not in the files. What you get is auditable source you can read and run, with no runtime guarantees attached.
← All files
policy-tests/sharing.json
{
  "version": "1",
  "name": "sharing, joining, signaling and stopping",
  "actors": { "Sam": "sam_device", "Rae": "rae_device", "Ian": "ian_device", "Eve": "eve_device" },
  "steps": [
    { "op": "setTime", "epoch": 1800000000 },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/joins/sam_device", "data": { "role": "receiver", "name": "Nobody", "at": 1800000000 }, "shouldFail": true },

    { "op": "as", "who": "Sam" },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa", "data": { "owner": "$Sam", "session": "s1", "open": true, "createdAt": 1800000000 }, "shouldFail": true },
    { "op": "setMany", "writes": [
      { "path": "drops/aaaaaaaaaaaaaaaaaaaa", "data": { "owner": "$Sam", "session": "s1", "open": false, "createdAt": 1800000000 } },
      { "path": "drops/aaaaaaaaaaaaaaaaaaaa/joins/sam_device", "data": { "role": "sender", "name": "Mac", "at": 1800000000 } }
    ], "shouldFail": true },
    { "op": "setMany", "writes": [
      { "path": "drops/aaaaaaaaaaaaaaaaaaaa", "data": { "owner": "$Rae", "session": "s1", "open": true, "createdAt": 1800000000 } },
      { "path": "drops/aaaaaaaaaaaaaaaaaaaa/joins/sam_device", "data": { "role": "sender", "name": "Mac", "at": 1800000000 } }
    ], "shouldFail": true },
    { "op": "setMany", "writes": [
      { "path": "drops/aaaaaaaaaaaaaaaaaaaa", "data": { "owner": "$Sam", "session": "s1", "open": true, "createdAt": 1800000000 } },
      { "path": "drops/aaaaaaaaaaaaaaaaaaaa/joins/sam_device", "data": { "role": "sender", "name": "Mac", "at": 1800000000 } }
    ] },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa", "data": { "session": "s2" } },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/joins/sam_device", "data": { "role": "receiver" }, "shouldFail": true },

    { "op": "as", "who": "Eve" },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/joins/eve_device", "data": { "role": "sender", "name": "Eve", "at": 1800000000 }, "shouldFail": true },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/joins/rae_device", "data": { "role": "receiver", "name": "Eve", "at": 1800000000 }, "shouldFail": true },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa", "data": { "open": false }, "shouldFail": true },
    { "op": "set", "path": "drops/bbbbbbbbbbbbbbbbbbbb/joins/eve_device", "data": { "role": "receiver", "name": "Eve", "at": 1800000000 }, "shouldFail": true },

    { "op": "as", "who": "Rae" },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/links/rae_device", "data": { "offer": "x", "offerId": "o1", "session": "s2", "answer": "", "answerId": "", "at": 1800000000 }, "shouldFail": true },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/joins/rae_device", "data": { "role": "receiver", "name": "", "at": 1800000000 }, "shouldFail": true },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/joins/rae_device", "data": { "role": "receiver", "name": "Android phone", "at": 1800000000 } },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/joins/rae_device", "data": { "name": "Renamed" }, "shouldFail": true },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/links/rae_device", "data": { "offer": "sdp-offer", "offerId": "o1", "session": "s2", "answer": "", "answerId": "", "at": 1800000000 } },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/links/rae_device", "data": { "answer": "fake", "answerId": "o1" }, "shouldFail": true },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa", "data": { "open": false }, "shouldFail": true },
    { "op": "delete", "path": "drops/aaaaaaaaaaaaaaaaaaaa/joins/sam_device", "shouldFail": true },

    { "op": "as", "who": "Eve" },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/links/rae_device", "data": { "answer": "fake", "answerId": "o1" }, "shouldFail": true },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/links/eve_device", "data": { "offer": "x", "offerId": "o1", "session": "s2", "answer": "", "answerId": "", "at": 1800000000 }, "shouldFail": true },
    { "op": "delete", "path": "drops/aaaaaaaaaaaaaaaaaaaa/links/rae_device", "shouldFail": true },

    { "op": "as", "who": "Sam" },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/links/rae_device", "data": { "answer": "sdp-answer", "answerId": "old" }, "shouldFail": true },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/links/rae_device", "data": { "offer": "changed", "answer": "sdp-answer", "answerId": "o1" }, "shouldFail": true },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/links/rae_device", "data": { "answer": "sdp-answer", "answerId": "o1" } },
    { "op": "expect", "expr": "get(/drops/aaaaaaaaaaaaaaaaaaaa/links/rae_device).answerId == 'o1'" },

    { "op": "as", "who": "Rae" },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/links/rae_device", "data": { "offer": "sdp-offer-2", "offerId": "o2", "session": "s2", "answer": "", "answerId": "", "at": 1800000000 } },

    { "op": "as", "who": "Sam" },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa", "data": { "open": false } },

    { "op": "as", "who": "Rae" },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/links/rae_device", "data": { "offer": "sdp-offer-3", "offerId": "o3", "session": "s2", "answer": "", "answerId": "", "at": 1800000000 }, "shouldFail": true },

    { "op": "as", "who": "Ian" },
    { "op": "set", "path": "drops/aaaaaaaaaaaaaaaaaaaa/joins/ian_device", "data": { "role": "receiver", "name": "Windows computer", "at": 1800000000 }, "shouldFail": true },
    { "op": "delete", "path": "drops/aaaaaaaaaaaaaaaaaaaa/links/rae_device", "shouldFail": true },

    { "op": "as", "who": "Sam" },
    { "op": "expect", "expr": "get(/drops/aaaaaaaaaaaaaaaaaaaa/links/rae_device).offerId == 'o2'" },
    { "op": "delete", "path": "drops/aaaaaaaaaaaaaaaaaaaa/links/rae_device" },
    { "op": "expect", "expr": "get(/drops/aaaaaaaaaaaaaaaaaaaa/links/rae_device) == null" },
    { "op": "delete", "path": "drops/aaaaaaaaaaaaaaaaaaaa/joins/rae_device" },
    { "op": "delete", "path": "drops/aaaaaaaaaaaaaaaaaaaa", "shouldFail": true }
  ]
}

Change history

Point OpenApps links to openapps.free
b2e053fd98 · 17 hours ago
Bind agent address in policy
ca424dd814 · 19 hours ago
Retry release capture
ae07f1a3fd · 19 hours ago
Use OpenApps service URLs and add contribution strip
0452ce136f · 19 hours ago
Bounded source sync
ca1bc00aa4 · 1 day ago
Bounded source sync
d4982911a0 · 1 day ago
Bounded source sync
18c97fe4ca · 1 day ago