diff --git a/package.json b/package.json index 56033b3..9ac907c 100644 --- a/package.json +++ b/package.json @@ -51,7 +51,7 @@ "dependencies": { "@babel/plugin-transform-react-constant-elements": "7.2.0", "@babel/plugin-transform-react-inline-elements": "7.2.0", - "@corpetty/test-graph-embed": "https://api.observablehq.com/@corpetty/test-graph-embed.tgz?v=3", + "@corpetty/status-sticker-market-blog-embed": "https://api.observablehq.com/@corpetty/status-sticker-market-blog-embed.tgz?v=3", "@observablehq/runtime": "4", "babel-plugin-transform-react-pure-class-to-function": "1.0.1", "babel-plugin-transform-react-remove-prop-types": "0.4.24", diff --git a/report.20190530.200053.9760.0.001.json b/report.20190530.200053.9760.0.001.json deleted file mode 100644 index cafe337..0000000 --- a/report.20190530.200053.9760.0.001.json +++ /dev/null @@ -1,331 +0,0 @@ - -{ - "header": { - "event": "Allocation failed - JavaScript heap out of memory", - "trigger": "FatalError", - "filename": "report.20190530.200053.9760.0.001.json", - "dumpEventTime": "2019-05-30T20:00:53Z", - "dumpEventTimeStamp": "1559260853330", - "processId": 9760, - "cwd": "/home/petty/Github/status-im/token-economy-1", - "commandLine": [ - "node", - "/home/petty/Github/status-im/token-economy-1/node_modules/.bin/eslint", - "--fix", - "/home/petty/Github/status-im/token-economy-1/src/App.jsx", - "/home/petty/Github/status-im/token-economy-1/src/App.css", - "/home/petty/Github/status-im/token-economy-1/build/js/vendors.640951b04ffd2402a5eb.js", - "/home/petty/Github/status-im/token-economy-1/build/js/runtime~main.d26192c48fdcce4d50bb.js", - "/home/petty/Github/status-im/token-economy-1/build/js/main.5e2e15d48fe1364e50b0.js", - "/home/petty/Github/status-im/token-economy-1/build/css/main.css" - ], - "nodejsVersion": "v11.14.0", - "glibcVersionRuntime": "2.29", - "glibcVersionCompiler": "2.28", - "wordSize": 64, - "arch": "x64", - "platform": "linux", - "componentVersions": { - "node": "11.14.0", - "v8": "7.0.276.38-node.18", - "uv": "1.28.0", - "zlib": "1.2.11", - "brotli": "1.0.7", - "ares": "1.15.0", - "modules": "67", - "nghttp2": "1.36.0", - "napi": "4", - "llhttp": "1.1.1", - "http_parser": "2.8.0", - "openssl": "1.1.1b", - "cldr": "35.1", - "icu": "64.1", - "tz": "2019a", - "unicode": "12.0" - }, - "release": { - "name": "node", - "headersUrl": "https://nodejs.org/download/release/v11.14.0/node-v11.14.0-headers.tar.gz", - "sourceUrl": "https://nodejs.org/download/release/v11.14.0/node-v11.14.0.tar.gz" - }, - "osName": "Linux", - "osRelease": "5.0.9-arch1-1-ARCH", - "osVersion": "#1 SMP PREEMPT Sat Apr 20 15:00:46 UTC 2019", - "osMachine": "x86_64", - "host": "bean" - }, - "javascriptStack": { - "message": "No stack.", - "stack": [ - "Unavailable." - ] - }, - "nativeStack": [ - { - "pc": "0x000055fe70c51211", - "symbol": "report::TriggerNodeReport(v8::Isolate*, node::Environment*, char const*, char const*, std::__cxx11::basic_string, std::allocator > const&, v8::Local) [node]" - }, - { - "pc": "0x000055fe70b4274f", - "symbol": "node::OnFatalError(char const*, char const*) [node]" - }, - { - "pc": "0x000055fe70cdc7b2", - "symbol": "v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [node]" - }, - { - "pc": "0x000055fe70cdca0b", - "symbol": "v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [node]" - }, - { - "pc": "0x000055fe710747d3", - "symbol": " [node]" - }, - { - "pc": "0x000055fe71074914", - "symbol": " [node]" - }, - { - "pc": "0x000055fe710844c6", - "symbol": "v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [node]" - }, - { - "pc": "0x000055fe71084e6e", - "symbol": "v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [node]" - }, - { - "pc": "0x000055fe7108706d", - "symbol": "v8::internal::Heap::AllocateRawWithLightRetry(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [node]" - }, - { - "pc": "0x000055fe710870c2", - "symbol": "v8::internal::Heap::AllocateRawWithRetryOrFail(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [node]" - }, - { - "pc": "0x000055fe71055a05", - "symbol": "v8::internal::Factory::NewFillerObject(int, bool, v8::internal::AllocationSpace) [node]" - }, - { - "pc": "0x000055fe712c43ff", - "symbol": "v8::internal::Runtime_AllocateInTargetSpace(int, v8::internal::Object**, v8::internal::Isolate*) [node]" - }, - { - "pc": "0x00003848735cfc5d", - "symbol": "" - } - ], - "javascriptHeap": { - "totalMemory": 1355722752, - "totalCommittedMemory": 1346957656, - "usedMemory": 1293978664, - "availableMemory": 177740208, - "memoryLimit": 1526909922, - "heapSpaces": { - "read_only_space": { - "memorySize": 524288, - "committedMemory": 42224, - "capacity": 515584, - "used": 33520, - "available": 482064 - }, - "new_space": { - "memorySize": 8388608, - "committedMemory": 2000784, - "capacity": 4124672, - "used": 440496, - "available": 3684176 - }, - "old_space": { - "memorySize": 1215500288, - "committedMemory": 1214436312, - "capacity": 1170947424, - "used": 1169377008, - "available": 1570416 - }, - "code_space": { - "memorySize": 7340032, - "committedMemory": 6509504, - "capacity": 6851840, - "used": 5843488, - "available": 1008352 - }, - "map_space": { - "memorySize": 5255168, - "committedMemory": 5254464, - "capacity": 1532240, - "used": 1532240, - "available": 0 - }, - "large_object_space": { - "memorySize": 118714368, - "committedMemory": 118714368, - "capacity": 287747112, - "used": 116751912, - "available": 170995200 - }, - "new_large_object_space": { - "memorySize": 0, - "committedMemory": 0, - "capacity": 0, - "used": 0, - "available": 0 - } - } - }, - "resourceUsage": { - "userCpuSeconds": 185.079, - "kernelCpuSeconds": 6.64533, - "cpuConsumptionPercent": 189.826, - "maxRss": 1553182720, - "pageFaults": { - "IORequired": 14, - "IONotRequired": 3770804 - }, - "fsActivity": { - "reads": 3672, - "writes": 0 - } - }, - "uvthreadResourceUsage": { - "userCpuSeconds": 95.6132, - "kernelCpuSeconds": 3.89972, - "cpuConsumptionPercent": 98.5276, - "fsActivity": { - "reads": 3672, - "writes": 0 - } - }, - "libuv": [ - ], - "environmentVariables": { - "SHELL": "/bin/zsh", - "XDG_SESSION_PATH": "/org/freedesktop/DisplayManager/Session0", - "VSCODE_GIT_ASKPASS_HANDLE": "/run/user/1000/vscode-git-askpass-71794351e1d694e719a4f923bbb206e5bc0a2b31.sock", - "APPLICATION_INSIGHTS_NO_DIAGNOSTIC_CHANNEL": "true", - "VSCODE_LOG_STACK": "false", - "VSCODE_LOGS": "/home/petty/.config/Code - OSS/logs/20190530T142636", - "ELECTRON_RUN_AS_NODE": "1", - "DESKTOP_SESSION": "i3-with-shmlog", - "EDITOR": "/usr/bin/nano", - "GTK_MODULES": "canberra-gtk-module", - "GIT_INDEX_FILE": "/home/petty/Github/status-im/token-economy-1/.git/index.lock", - "XDG_SEAT": "seat0", - "PWD": "/home/petty/Github/status-im/token-economy-1", - "XDG_SESSION_DESKTOP": "i3-with-shmlog", - "LOGNAME": "petty", - "QT_QPA_PLATFORMTHEME": "qt5ct", - "XDG_SESSION_TYPE": "x11", - "_": "/home/petty/Github/status-im/token-economy-1/node_modules/.bin/lint-staged", - "XAUTHORITY": "/home/petty/.Xauthority", - "VSCODE_GIT_ASKPASS_NODE": "/usr/lib/electron/electron", - "GIT_AUTHOR_DATE": "@1559260747 -0400", - "XDG_GREETER_DATA_DIR": "/var/lib/lightdm-data/petty", - "VSCODE_PREVENT_FOREIGN_INSPECT": "true", - "GIT_EXEC_PATH": "/usr/lib/git-core", - "HOME": "/home/petty", - "LANG": "en_US.UTF-8", - "VSCODE_IPC_HOOK_EXTHOST": "/tmp/vscode-ipc-32c67fb1-578a-4ff5-80b3-72c275e99bcc.sock", - "VSCODE_IPC_HOOK": "/run/user/1000/vscode-ab2990ac-1.33.1-main.sock", - "VSCODE_CLI": "1", - "GIT_ASKPASS": "/usr/lib/code/extensions/git/dist/askpass.sh", - "XDG_SEAT_PATH": "/org/freedesktop/DisplayManager/Seat0", - "GIT_AUTHOR_EMAIL": "corey@status.im", - "GIT_PREFIX": "", - "XDG_SESSION_CLASS": "user", - "USER": "petty", - "AMD_ENTRYPOINT": "vs/workbench/services/extensions/node/extensionHostProcess", - "VSCODE_GIT_COMMAND": "commit", - "DISPLAY": ":0", - "SHLVL": "2", - "GIT_EDITOR": ":", - "XDG_VTNR": "7", - "XDG_SESSION_ID": "2", - "MOZ_PLUGIN_PATH": "/usr/lib/mozilla/plugins", - "XDG_RUNTIME_DIR": "/run/user/1000", - "VERBOSE_LOGGING": "true", - "LC_ALL": "en_US.UTF-8", - "ELECTRON_NO_ATTACH_CONSOLE": "1", - "VSCODE_GIT_ASKPASS_MAIN": "/usr/lib/code/extensions/git/dist/askpass-main.js", - "LC_COLLATE": "en_US.UTF-8", - "GIT_AUTHOR_NAME": "Corey Petty", - "BROWSER": "/usr/bin/chromium", - "PATH": "/home/petty/Github/status-im/token-economy-1/node_modules/.bin:/home/petty/Github/status-im/node_modules/.bin:/home/petty/Github/node_modules/.bin:/home/petty/node_modules/.bin:/home/node_modules/.bin:/node_modules/.bin:/usr/bin:/home/petty/Github/status-im/token-economy-1/node_modules/.bin:/home/petty/Github/status-im/node_modules/.bin:/home/petty/Github/node_modules/.bin:/home/petty/node_modules/.bin:/home/node_modules/.bin:/node_modules/.bin:/usr/bin:/usr/lib/git-core:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl", - "PIPE_LOGGING": "true", - "GDMSESSION": "i3-with-shmlog", - "DBUS_SESSION_BUS_ADDRESS": "unix:path=/run/user/1000/bus", - "VSCODE_NLS_CONFIG": "{\"locale\":\"en-us\",\"availableLanguages\":{},\"_languagePackSupport\":true}", - "MAIL": "/var/spool/mail/petty", - "VSCODE_HANDLES_UNCAUGHT_ERRORS": "true" - }, - "userLimits": { - "core_file_size_blocks": { - "soft": "unlimited", - "hard": "unlimited" - }, - "data_seg_size_kbytes": { - "soft": "unlimited", - "hard": "unlimited" - }, - "file_size_blocks": { - "soft": "unlimited", - "hard": "unlimited" - }, - "max_locked_memory_bytes": { - "soft": 65536, - "hard": 65536 - }, - "max_memory_size_kbytes": { - "soft": "unlimited", - "hard": "unlimited" - }, - "open_files": { - "soft": 524288, - "hard": 524288 - }, - "stack_size_bytes": { - "soft": 8388608, - "hard": "unlimited" - }, - "cpu_time_seconds": { - "soft": "unlimited", - "hard": "unlimited" - }, - "max_user_processes": { - "soft": 128362, - "hard": 128362 - }, - "virtual_memory_kbytes": { - "soft": "unlimited", - "hard": "unlimited" - } - }, - "sharedObjects": [ - "linux-vdso.so.1", - "/usr/lib/libz.so.1", - "/usr/lib/libuv.so.1", - "/usr/lib/libcares.so.2", - "/usr/lib/libnghttp2.so.14", - "/usr/lib/libcrypto.so.1.1", - "/usr/lib/libssl.so.1.1", - "/usr/lib/libicui18n.so.64", - "/usr/lib/libicuuc.so.64", - "/usr/lib/libdl.so.2", - "/usr/lib/librt.so.1", - "/usr/lib/libstdc++.so.6", - "/usr/lib/libm.so.6", - "/usr/lib/libgcc_s.so.1", - "/usr/lib/libpthread.so.0", - "/usr/lib/libc.so.6", - "/usr/lib/libnsl.so.2", - "/usr/lib/libicudata.so.64", - "/lib64/ld-linux-x86-64.so.2", - "/usr/lib/libtirpc.so.3", - "/usr/lib/libgssapi_krb5.so.2", - "/usr/lib/libkrb5.so.3", - "/usr/lib/libk5crypto.so.3", - "/usr/lib/libcom_err.so.2", - "/usr/lib/libkrb5support.so.0", - "/usr/lib/libkeyutils.so.1", - "/usr/lib/libresolv.so.2" - ] -} \ No newline at end of file diff --git a/report.20190530.200259.10397.0.001.json b/report.20190530.200259.10397.0.001.json deleted file mode 100644 index 745f173..0000000 --- a/report.20190530.200259.10397.0.001.json +++ /dev/null @@ -1,331 +0,0 @@ - -{ - "header": { - "event": "Allocation failed - JavaScript heap out of memory", - "trigger": "FatalError", - "filename": "report.20190530.200259.10397.0.001.json", - "dumpEventTime": "2019-05-30T20:02:59Z", - "dumpEventTimeStamp": "1559260979865", - "processId": 10397, - "cwd": "/home/petty/Github/status-im/token-economy-1", - "commandLine": [ - "node", - "/home/petty/Github/status-im/token-economy-1/node_modules/.bin/eslint", - "--fix", - "/home/petty/Github/status-im/token-economy-1/src/App.jsx", - "/home/petty/Github/status-im/token-economy-1/src/App.css", - "/home/petty/Github/status-im/token-economy-1/build/js/vendors.640951b04ffd2402a5eb.js", - "/home/petty/Github/status-im/token-economy-1/build/js/runtime~main.d26192c48fdcce4d50bb.js", - "/home/petty/Github/status-im/token-economy-1/build/js/main.5e2e15d48fe1364e50b0.js", - "/home/petty/Github/status-im/token-economy-1/build/css/main.css" - ], - "nodejsVersion": "v11.14.0", - "glibcVersionRuntime": "2.29", - "glibcVersionCompiler": "2.28", - "wordSize": 64, - "arch": "x64", - "platform": "linux", - "componentVersions": { - "node": "11.14.0", - "v8": "7.0.276.38-node.18", - "uv": "1.28.0", - "zlib": "1.2.11", - "brotli": "1.0.7", - "ares": "1.15.0", - "modules": "67", - "nghttp2": "1.36.0", - "napi": "4", - "llhttp": "1.1.1", - "http_parser": "2.8.0", - "openssl": "1.1.1b", - "cldr": "35.1", - "icu": "64.1", - "tz": "2019a", - "unicode": "12.0" - }, - "release": { - "name": "node", - "headersUrl": "https://nodejs.org/download/release/v11.14.0/node-v11.14.0-headers.tar.gz", - "sourceUrl": "https://nodejs.org/download/release/v11.14.0/node-v11.14.0.tar.gz" - }, - "osName": "Linux", - "osRelease": "5.0.9-arch1-1-ARCH", - "osVersion": "#1 SMP PREEMPT Sat Apr 20 15:00:46 UTC 2019", - "osMachine": "x86_64", - "host": "bean" - }, - "javascriptStack": { - "message": "No stack.", - "stack": [ - "Unavailable." - ] - }, - "nativeStack": [ - { - "pc": "0x0000555cfd180211", - "symbol": "report::TriggerNodeReport(v8::Isolate*, node::Environment*, char const*, char const*, std::__cxx11::basic_string, std::allocator > const&, v8::Local) [node]" - }, - { - "pc": "0x0000555cfd07174f", - "symbol": "node::OnFatalError(char const*, char const*) [node]" - }, - { - "pc": "0x0000555cfd20b7b2", - "symbol": "v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [node]" - }, - { - "pc": "0x0000555cfd20ba0b", - "symbol": "v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [node]" - }, - { - "pc": "0x0000555cfd5a37d3", - "symbol": " [node]" - }, - { - "pc": "0x0000555cfd5a3914", - "symbol": " [node]" - }, - { - "pc": "0x0000555cfd5b34c6", - "symbol": "v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [node]" - }, - { - "pc": "0x0000555cfd5b3e6e", - "symbol": "v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [node]" - }, - { - "pc": "0x0000555cfd5b606d", - "symbol": "v8::internal::Heap::AllocateRawWithLightRetry(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [node]" - }, - { - "pc": "0x0000555cfd5b60c2", - "symbol": "v8::internal::Heap::AllocateRawWithRetryOrFail(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [node]" - }, - { - "pc": "0x0000555cfd584a05", - "symbol": "v8::internal::Factory::NewFillerObject(int, bool, v8::internal::AllocationSpace) [node]" - }, - { - "pc": "0x0000555cfd7f33ff", - "symbol": "v8::internal::Runtime_AllocateInTargetSpace(int, v8::internal::Object**, v8::internal::Isolate*) [node]" - }, - { - "pc": "0x000009e05244fc5d", - "symbol": "" - } - ], - "javascriptHeap": { - "totalMemory": 1350656000, - "totalCommittedMemory": 1346619640, - "usedMemory": 1295669064, - "availableMemory": 180235680, - "memoryLimit": 1526909922, - "heapSpaces": { - "read_only_space": { - "memorySize": 524288, - "committedMemory": 42224, - "capacity": 515584, - "used": 33520, - "available": 482064 - }, - "new_space": { - "memorySize": 2097152, - "committedMemory": 921128, - "capacity": 1031168, - "used": 234848, - "available": 796320 - }, - "old_space": { - "memorySize": 1213927424, - "committedMemory": 1211969600, - "capacity": 1170317992, - "used": 1167422648, - "available": 2895344 - }, - "code_space": { - "memorySize": 6815744, - "committedMemory": 6395936, - "capacity": 5857536, - "used": 5857536, - "available": 0 - }, - "map_space": { - "memorySize": 4730880, - "committedMemory": 4730240, - "capacity": 1545360, - "used": 1545360, - "available": 0 - }, - "large_object_space": { - "memorySize": 122560512, - "committedMemory": 122560512, - "capacity": 296637104, - "used": 120575152, - "available": 176061952 - }, - "new_large_object_space": { - "memorySize": 0, - "committedMemory": 0, - "capacity": 0, - "used": 0, - "available": 0 - } - } - }, - "resourceUsage": { - "userCpuSeconds": 198.134, - "kernelCpuSeconds": 6.35618, - "cpuConsumptionPercent": 189.343, - "maxRss": 1552519168, - "pageFaults": { - "IORequired": 0, - "IONotRequired": 3314125 - }, - "fsActivity": { - "reads": 0, - "writes": 0 - } - }, - "uvthreadResourceUsage": { - "userCpuSeconds": 102.341, - "kernelCpuSeconds": 3.47489, - "cpuConsumptionPercent": 97.9777, - "fsActivity": { - "reads": 0, - "writes": 0 - } - }, - "libuv": [ - ], - "environmentVariables": { - "SHELL": "/bin/zsh", - "XDG_SESSION_PATH": "/org/freedesktop/DisplayManager/Session0", - "VSCODE_GIT_ASKPASS_HANDLE": "/run/user/1000/vscode-git-askpass-71794351e1d694e719a4f923bbb206e5bc0a2b31.sock", - "APPLICATION_INSIGHTS_NO_DIAGNOSTIC_CHANNEL": "true", - "VSCODE_LOG_STACK": "false", - "VSCODE_LOGS": "/home/petty/.config/Code - OSS/logs/20190530T142636", - "ELECTRON_RUN_AS_NODE": "1", - "DESKTOP_SESSION": "i3-with-shmlog", - "EDITOR": "/usr/bin/nano", - "GTK_MODULES": "canberra-gtk-module", - "GIT_INDEX_FILE": "/home/petty/Github/status-im/token-economy-1/.git/index.lock", - "XDG_SEAT": "seat0", - "PWD": "/home/petty/Github/status-im/token-economy-1", - "XDG_SESSION_DESKTOP": "i3-with-shmlog", - "LOGNAME": "petty", - "QT_QPA_PLATFORMTHEME": "qt5ct", - "XDG_SESSION_TYPE": "x11", - "_": "/home/petty/Github/status-im/token-economy-1/node_modules/.bin/lint-staged", - "XAUTHORITY": "/home/petty/.Xauthority", - "VSCODE_GIT_ASKPASS_NODE": "/usr/lib/electron/electron", - "GIT_AUTHOR_DATE": "@1559260867 -0400", - "XDG_GREETER_DATA_DIR": "/var/lib/lightdm-data/petty", - "VSCODE_PREVENT_FOREIGN_INSPECT": "true", - "GIT_EXEC_PATH": "/usr/lib/git-core", - "HOME": "/home/petty", - "LANG": "en_US.UTF-8", - "VSCODE_IPC_HOOK_EXTHOST": "/tmp/vscode-ipc-32c67fb1-578a-4ff5-80b3-72c275e99bcc.sock", - "VSCODE_IPC_HOOK": "/run/user/1000/vscode-ab2990ac-1.33.1-main.sock", - "VSCODE_CLI": "1", - "GIT_ASKPASS": "/usr/lib/code/extensions/git/dist/askpass.sh", - "XDG_SEAT_PATH": "/org/freedesktop/DisplayManager/Seat0", - "GIT_AUTHOR_EMAIL": "corey@status.im", - "GIT_PREFIX": "", - "XDG_SESSION_CLASS": "user", - "USER": "petty", - "AMD_ENTRYPOINT": "vs/workbench/services/extensions/node/extensionHostProcess", - "VSCODE_GIT_COMMAND": "commit", - "DISPLAY": ":0", - "SHLVL": "2", - "GIT_EDITOR": ":", - "XDG_VTNR": "7", - "XDG_SESSION_ID": "2", - "MOZ_PLUGIN_PATH": "/usr/lib/mozilla/plugins", - "XDG_RUNTIME_DIR": "/run/user/1000", - "VERBOSE_LOGGING": "true", - "LC_ALL": "en_US.UTF-8", - "ELECTRON_NO_ATTACH_CONSOLE": "1", - "VSCODE_GIT_ASKPASS_MAIN": "/usr/lib/code/extensions/git/dist/askpass-main.js", - "LC_COLLATE": "en_US.UTF-8", - "GIT_AUTHOR_NAME": "Corey Petty", - "BROWSER": "/usr/bin/chromium", - "PATH": "/home/petty/Github/status-im/token-economy-1/node_modules/.bin:/home/petty/Github/status-im/node_modules/.bin:/home/petty/Github/node_modules/.bin:/home/petty/node_modules/.bin:/home/node_modules/.bin:/node_modules/.bin:/usr/bin:/home/petty/Github/status-im/token-economy-1/node_modules/.bin:/home/petty/Github/status-im/node_modules/.bin:/home/petty/Github/node_modules/.bin:/home/petty/node_modules/.bin:/home/node_modules/.bin:/node_modules/.bin:/usr/bin:/usr/lib/git-core:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl", - "PIPE_LOGGING": "true", - "GDMSESSION": "i3-with-shmlog", - "DBUS_SESSION_BUS_ADDRESS": "unix:path=/run/user/1000/bus", - "VSCODE_NLS_CONFIG": "{\"locale\":\"en-us\",\"availableLanguages\":{},\"_languagePackSupport\":true}", - "MAIL": "/var/spool/mail/petty", - "VSCODE_HANDLES_UNCAUGHT_ERRORS": "true" - }, - "userLimits": { - "core_file_size_blocks": { - "soft": "unlimited", - "hard": "unlimited" - }, - "data_seg_size_kbytes": { - "soft": "unlimited", - "hard": "unlimited" - }, - "file_size_blocks": { - "soft": "unlimited", - "hard": "unlimited" - }, - "max_locked_memory_bytes": { - "soft": 65536, - "hard": 65536 - }, - "max_memory_size_kbytes": { - "soft": "unlimited", - "hard": "unlimited" - }, - "open_files": { - "soft": 524288, - "hard": 524288 - }, - "stack_size_bytes": { - "soft": 8388608, - "hard": "unlimited" - }, - "cpu_time_seconds": { - "soft": "unlimited", - "hard": "unlimited" - }, - "max_user_processes": { - "soft": 128362, - "hard": 128362 - }, - "virtual_memory_kbytes": { - "soft": "unlimited", - "hard": "unlimited" - } - }, - "sharedObjects": [ - "linux-vdso.so.1", - "/usr/lib/libz.so.1", - "/usr/lib/libuv.so.1", - "/usr/lib/libcares.so.2", - "/usr/lib/libnghttp2.so.14", - "/usr/lib/libcrypto.so.1.1", - "/usr/lib/libssl.so.1.1", - "/usr/lib/libicui18n.so.64", - "/usr/lib/libicuuc.so.64", - "/usr/lib/libdl.so.2", - "/usr/lib/librt.so.1", - "/usr/lib/libstdc++.so.6", - "/usr/lib/libm.so.6", - "/usr/lib/libgcc_s.so.1", - "/usr/lib/libpthread.so.0", - "/usr/lib/libc.so.6", - "/usr/lib/libnsl.so.2", - "/usr/lib/libicudata.so.64", - "/lib64/ld-linux-x86-64.so.2", - "/usr/lib/libtirpc.so.3", - "/usr/lib/libgssapi_krb5.so.2", - "/usr/lib/libkrb5.so.3", - "/usr/lib/libk5crypto.so.3", - "/usr/lib/libcom_err.so.2", - "/usr/lib/libkrb5support.so.0", - "/usr/lib/libkeyutils.so.1", - "/usr/lib/libresolv.so.2" - ] -} \ No newline at end of file diff --git a/report.20190531.095458.26842.0.001.json b/report.20190531.095458.26842.0.001.json deleted file mode 100644 index a158b77..0000000 --- a/report.20190531.095458.26842.0.001.json +++ /dev/null @@ -1,331 +0,0 @@ - -{ - "header": { - "event": "Allocation failed - JavaScript heap out of memory", - "trigger": "FatalError", - "filename": "report.20190531.095458.26842.0.001.json", - "dumpEventTime": "2019-05-31T09:54:58Z", - "dumpEventTimeStamp": "1559310898137", - "processId": 26842, - "cwd": "/home/petty/Github/status-im/token-economy-1", - "commandLine": [ - "node", - "/home/petty/Github/status-im/token-economy-1/node_modules/.bin/eslint", - "--fix", - "/home/petty/Github/status-im/token-economy-1/src/App.jsx", - "/home/petty/Github/status-im/token-economy-1/src/App.css", - "/home/petty/Github/status-im/token-economy-1/build/js/vendors.640951b04ffd2402a5eb.js", - "/home/petty/Github/status-im/token-economy-1/build/js/runtime~main.d26192c48fdcce4d50bb.js", - "/home/petty/Github/status-im/token-economy-1/build/js/main.5e2e15d48fe1364e50b0.js", - "/home/petty/Github/status-im/token-economy-1/build/css/main.css" - ], - "nodejsVersion": "v11.14.0", - "glibcVersionRuntime": "2.29", - "glibcVersionCompiler": "2.28", - "wordSize": 64, - "arch": "x64", - "platform": "linux", - "componentVersions": { - "node": "11.14.0", - "v8": "7.0.276.38-node.18", - "uv": "1.28.0", - "zlib": "1.2.11", - "brotli": "1.0.7", - "ares": "1.15.0", - "modules": "67", - "nghttp2": "1.36.0", - "napi": "4", - "llhttp": "1.1.1", - "http_parser": "2.8.0", - "openssl": "1.1.1b", - "cldr": "35.1", - "icu": "64.1", - "tz": "2019a", - "unicode": "12.0" - }, - "release": { - "name": "node", - "headersUrl": "https://nodejs.org/download/release/v11.14.0/node-v11.14.0-headers.tar.gz", - "sourceUrl": "https://nodejs.org/download/release/v11.14.0/node-v11.14.0.tar.gz" - }, - "osName": "Linux", - "osRelease": "5.0.9-arch1-1-ARCH", - "osVersion": "#1 SMP PREEMPT Sat Apr 20 15:00:46 UTC 2019", - "osMachine": "x86_64", - "host": "bean" - }, - "javascriptStack": { - "message": "No stack.", - "stack": [ - "Unavailable." - ] - }, - "nativeStack": [ - { - "pc": "0x000055f647b77211", - "symbol": "report::TriggerNodeReport(v8::Isolate*, node::Environment*, char const*, char const*, std::__cxx11::basic_string, std::allocator > const&, v8::Local) [node]" - }, - { - "pc": "0x000055f647a6874f", - "symbol": "node::OnFatalError(char const*, char const*) [node]" - }, - { - "pc": "0x000055f647c027b2", - "symbol": "v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [node]" - }, - { - "pc": "0x000055f647c02a0b", - "symbol": "v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [node]" - }, - { - "pc": "0x000055f647f9a7d3", - "symbol": " [node]" - }, - { - "pc": "0x000055f647f9a914", - "symbol": " [node]" - }, - { - "pc": "0x000055f647faa4c6", - "symbol": "v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [node]" - }, - { - "pc": "0x000055f647faae6e", - "symbol": "v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [node]" - }, - { - "pc": "0x000055f647fad06d", - "symbol": "v8::internal::Heap::AllocateRawWithLightRetry(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [node]" - }, - { - "pc": "0x000055f647fad0c2", - "symbol": "v8::internal::Heap::AllocateRawWithRetryOrFail(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [node]" - }, - { - "pc": "0x000055f647f7ba05", - "symbol": "v8::internal::Factory::NewFillerObject(int, bool, v8::internal::AllocationSpace) [node]" - }, - { - "pc": "0x000055f6481ea3ff", - "symbol": "v8::internal::Runtime_AllocateInTargetSpace(int, v8::internal::Object**, v8::internal::Isolate*) [node]" - }, - { - "pc": "0x00002b00100cfc5d", - "symbol": "" - } - ], - "javascriptHeap": { - "totalMemory": 1359802368, - "totalCommittedMemory": 1355265208, - "usedMemory": 1301307744, - "availableMemory": 170743560, - "memoryLimit": 1526909922, - "heapSpaces": { - "read_only_space": { - "memorySize": 524288, - "committedMemory": 42224, - "capacity": 515584, - "used": 33520, - "available": 482064 - }, - "new_space": { - "memorySize": 3145728, - "committedMemory": 1059680, - "capacity": 1546752, - "used": 155248, - "available": 1391504 - }, - "old_space": { - "memorySize": 1217073152, - "committedMemory": 1215534952, - "capacity": 1170748464, - "used": 1168794056, - "available": 1954408 - }, - "code_space": { - "memorySize": 6815744, - "committedMemory": 6385600, - "capacity": 5813536, - "used": 5813536, - "available": 0 - }, - "map_space": { - "memorySize": 5255168, - "committedMemory": 5254464, - "capacity": 1532560, - "used": 1532560, - "available": 0 - }, - "large_object_space": { - "memorySize": 126988288, - "committedMemory": 126988288, - "capacity": 291894408, - "used": 124978824, - "available": 166915584 - }, - "new_large_object_space": { - "memorySize": 0, - "committedMemory": 0, - "capacity": 0, - "used": 0, - "available": 0 - } - } - }, - "resourceUsage": { - "userCpuSeconds": 195.857, - "kernelCpuSeconds": 6.21781, - "cpuConsumptionPercent": 190.637, - "maxRss": 1573789696, - "pageFaults": { - "IORequired": 0, - "IONotRequired": 3741500 - }, - "fsActivity": { - "reads": 0, - "writes": 0 - } - }, - "uvthreadResourceUsage": { - "userCpuSeconds": 100.384, - "kernelCpuSeconds": 3.73878, - "cpuConsumptionPercent": 98.2288, - "fsActivity": { - "reads": 0, - "writes": 0 - } - }, - "libuv": [ - ], - "environmentVariables": { - "SHELL": "/bin/zsh", - "XDG_SESSION_PATH": "/org/freedesktop/DisplayManager/Session0", - "VSCODE_GIT_ASKPASS_HANDLE": "/run/user/1000/vscode-git-askpass-0b5315ab11a49d8bb5e6e45810668db6b53c8345.sock", - "APPLICATION_INSIGHTS_NO_DIAGNOSTIC_CHANNEL": "true", - "VSCODE_LOG_STACK": "false", - "VSCODE_LOGS": "/home/petty/.config/Code - OSS/logs/20190531T095258", - "ELECTRON_RUN_AS_NODE": "1", - "DESKTOP_SESSION": "i3-with-shmlog", - "EDITOR": "/usr/bin/nano", - "GTK_MODULES": "canberra-gtk-module", - "GIT_INDEX_FILE": ".git/index", - "XDG_SEAT": "seat0", - "PWD": "/home/petty/Github/status-im/token-economy-1", - "XDG_SESSION_DESKTOP": "i3-with-shmlog", - "LOGNAME": "petty", - "QT_QPA_PLATFORMTHEME": "qt5ct", - "XDG_SESSION_TYPE": "x11", - "_": "/home/petty/Github/status-im/token-economy-1/node_modules/.bin/lint-staged", - "XAUTHORITY": "/home/petty/.Xauthority", - "VSCODE_GIT_ASKPASS_NODE": "/usr/lib/electron/electron", - "GIT_AUTHOR_DATE": "@1559310787 -0400", - "XDG_GREETER_DATA_DIR": "/var/lib/lightdm-data/petty", - "VSCODE_PREVENT_FOREIGN_INSPECT": "true", - "GIT_EXEC_PATH": "/usr/lib/git-core", - "HOME": "/home/petty", - "LANG": "en_US.UTF-8", - "VSCODE_IPC_HOOK_EXTHOST": "/tmp/vscode-ipc-d757b01b-898e-44d1-b9cd-f475cb2d70ab.sock", - "VSCODE_IPC_HOOK": "/run/user/1000/vscode-ab2990ac-1.33.1-main.sock", - "VSCODE_CLI": "1", - "GIT_ASKPASS": "/usr/lib/code/extensions/git/dist/askpass.sh", - "XDG_SEAT_PATH": "/org/freedesktop/DisplayManager/Seat0", - "GIT_AUTHOR_EMAIL": "corey@status.im", - "GIT_PREFIX": "", - "XDG_SESSION_CLASS": "user", - "USER": "petty", - "AMD_ENTRYPOINT": "vs/workbench/services/extensions/node/extensionHostProcess", - "VSCODE_GIT_COMMAND": "commit", - "DISPLAY": ":0", - "SHLVL": "2", - "GIT_EDITOR": ":", - "XDG_VTNR": "7", - "XDG_SESSION_ID": "2", - "MOZ_PLUGIN_PATH": "/usr/lib/mozilla/plugins", - "XDG_RUNTIME_DIR": "/run/user/1000", - "VERBOSE_LOGGING": "true", - "LC_ALL": "en_US.UTF-8", - "ELECTRON_NO_ATTACH_CONSOLE": "1", - "VSCODE_GIT_ASKPASS_MAIN": "/usr/lib/code/extensions/git/dist/askpass-main.js", - "LC_COLLATE": "en_US.UTF-8", - "GIT_AUTHOR_NAME": "Corey Petty", - "BROWSER": "/usr/bin/chromium", - "PATH": "/home/petty/Github/status-im/token-economy-1/node_modules/.bin:/home/petty/Github/status-im/node_modules/.bin:/home/petty/Github/node_modules/.bin:/home/petty/node_modules/.bin:/home/node_modules/.bin:/node_modules/.bin:/usr/bin:/home/petty/Github/status-im/token-economy-1/node_modules/.bin:/home/petty/Github/status-im/node_modules/.bin:/home/petty/Github/node_modules/.bin:/home/petty/node_modules/.bin:/home/node_modules/.bin:/node_modules/.bin:/usr/bin:/usr/lib/git-core:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl", - "PIPE_LOGGING": "true", - "GDMSESSION": "i3-with-shmlog", - "DBUS_SESSION_BUS_ADDRESS": "unix:path=/run/user/1000/bus", - "VSCODE_NLS_CONFIG": "{\"locale\":\"en-us\",\"availableLanguages\":{},\"_languagePackSupport\":true}", - "MAIL": "/var/spool/mail/petty", - "VSCODE_HANDLES_UNCAUGHT_ERRORS": "true" - }, - "userLimits": { - "core_file_size_blocks": { - "soft": "unlimited", - "hard": "unlimited" - }, - "data_seg_size_kbytes": { - "soft": "unlimited", - "hard": "unlimited" - }, - "file_size_blocks": { - "soft": "unlimited", - "hard": "unlimited" - }, - "max_locked_memory_bytes": { - "soft": 65536, - "hard": 65536 - }, - "max_memory_size_kbytes": { - "soft": "unlimited", - "hard": "unlimited" - }, - "open_files": { - "soft": 524288, - "hard": 524288 - }, - "stack_size_bytes": { - "soft": 8388608, - "hard": "unlimited" - }, - "cpu_time_seconds": { - "soft": "unlimited", - "hard": "unlimited" - }, - "max_user_processes": { - "soft": 128362, - "hard": 128362 - }, - "virtual_memory_kbytes": { - "soft": "unlimited", - "hard": "unlimited" - } - }, - "sharedObjects": [ - "linux-vdso.so.1", - "/usr/lib/libz.so.1", - "/usr/lib/libuv.so.1", - "/usr/lib/libcares.so.2", - "/usr/lib/libnghttp2.so.14", - "/usr/lib/libcrypto.so.1.1", - "/usr/lib/libssl.so.1.1", - "/usr/lib/libicui18n.so.64", - "/usr/lib/libicuuc.so.64", - "/usr/lib/libdl.so.2", - "/usr/lib/librt.so.1", - "/usr/lib/libstdc++.so.6", - "/usr/lib/libm.so.6", - "/usr/lib/libgcc_s.so.1", - "/usr/lib/libpthread.so.0", - "/usr/lib/libc.so.6", - "/usr/lib/libnsl.so.2", - "/usr/lib/libicudata.so.64", - "/lib64/ld-linux-x86-64.so.2", - "/usr/lib/libtirpc.so.3", - "/usr/lib/libgssapi_krb5.so.2", - "/usr/lib/libkrb5.so.3", - "/usr/lib/libk5crypto.so.3", - "/usr/lib/libcom_err.so.2", - "/usr/lib/libkrb5support.so.0", - "/usr/lib/libkeyutils.so.1", - "/usr/lib/libresolv.so.2" - ] -} \ No newline at end of file diff --git a/report.20190531.095500.26942.0.001.json b/report.20190531.095500.26942.0.001.json deleted file mode 100644 index 9e24cee..0000000 --- a/report.20190531.095500.26942.0.001.json +++ /dev/null @@ -1,331 +0,0 @@ - -{ - "header": { - "event": "Allocation failed - JavaScript heap out of memory", - "trigger": "FatalError", - "filename": "report.20190531.095500.26942.0.001.json", - "dumpEventTime": "2019-05-31T09:55:00Z", - "dumpEventTimeStamp": "1559310900105", - "processId": 26942, - "cwd": "/home/petty/Github/status-im/token-economy-1", - "commandLine": [ - "node", - "/home/petty/Github/status-im/token-economy-1/node_modules/.bin/eslint", - "--fix", - "/home/petty/Github/status-im/token-economy-1/src/App.jsx", - "/home/petty/Github/status-im/token-economy-1/src/App.css", - "/home/petty/Github/status-im/token-economy-1/build/js/vendors.640951b04ffd2402a5eb.js", - "/home/petty/Github/status-im/token-economy-1/build/js/runtime~main.d26192c48fdcce4d50bb.js", - "/home/petty/Github/status-im/token-economy-1/build/js/main.5e2e15d48fe1364e50b0.js", - "/home/petty/Github/status-im/token-economy-1/build/css/main.css" - ], - "nodejsVersion": "v11.14.0", - "glibcVersionRuntime": "2.29", - "glibcVersionCompiler": "2.28", - "wordSize": 64, - "arch": "x64", - "platform": "linux", - "componentVersions": { - "node": "11.14.0", - "v8": "7.0.276.38-node.18", - "uv": "1.28.0", - "zlib": "1.2.11", - "brotli": "1.0.7", - "ares": "1.15.0", - "modules": "67", - "nghttp2": "1.36.0", - "napi": "4", - "llhttp": "1.1.1", - "http_parser": "2.8.0", - "openssl": "1.1.1b", - "cldr": "35.1", - "icu": "64.1", - "tz": "2019a", - "unicode": "12.0" - }, - "release": { - "name": "node", - "headersUrl": "https://nodejs.org/download/release/v11.14.0/node-v11.14.0-headers.tar.gz", - "sourceUrl": "https://nodejs.org/download/release/v11.14.0/node-v11.14.0.tar.gz" - }, - "osName": "Linux", - "osRelease": "5.0.9-arch1-1-ARCH", - "osVersion": "#1 SMP PREEMPT Sat Apr 20 15:00:46 UTC 2019", - "osMachine": "x86_64", - "host": "bean" - }, - "javascriptStack": { - "message": "No stack.", - "stack": [ - "Unavailable." - ] - }, - "nativeStack": [ - { - "pc": "0x000055c908181211", - "symbol": "report::TriggerNodeReport(v8::Isolate*, node::Environment*, char const*, char const*, std::__cxx11::basic_string, std::allocator > const&, v8::Local) [node]" - }, - { - "pc": "0x000055c90807274f", - "symbol": "node::OnFatalError(char const*, char const*) [node]" - }, - { - "pc": "0x000055c90820c7b2", - "symbol": "v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, bool) [node]" - }, - { - "pc": "0x000055c90820ca0b", - "symbol": "v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, bool) [node]" - }, - { - "pc": "0x000055c9085a47d3", - "symbol": " [node]" - }, - { - "pc": "0x000055c9085a4914", - "symbol": " [node]" - }, - { - "pc": "0x000055c9085b44c6", - "symbol": "v8::internal::Heap::PerformGarbageCollection(v8::internal::GarbageCollector, v8::GCCallbackFlags) [node]" - }, - { - "pc": "0x000055c9085b4e6e", - "symbol": "v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [node]" - }, - { - "pc": "0x000055c9085b706d", - "symbol": "v8::internal::Heap::AllocateRawWithLightRetry(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [node]" - }, - { - "pc": "0x000055c9085b70c2", - "symbol": "v8::internal::Heap::AllocateRawWithRetryOrFail(int, v8::internal::AllocationSpace, v8::internal::AllocationAlignment) [node]" - }, - { - "pc": "0x000055c908585a05", - "symbol": "v8::internal::Factory::NewFillerObject(int, bool, v8::internal::AllocationSpace) [node]" - }, - { - "pc": "0x000055c9087f43ff", - "symbol": "v8::internal::Runtime_AllocateInTargetSpace(int, v8::internal::Object**, v8::internal::Isolate*) [node]" - }, - { - "pc": "0x00001c341104fc5d", - "symbol": "" - } - ], - "javascriptHeap": { - "totalMemory": 1349722112, - "totalCommittedMemory": 1345612976, - "usedMemory": 1291148456, - "availableMemory": 180586912, - "memoryLimit": 1526909922, - "heapSpaces": { - "read_only_space": { - "memorySize": 524288, - "committedMemory": 42224, - "capacity": 515584, - "used": 33520, - "available": 482064 - }, - "new_space": { - "memorySize": 4194304, - "committedMemory": 2289728, - "capacity": 2062336, - "used": 583216, - "available": 1479120 - }, - "old_space": { - "memorySize": 1212878848, - "committedMemory": 1211594528, - "capacity": 1166813536, - "used": 1165183648, - "available": 1629888 - }, - "code_space": { - "memorySize": 6815744, - "committedMemory": 6378272, - "capacity": 5732544, - "used": 5732544, - "available": 0 - }, - "map_space": { - "memorySize": 5255168, - "committedMemory": 5254464, - "capacity": 1533120, - "used": 1533120, - "available": 0 - }, - "large_object_space": { - "memorySize": 120053760, - "committedMemory": 120053760, - "capacity": 295078248, - "used": 118082408, - "available": 176995840 - }, - "new_large_object_space": { - "memorySize": 0, - "committedMemory": 0, - "capacity": 0, - "used": 0, - "available": 0 - } - } - }, - "resourceUsage": { - "userCpuSeconds": 186.822, - "kernelCpuSeconds": 5.44125, - "cpuConsumptionPercent": 200.274, - "maxRss": 1548591104, - "pageFaults": { - "IORequired": 0, - "IONotRequired": 2541040 - }, - "fsActivity": { - "reads": 0, - "writes": 0 - } - }, - "uvthreadResourceUsage": { - "userCpuSeconds": 91.2728, - "kernelCpuSeconds": 3.00968, - "cpuConsumptionPercent": 98.2109, - "fsActivity": { - "reads": 0, - "writes": 0 - } - }, - "libuv": [ - ], - "environmentVariables": { - "SHELL": "/bin/zsh", - "XDG_SESSION_PATH": "/org/freedesktop/DisplayManager/Session0", - "VSCODE_GIT_ASKPASS_HANDLE": "/run/user/1000/vscode-git-askpass-0b5315ab11a49d8bb5e6e45810668db6b53c8345.sock", - "APPLICATION_INSIGHTS_NO_DIAGNOSTIC_CHANNEL": "true", - "VSCODE_LOG_STACK": "false", - "VSCODE_LOGS": "/home/petty/.config/Code - OSS/logs/20190531T095258", - "ELECTRON_RUN_AS_NODE": "1", - "DESKTOP_SESSION": "i3-with-shmlog", - "EDITOR": "/usr/bin/nano", - "GTK_MODULES": "canberra-gtk-module", - "GIT_INDEX_FILE": "/home/petty/Github/status-im/token-economy-1/.git/index.lock", - "XDG_SEAT": "seat0", - "PWD": "/home/petty/Github/status-im/token-economy-1", - "XDG_SESSION_DESKTOP": "i3-with-shmlog", - "LOGNAME": "petty", - "QT_QPA_PLATFORMTHEME": "qt5ct", - "XDG_SESSION_TYPE": "x11", - "_": "/home/petty/Github/status-im/token-economy-1/node_modules/.bin/lint-staged", - "XAUTHORITY": "/home/petty/.Xauthority", - "VSCODE_GIT_ASKPASS_NODE": "/usr/lib/electron/electron", - "GIT_AUTHOR_DATE": "@1559310799 -0400", - "XDG_GREETER_DATA_DIR": "/var/lib/lightdm-data/petty", - "VSCODE_PREVENT_FOREIGN_INSPECT": "true", - "GIT_EXEC_PATH": "/usr/lib/git-core", - "HOME": "/home/petty", - "LANG": "en_US.UTF-8", - "VSCODE_IPC_HOOK_EXTHOST": "/tmp/vscode-ipc-d757b01b-898e-44d1-b9cd-f475cb2d70ab.sock", - "VSCODE_IPC_HOOK": "/run/user/1000/vscode-ab2990ac-1.33.1-main.sock", - "VSCODE_CLI": "1", - "GIT_ASKPASS": "/usr/lib/code/extensions/git/dist/askpass.sh", - "XDG_SEAT_PATH": "/org/freedesktop/DisplayManager/Seat0", - "GIT_AUTHOR_EMAIL": "corey@status.im", - "GIT_PREFIX": "", - "XDG_SESSION_CLASS": "user", - "USER": "petty", - "AMD_ENTRYPOINT": "vs/workbench/services/extensions/node/extensionHostProcess", - "VSCODE_GIT_COMMAND": "commit", - "DISPLAY": ":0", - "SHLVL": "2", - "GIT_EDITOR": ":", - "XDG_VTNR": "7", - "XDG_SESSION_ID": "2", - "MOZ_PLUGIN_PATH": "/usr/lib/mozilla/plugins", - "XDG_RUNTIME_DIR": "/run/user/1000", - "VERBOSE_LOGGING": "true", - "LC_ALL": "en_US.UTF-8", - "ELECTRON_NO_ATTACH_CONSOLE": "1", - "VSCODE_GIT_ASKPASS_MAIN": "/usr/lib/code/extensions/git/dist/askpass-main.js", - "LC_COLLATE": "en_US.UTF-8", - "GIT_AUTHOR_NAME": "Corey Petty", - "BROWSER": "/usr/bin/chromium", - "PATH": "/home/petty/Github/status-im/token-economy-1/node_modules/.bin:/home/petty/Github/status-im/node_modules/.bin:/home/petty/Github/node_modules/.bin:/home/petty/node_modules/.bin:/home/node_modules/.bin:/node_modules/.bin:/usr/bin:/home/petty/Github/status-im/token-economy-1/node_modules/.bin:/home/petty/Github/status-im/node_modules/.bin:/home/petty/Github/node_modules/.bin:/home/petty/node_modules/.bin:/home/node_modules/.bin:/node_modules/.bin:/usr/bin:/usr/lib/git-core:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl", - "PIPE_LOGGING": "true", - "GDMSESSION": "i3-with-shmlog", - "DBUS_SESSION_BUS_ADDRESS": "unix:path=/run/user/1000/bus", - "VSCODE_NLS_CONFIG": "{\"locale\":\"en-us\",\"availableLanguages\":{},\"_languagePackSupport\":true}", - "MAIL": "/var/spool/mail/petty", - "VSCODE_HANDLES_UNCAUGHT_ERRORS": "true" - }, - "userLimits": { - "core_file_size_blocks": { - "soft": "unlimited", - "hard": "unlimited" - }, - "data_seg_size_kbytes": { - "soft": "unlimited", - "hard": "unlimited" - }, - "file_size_blocks": { - "soft": "unlimited", - "hard": "unlimited" - }, - "max_locked_memory_bytes": { - "soft": 65536, - "hard": 65536 - }, - "max_memory_size_kbytes": { - "soft": "unlimited", - "hard": "unlimited" - }, - "open_files": { - "soft": 524288, - "hard": 524288 - }, - "stack_size_bytes": { - "soft": 8388608, - "hard": "unlimited" - }, - "cpu_time_seconds": { - "soft": "unlimited", - "hard": "unlimited" - }, - "max_user_processes": { - "soft": 128362, - "hard": 128362 - }, - "virtual_memory_kbytes": { - "soft": "unlimited", - "hard": "unlimited" - } - }, - "sharedObjects": [ - "linux-vdso.so.1", - "/usr/lib/libz.so.1", - "/usr/lib/libuv.so.1", - "/usr/lib/libcares.so.2", - "/usr/lib/libnghttp2.so.14", - "/usr/lib/libcrypto.so.1.1", - "/usr/lib/libssl.so.1.1", - "/usr/lib/libicui18n.so.64", - "/usr/lib/libicuuc.so.64", - "/usr/lib/libdl.so.2", - "/usr/lib/librt.so.1", - "/usr/lib/libstdc++.so.6", - "/usr/lib/libm.so.6", - "/usr/lib/libgcc_s.so.1", - "/usr/lib/libpthread.so.0", - "/usr/lib/libc.so.6", - "/usr/lib/libnsl.so.2", - "/usr/lib/libicudata.so.64", - "/lib64/ld-linux-x86-64.so.2", - "/usr/lib/libtirpc.so.3", - "/usr/lib/libgssapi_krb5.so.2", - "/usr/lib/libkrb5.so.3", - "/usr/lib/libk5crypto.so.3", - "/usr/lib/libcom_err.so.2", - "/usr/lib/libkrb5support.so.0", - "/usr/lib/libkeyutils.so.1", - "/usr/lib/libresolv.so.2" - ] -} \ No newline at end of file diff --git a/src/App.jsx b/src/App.jsx index ee105dd..ccf2222 100644 --- a/src/App.jsx +++ b/src/App.jsx @@ -1,8 +1,8 @@ import React, { Component } from 'react'; import { hot } from 'react-hot-loader/root'; import { Runtime, Inspector } from '@observablehq/runtime'; -import notebook from '@corpetty/test-graph-embed'; -import Latex from 'react-latex'; +import notebook from '@corpetty/status-sticker-market-blog-embed'; +// import Latex from 'react-latex'; import style from './App.css'; class App extends Component { @@ -21,26 +21,17 @@ class App extends Component { if (name === 'viewof userbar') { return new Inspector(this.userbarRef.current); } - if (name === 'viewof percentUsersRegisterName') { - return new Inspector(this.userConversionRef.current); - } - if (name === 'viewof removalRate') { - return new Inspector(this.removalRateRef.current); - } - if (name === 'viewof ensUserbar') { - return new Inspector(this.ensUserbarRef.current); - } - if (name === 'viewof dollarPriceDomain') { - return new Inspector(this.dollarPriceDomainRef.current); - } if (name === 'viewof discountRate') { return new Inspector(this.discountRateRef.current); } - if (name === 'viewof lockedUsdBar') { - return new Inspector(this.lockedUsdBarRef.current); + if (name === 'viewof percentUserBuysPack') { + return new Inspector(this.percentUserBuysPackRef.current); } - if (name === 'viewof netPresentUtility') { - return new Inspector(this.netPresentUtilityRef.current); + if (name === 'viewof userBuyPerYear') { + return new Inspector(this.userBuyPerYearRef.current); + } + if (name === 'viewof dollarPriceStickers') { + return new Inspector(this.dollarPriceStickersRef.current); } return null; }); @@ -54,387 +45,58 @@ class App extends Component { userbarRef = React.createRef(); - userConversionRef = React.createRef(); - - removalRateRef = React.createRef(); - - ensUserbarRef = React.createRef(); - - dollarPriceDomainRef = React.createRef(); - discountRateRef = React.createRef(); - lockedUsdBarRef = React.createRef(); + percentUsersBuysPackRef = React.createRef(); - netPresentUtilityRef = React.createRef(); + userBuyPerYearRef = React.createRef(); + + dollarPriceStickersRef = React.createRef(); render() { return (

Introduction

+

- The Status Network has a utility token, the Status Network Token - (SNT). What does that even mean? What utilities does it have and how - do their uses affect the rest of the ecosystem? Does it impact value? - What even is the value of a utility token? -

-

- These questions are hard, and there does not seem to be sufficient - academic answers to them. The technology enabling a “utility token” is - new, and transcendent of many older technologies. This consequently - means the models used to evaluate the older technologies will never be - able to completely describe the newer ones. We, as a community, need - to build new ones and evaluate them rigorously. -

-

- There is currently quite a bit of work being done in this field, but - it is mostly for investment firms to make appropriate capital - allocation decisions among a diversified portfolio of cryptoassets. - While this is drastically important for growth and project funding, - there is a lack of research on capital and resource allocation inside - of a single network. More specifically, any utility token needs to be - able to objectively evaluate various features and utilities of their - platform, and how they affect their ecosystem. For instance, we need - to be able to ask questions like: - - “How can we objectively measure the difference in the rate users use - feature X in Status and its respective impact on the ecosystem?” - -

-

- We will be launching Status with the following SNT use-cases, as - described in the{' '} - whitepaper and{' '} - the website: -

    -
  • Teller Network
  • -
  • Tribute to Talk
  • -
  • ENS Usernames
  • -
  • Sticker Market
  • -
  • SNT Curated Dapp Store
  • -
  • Liquid Funding (may not be available at launch)
  • -
  • Network Incentivization (launching after V1)
  • -
  • User Acquisition Engine (launching after V1)
  • -
-

-

- Each of these features leverage the SNT token, but in very different - ways. For instance, some features will require staking, some will - actually burn the token, and some will incentivize sending and - receiving. This means each will have differing effects on the supply - and demand of the token itself, and will need to be modeled - differently. It doesn’t stop there as Status is an open and - permissionless platform for developers to build on and use, which - means that anyone can build SNT use-cases that affect the overall - supply and demand. But how do we know what effect a utility has? Where - do we go to try and evaluate its usefulness? -

-

- To this end, we are starting a blog series detailing some of the - research we are doing within Status to objectively evaluate the value - flows of SNT, the potential effects of our implemented (and upcoming) - SNT use cases within Status, and how our potential user growth impacts - SNT. This work will encompass traditional economic and finance theory, - work currently being done in crypto-economics, and novel methodology. - That means a part of this endeavor is an attempt to get peer review - and evaluation of what we do by you, the community! -

-

- - DISCLAIMER: The work in this article (and mentioned notebooks) is - for modeling purposes only. The numbers herein are not to project - actual values locked up in Status and should not be used for - investment advice. It is our strict desire to create and improve - models that describe value flow of SNT use-cases (and similar token - use-cases), and how these use-cases compare to each other. - -

-

- Let’s start with the ENS naming system. In Status, for a little SNT, - you can register your username on the Ethereum Name System (ENS) so - others can find you easily. In order for us to apply models or - understand the economics of a use case, we first have to understand - what it is, how it works, and how it fits within the Status ecosystem. - Let’s start by breaking down how ENS usernames work within Status: + Let’s start by breaking down how the Sticker Market work within + Status:

    -
  1. User selects a unique username, {``}
  2. -
  3. User deposits 10 SNT into the ENS username dapp
  4. -
  5. - User is granted sole control over the subdomain {``} - .stateofus.eth for 1 year -
  6. -
  7. - User is able to get deposited funds after this yearly period, and - release the username back into available names. -
  8. -
  9. - User is now searchable within Status as {``} or - {``}.stateofus.eth outside of the Status app. -
  10. +
  11. Artist posts a Sticker pack for sale
  12. +
  13. Artist sets price of sticker pack
  14. +
  15. User purchases Sticker pack for use
  16. +
  17. User uses Stickers in Sticker pack in chat

-

- The use case and token flow are both relatively simple, but what are - the effects on the network? Let’s first try and model what value this - could potentially accrue over time. We can start by picking out the - variables in this process to see how things depend on each other. - Furthermore, the above values are what we currently use, but in terms - of modeling, we should turn those into variables that allow us to see - what effect each has on the overall mechanism. This can help inform us - (and you) on appropriate choices. -

Discussion of variables

Number of Users

- It is clear that this all depends on how many users Status has in the - app. If they are not using Status, then they won’t use the feature. - This is our base metric, and we will model it using compounding growth - and loss. We can start with a number of users that are using the - network, and set additional growth and loss variables (in percentages) - that define how this number changes over the next 10 years. This means - that every year, we expect a certain percentage change in users based - on the numbers of the previous year. Depending on how you set those - percentages, the number of users can grow very rapidly! Go ahead and - play with the following variables to see how the number of users - change over the years. + Here we will reuse a lot of the user estimations from the previous + blog post on{` `} + + ENS usernames + + .

Conversion rate of users to ENS username

-

- Ok cool. We have our user base locked and loaded for the next 10 - years, but not everyone is going to register an ENS username. We can - brand it, make it simple, and incentivize people to do it but the - reality is that that number will never be 100%. So the number of - people that DO decide to register an ENS username is what we want. We - get this number by multiplying the total number of users by the - adoption conversion rate, which is another variable. -

-

- Now not all users will keep their usernames. Some people will remove - their deposit after the year and bring their SNT back into - circulation. Some people will leave Status altogether. If they never - manually release their SNT from the ENS username contract, it can be - considered locked forever. For this, we will continue to consider them - users because from the contract's perspective, they are - indistinguishable. We’ll model the people who release their username - with another conversion factor. Go ahead and change these variables - and see how the following graph changes. -

-
-
-
-

- US Dollar Amount of SNT to Deposit, Discount Rate, and Net Present - Value -

-

- Now the contract itself locks up a specific amount of SNT per - username, but the goal is to model around a reasonable target price in - US dollars and have the contract change over time to adapt as the - price of SNT changes. Why do we do this? In order to evaluate value - flow overtime we need a relatively stable unit by which to measure and - normalize the value flows. We use US dollars due to the size, - stability and data availability for that market. While one can argue - that US dollars do not maintain their value in the long term, they at - least depreciate at a stable and predictable rate. The mechanisms and - governance around how this price change works is a subject still under - discussion and will be addressed in future articles (but we’ve got - some really cool ideas). So the knob we choose to tweak here is the US - dollar amount of SNT to be locked up. -

-
-

- An additional factor in using the US Dollar equivalent of SNT here is - that we can add a discounted cash flow analysis based on historical - data of USD. Future notebooks and articles will look into deriving and - modeling a discount rate purely in cryptocurrency. For brevity, this - article will only introduce the concept and gloss over a good portion - of the details and derivation of the terms within. For more - information, please visit the{' '} - - more detailed workbook - - . -

-

- A simple surface level description of a discount rate is the rate you - use to figure out how much present value a known future cash flow is - worth. In other words, how to presently evaluate the amount of money - you know will come in the future. Once you have the discount rate, you - can calculate the Net Present Value (NPV), which is given by - the following formula: -

-

- - {'$$NPV = \\sum^n_{t=1} \\frac{R_t}{(1+i)^t}$$'} - -

-

- where $$t$$ is the number of time periods (10 in this - article), - $$R_t$$ - is the net cashflow of that particular time period , and{' '} - $$i$$ is the discount rate. There is also a potential - for including the initial cost ($$t=0$$) of the - project. We are purposely not including this as Status absorbs the - investment cost for the network. There are quite a few subtle - arguments here around things like hurdle rates, payback periods, etc, - but we defer them and their potential utility to a future article. - Anyway, the concept of discounting future value has been around for a - long time. The earliest known reference was in the 6th century BCE{' '} - - Proverbs of Ahiqar - - : -

-
- A sparrow in thy hand is better than a thousand sparrows flying -
-

- You have probably heard a more common version is this, and Warren - Buffet does a good job of{' '} - - explaining it: - -

-
- How many birds are in the bush? When are you going to get them out? - and how sure are you? -
-

- Either way, more details on how we can do this will be explained in a - future article. Below is a knob to change this discount rate. The - higher the rate, the more unsure you are about the future income. Play - with both of these knobs to find out how much money will be locked up - in the ENS username contract over 10 years. -

-
-
-

- and all of this gets summed together to give you the NPV of ENS - Usernames within Status. To be more explicit, the NPV is the present - value of something based on a projection into the future. Based on the - values chosen above, we arrive at an NPV of: -

-
-
-
-

- In other words, after setting all of the above model inputs we have - finally come to a way of looking at how "impactful" ENS - usernames are in a single value. This value will become more useful as - we build out other models for other use cases so we can compare them - and see relative differences. Eventually, we will be able to see the - relative impact a given utility within Status has within the entire - ecosystem. -

+

Example Scenario Analysis

-

- It is also useful to look at how this number changes as we tweak the - input variables to see their impact. As an example, let's look at - what happens if we are able to do something to increase the number - Status users who actually register an ENS username (actually currently - in the works). This is an example of the question we postulated in the - beginning of this article. The default value is 50%, which leads to a - NPV of $45,745,047.00 (holding all default values constant). -

-

- What happens if we're able to increase this number, say, to 75%? - Keeping all other variables equal, this change alone changes the NPV - to $74,335,701.00, which is a 62.5% increase. -

-

- As another example, let's look at what happens if we increase our - yearly growth rate, going from 300% per year to 350% per year. Holding - everything else constant, with a 350% growth rate per year, we come to - NPV of $129,104,065.00 which is a 182.2% growth and would constitute a - superlinear relationship due to the effects of compounding growth. - Based on these two simple examples, it is clear we should spend more - time on user acquisition and continuous growth over increasing ENS - username conversion rates (OR BOTH!). -

-

- As you can see, by making models of our SNT use-cases, we can start to - ask questions and get numbers to give us actionable data (assuming a - decent accuracy of the model). Even if the actual numbers are - drastically wrong, but the relationships are correct, we can still - come away with quality information on how we spend our time, money, - and effort. -

+

Thoughts and Conclusions

-

- So what have we learned from all of this? How can we change the model - to better fit reality? Are their any actionable conclusions around ENS - usernames that come from this information? -

-

- As stated previously, this particular use-case and work done lay the - groundwork to build more complex models of the SNT use-cases. It also - helps introduce the concept of how different variables affect growth - and impact over time. If you plan to follow this series and work, we - suggest making sure you understand each step along the way because all - of this can get complicated fast. At the very least, we hope you have - been able to grasp a little of what goes on behind the scenes at - Status. -

-

- You have probably noticed that the default values for each variable is - not justified anywhere. This is a problem that we plan to face by - using historical data to make justified default values. Right now, we - have a toolset to see what happens when we change variables, but not - what those variables should be based in reality. These - workbooks are living documents that will change over time to include - such work. -

+

Call to Action

-

- Our goal is to continuously improve these methods and create more work - not only around ENS usernames, but with the entire SNT ecosystem. This - means we would love to get feedback from you, the community. If we - have done something incorrectly, or you know of some way to better - model various aspects herein, please join the discussion. We will be - posting all of these articles in{' '} - our discuss and linking around - the internet in relevant places. -

-

- If you are interested in the models created here and want to see more - detail, please see the more detailed notebooks on{' '} - ObservableHQ. There, you can - play, edit, and fork the notebooks for your own use cases. We would - love to hear your feedback! -

-

+

Future Improvements and Articles

  • probability of failure
  • justifications using historical data
  • assign variables and create equations for each
  • -
  • discussion around initial cost, hurdle rates, payback periods
  • +
  • variable sticker prices and popularity
  • +
  • market fees
);