Files

1788 lines
213 KiB
JSON
Raw Permalink Normal View History

{
"schema_version": 1,
"candidate_commit": "04f888019b4549853efb949c26adc7b0a24aadab",
"image": "sha256:e6f8dc6cc7547f7118bd058687de676e0fcf741799d1d3839b3e8648ce190fbb",
"scope": "Joern 4.0.625 census lifecycle only; no full-query equivalence, changed-code hook latency or capability qualification",
"environment": {
"network": "none",
"published_ports": [],
"server_host": "127.0.0.1",
"memory_limit_bytes": 3221225472,
"heap_mb": 1536,
"user": "1000",
"init_reaping": true
},
"attempts": [
{
"id": "v1",
"instrument": "\"\"\"Isolated lifecycle experiment; not a production backend or hook benchmark.\"\"\"\nimport hashlib\nimport json\nimport os\nfrom pathlib import Path\nimport signal\nimport socket\nimport subprocess\nimport tempfile\nimport time\nimport urllib.error\nimport urllib.request\n\nfrom openultrasast.cpg.backend import extract_payload\n\nOUT = Path('/results/session-probe-v1')\nOUT.mkdir(exist_ok=False)\nROOT = Path('/results/post-census-runtime-v1')\nrecord = {'schema_version': 1, 'purpose': 'census lifecycle only; no detector or hook qualification', 'requests': []}\n\ndef save():\n (OUT / 'result.json').write_text(json.dumps(record, indent=2) + '\\n')\n\ndef query(code, timeout=90):\n start = time.monotonic()\n request = urllib.request.Request('http://127.0.0.1:18081/query-sync', data=json.dumps({'query': code}).encode(), headers={'Content-Type': 'application/json'})\n with urllib.request.urlopen(request, timeout=timeout) as response:\n data = json.load(response)\n record['requests'].append({'seconds': time.monotonic()-start, 'query': code, 'response': data})\n save()\n assert data.get('success') is True or data.get('success') == 'true', data\n return data\n\nproc = None\ntry:\n graph = None\n for manifest in sorted((ROOT / 'artifacts').glob('*/manifest.json')):\n data = json.loads(manifest.read_bytes())\n meta = data.get('metadata', {})\n if meta.get('source_bytes') == 95411 and meta.get('completeness') == 'complete':\n graph = manifest.parent / 'payload'\n graph_bytes = graph.read_bytes()\n assert hashlib.sha256(graph_bytes).hexdigest() == data['sha256'] == meta['graph_digest']\n record['graph_manifest'] = data\n break\n assert graph is not None, 'no verified Node head graph'\n source = Path('/cache/nodegoat/c5cb68a7084e/app/routes/contributions.js')\n raw = source.read_bytes()\n assert raw\n record['input_probe'] = {'path': str(source), 'bytes': len(raw), 'sha256': hashlib.sha256(raw).hexdigest()}\n source_root = source.parents[2]\n sources = [(name, (source_root / name).read_bytes()) for name in record['graph_manifest']['metadata']['source_paths']]\n record['source_receipts'] = [{'path': name, 'bytes': len(raw), 'sha256': hashlib.sha256(raw).hexdigest()} for name, raw in sources]\n assert sum(len(raw) for _, raw in sources) == 95411\n record['graph_bytes'] = len(graph_bytes)\n print(json.dumps(record['input_probe']), flush=True)\n with tempfile.TemporaryDirectory(prefix='session-probe-') as scratch_name:\n scratch = Path(scratch_name)\n target = scratch / 'cpg.bin'\n target.write_bytes(graph_bytes)\n server_scratch = scratch / 'server'\n server_scratch.mkdir()\n env = dict(os.environ, JAVA_TOOL_OPTIONS='-Xmx1536m')\n start = time.monotonic()\n baseline = subprocess.run(['joern', '--script', '/app/src/openultrasast/cpg/queries/census.sc', '--param', f'cpgFile={target}'], cwd=scratch, env=env, capture_output=True, text=True, timeout=90)\n record['disposable_census'] = {'seconds': time.monotonic()-start, 'exit_code': baseline.returncode, 'stdout': baseline.stdout, 'stderr': baseline.stderr}\n save()\n assert baseline.returncode == 0, 'baseline process failed'\n expected = extract_payload(baseline.stdout)\n assert isinstance(expected, dict) and int(expected['files']) == 44 and int(expected['methods']) > 0, expected\n target.write_bytes(graph_bytes)\n log = (OUT / 'server.log').open('w')\n start = time.monotonic()\n proc = subprocess.Popen(['joern', '--server', '--server-host', '127.0.0.1', '--server-port', '18081'], cwd=server_scratch, env=env, stdout=log, stderr=subprocess.STDOUT, start_new_session=True)\n while True:\n assert proc.poll() is None, 'server exited during startup'\n try:\n with socket.create_connection(('127.0.0.1', 18081), timeout=0.2):\n pass\n
"instrument_sha256": "967a26c9093ae4dbc4b036bc785172990c965a03755c0ba0c72f987fc757474d",
"result": {
"schema_version": 1,
"purpose": "census lifecycle only; no detector or hook qualification",
"requests": [
{
"seconds": 0.4128529760055244,
"query": "println(\"OUSAST_READY\")",
"response": {
"success": true,
"stdout": "\u001b[33mlazy\u001b[0m \u001b[33mval\u001b[0m \u001b[36mgiven_Colors\u001b[0m: replpp.Colors\n\u001b[33mval\u001b[0m \u001b[36mresolver\u001b[0m: \u001b[32mICallResolver\u001b[0m = io.shiftleft.semanticcpg.language.NoResolve$@1dab94bc\n\u001b[33mval\u001b[0m \u001b[36mfinder\u001b[0m: \u001b[32mNodeExtensionFinder\u001b[0m = io.shiftleft.semanticcpg.language.DefaultNodeExtensionFinder$@61dac810\n\u001b[33mval\u001b[0m \u001b[36msarifConfig\u001b[0m: \u001b[32mSarifConfig\u001b[0m = SarifConfig(\n toolName = \"Joern\",\n toolFullName = Some(value = \"Joern - The Bug Hunter's Workbench\"),\n toolInformationUri = Some(value = https://joern.io),\n organization = Some(value = \"Joern.io\"),\n semanticVersion = None,\n sarifVersion = V2_1_0,\n resultConverter = io.shiftleft.semanticcpg.sarif.v2_1_0.JoernScanResultToSarifConverter@527c79f4,\n customSerializers = List(\n org.json4s.CustomSerializer@79a7e2a8,\n org.json4s.CustomSerializer@44573dd0,\n org.json4s.CustomSerializer@7675a11f,\n org.json4s.CustomSerializer@1b8a4c52,\n org.json4s.CustomSerializer@5d7e4f29,\n org.json4s.CustomSerializer@203a50eb,\n org.json4s.CustomSerializer@7b9c70aa,\n org.json4s.CustomSerializer@32bd5b57,\n org.json4s.CustomSerializer@1d955d2e\n )\n)\n// defined class OptsDynamic\n\u001b[33mval\u001b[0m \u001b[36mopts\u001b[0m: \u001b[32mOptsDynamic\u001b[0m = OptsDynamic@1ed37e51\ndef _diffGraph: DiffGraphBuilder\ndef diffGraph: DiffGraphBuilder\n// defined class OverlaysDynamic\n\u001b[33mval\u001b[0m \u001b[36mrun\u001b[0m: \u001b[32mOverlaysDynamic\u001b[0m = \n\u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n\u2502name \u2502description \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502dumpcpg14 \u2502Dump Code Property Graph (2014) to out/ \u2502\n\u2502dumpcdg \u2502Dump control dependence graph to out/ \u2502\n\u2502scan \u2502Joern Code Scanner \u2502\n\u2502commit \u2502Apply current custom diffgraph \u2502\n\u2502dumpddg \u2502Dump data dependence graphs to out/ \u2502\n\u2502base \u2502base layer (linked frontend CPG) \u2502\n\u2502controlflow \u2502Control flow layer (including dominators and CDG edges)\u2502\n\u2502dumpast \u2502Dump abstract syntax trees to out/ \u2502\n\u2502dumppdg \u2502Dump program dependence graph to out/ \u2502\n\u2502callgraph \u2502Call graph layer \u2502\n\u2502ossdataflow \u2502Layer to support the OSS lightweight data flow tracker \u2502\n\u2502dumpcfg \u2502Dump control flow graph to out/ \u2502\n\u2502typerelations\u2502Type relations layer (hierarchy and aliases) \u2502\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
"uuid": "eb7f9d73-ce45-45af-bee4-103fb0d422ee"
}
},
{
"seconds": 3.6644894930068403,
"query": "importCpg(\"/tmp/session-probe-8hw4bxz9/cpg.bin\")",
"response": {
"success": true,
"stdout": "\u001b[33mval\u001b[0m \u001b[36mres0\u001b[0m: \u001b[32mOption\u001b[0m[\u001b[32mCpg\u001b[0m] = Some(value = Cpg[Graph[19863 nodes]])\n",
"uuid": "1e0dcc16-a25d-4249-a20a-5920467419a2"
}
},
{
"seconds": 1.382782840053551,
"query": "println(\"---OUSAST-CPG-BEGIN---\"); println(ujson.write(ujson.Obj(\"files\" -> cpg.file.size.toString, \"methods\" -> cpg.method.size.toString, \"calls\" -> cpg.call.size.toString, \"file_names\" -> ujson.Arr.from(cpg.file.name.l), \"overlays\" -> cpg.metaData.overlays.l.mkString(\",\")))); println(\"---OUSAST-CPG-END---\")",
"response": {
"success": true,
"stdout": "",
"uuid": "ff3cb3f7-59f5-4273-8694-39968c401d96"
}
}
],
"graph_manifest": {
"complete": true,
"key": "07185611945033bf128c962ae71a70f1196345f9525ebaead472f62d6f045028",
"metadata": {
"census": {
"calls": 4134,
"files": 44,
"methods": 579
},
"completeness": "complete",
"diagnostics": [],
"graph_digest": "ecb311e3fe1fe500d8f6269916d5cf835a44db25318449750583fc8f3e6de462",
"identity": {
"declarations_digest": "285af83095d6e43bbb0b995cd46e7b65a109d715ec6b6a5fd4367dcea8c406fd",
"engine_version": "4.0.625",
"exclusions_digest": "eab75a523f55acc077e1024b46236ab585ee9e79a4e7563b0204dcab4fcc6183",
"frontend": "jssrc2cpg",
"frontend_options": [
[
"include_tests",
"True"
],
[
"include_build_configs",
"True"
],
[
"installation",
"c9860f63eb08efd404b60cd7d23c65798028f8684e915fe7472e1dc4763a23e5"
],
[
"java_options",
"default"
]
],
"frontend_version": "4.0.625",
"language": "javascript",
"overlay_options": [
[
"implementation",
"b1b5bf7b5609ea930a06addb404840b12b7c0e36cdd083ea0d11ede01f8f6647"
]
],
"overlay_semantics": [
"dataflowOss"
],
"source_digest": "dea287382ca0cf5074b9e85c7823792738bbc5c8bb8a3e4ed06ebc0a2cc13149",
"unit": "repository"
},
"source_bytes": 95411,
"source_paths": [
"Gruntfile.js",
"app/assets/js/chart/chart-data-morris.js",
"app/assets/js/tour/redirects-steps.js",
"app/data/allocations-dao.js",
"app/data/benefits-dao.js",
"app/data/contributions-dao.js",
"app/data/memos-dao.js",
"app/data/profile-dao.js",
"app/data/research-dao.js",
"app/data/user-dao.js",
"app/routes/allocations.js",
"app/routes/benefits.js",
"app/routes/contributions.js",
"app/routes/error.js",
"app/routes/index.js",
"app/routes/memos.js",
"app/routes/profile.js",
"app/routes/research.js",
"app/routes/session.js",
"app/routes/tutorial.js",
"artifacts/db-reset.js",
"config/config.js",
"config/env/all.js",
"config/env/development.js",
"config/env/production.js",
"config/env/test.js",
"server.js",
"test/e2e/integration/allocations_spec.js",
"test/e2e/integration/benefits_spec.js",
"test/e2e/integration/contributions_spec.js",
"test/e2e/integration/dashboard_spec.js",
"test/e2e/integration/general_spec.js",
"test/e2e/integration/learn_spec.js",
"test/e2e/integration/login_spec.js",
"test/e2e/integration/logout_spec.js",
"test/e2e/integration/memos_spec.js",
"test/e2e/integration/profile_spec.js",
"test/e2e/integration/research_spec.js",
"test/e2e/integration/signup_spec.js",
"test/e2e/integration/tutorial_spec.js",
"test/e2e/plugins/index.js",
"test/e2e/support/commands.js",
"test/e2e/support/index.js",
"test/security/profile-test.js"
],
"source_root": "/tmp/ousast-input-iczx7vvd"
},
"receipt": "297ca4188e5a0a00229097d4a9a44d8978a7be659890b900ae976186dbcf15dd",
"sha256": "ecb311e3fe1fe500d8f6269916d5cf835a44db25318449750583fc8f3e6de462",
"size": 727481,
"version": 1
},
"input_probe": {
"path": "/cache/nodegoat/c5cb68a7084e/app/routes/contributions.js",
"bytes": 2485,
"sha256": "196bdeaa22da4cfe8a851b1b932710b2fcedd21f14ed75d70b739ba759a01003"
},
"source_receipts": [
{
"path": "Gruntfile.js",
"bytes": 6359,
"sha256": "2e9fd032cbc6a5594d90c76448ce37b98be0f0d3ef7a66e6b4aabbc674293af6"
},
{
"path": "app/assets/js/chart/chart-data-morris.js",
"bytes": 3718,
"sha256": "a5511ae7a5614f9f2dd89625bce94d6b794a675dae4987259d087a8d2e8e2693"
},
{
"path": "app/assets/js/tour/redirects-steps.js",
"bytes": 648,
"sha256": "16babf9b88e186cb4e2a7ab896a78494f6d4a88737c903eb1e23e35579ac651b"
},
{
"path": "app/data/allocations-dao.js",
"bytes": 3928,
"sha256": "c6aebc971ce7f9c8b2a8f0864a500497de25a3ea0318ef94ecd57cadf6e789ea"
},
{
"path": "app/data/benefits-dao.js",
"bytes": 1240,
"sha256": "0ac30b097e016eeffb10e1c72d9c657153d3ce67e7b3f4756b2cb127d94181d7"
},
{
"path": "app/data/contributions-dao.js",
"bytes": 2791,
"sha256": "363065e8b3c32f0997ce2dcb17341eb3e40b7f43b00b72c576dfebf73f551c85"
},
{
"path": "app/data/memos-dao.js",
"bytes": 1107,
"sha256": "6582195bd913c2d60d63e9b519f9508a3319e07e158fd0c6f31dcbc50a80e8cf"
},
{
"path": "app/data/profile-dao.js",
"bytes": 3506,
"sha256": "80429a5df579867401a59b1cbd9c1d74f88d5548780fbd909e9504876c1968cc"
},
{
"path": "app/data/research-dao.js",
"bytes": 750,
"sha256": "f1cf267e56080fc94943ad7d83802b4e9db9420687fac49f84dbc0e45dfa88ac"
},
{
"path": "app/data/user-dao.js",
"bytes": 4078,
"sha256": "577fb140933a50e010a4bbcb74e975f678d7f3a989467e4d113926f35c042e64"
},
{
"path": "app/routes/allocations.js",
"bytes": 915,
"sha256": "b5b7da1a6b595799cf6cca402756dd9a3f6e2a8b5d712c1989d23b7f01f349a6"
},
{
"path": "app/routes/benefits.js",
"bytes": 1340,
"sha256": "bc5516b35ba21884915b88b3f810441e616f068d8a0cf756b143185d5aeda2d2"
},
{
"path": "app/routes/contributions.js",
"bytes": 2485,
"sha256": "196bdeaa22da4cfe8a851b1b932710b2fcedd21f14ed75d70b739ba759a01003"
},
{
"path": "app/routes/error.js",
"bytes": 281,
"sha256": "452dc61f9f06a31ea4305edb2e573fc940428615841533b59320792fcfb6fb3f"
},
{
"path": "app/routes/index.js",
"bytes": 3149,
"sha256": "3ab970b2888bc1501515db24a83cc7851ac9c09d00948c652300401515185eb5"
},
{
"path": "app/routes/memos.js",
"bytes": 824,
"sha256": "c3543f308f24083436e25e3a72210ad31e611db5c93268d8dd0e340095e132c9"
},
{
"path": "app/routes/profile.js",
"bytes": 3633,
"sha256": "18575bf3d3710906e57e09e6036e40fd3986bdcca436ed0e2a2875b41f0f2aca"
},
{
"path": "app/routes/research.js",
"bytes": 1071,
"sha256": "e399f3c70436fa160f00835626bf50f88980268fcd143436af97c9d2297c1d92"
},
{
"path": "app/routes/session.js",
"bytes": 10199,
"sha256": "e53e38b6eea76b026efaacde07f694e7a2eca005de4083fb74f9393d432a5b25"
},
{
"path": "app/routes/tutorial.js",
"bytes": 637,
"sha256": "502e0b959b37cbc844d15eadd7a78a40b5281155fcf8d532f0e4abdd2fee8eb9"
},
{
"path": "artifacts/db-reset.js",
"bytes": 4183,
"sha256": "df5d947ef23786683ab0d5f3c5ed5ef3f25ab93ce7610448c6db79b446168aa9"
},
{
"path": "config/config.js",
"bytes": 487,
"sha256": "b84b1bf634159caffdef50fe826077e60dbde1e381ceb148ff3b869e789b6962"
},
{
"path": "config/env/all.js",
"bytes": 365,
"sha256": "31a71288f0d830799da9c39e1b1ad10b0e989282bcf9a31bb48f8f618f37f6ad"
},
{
"path": "config/env/development.js",
"bytes": 636,
"sha256": "1829bc509dcc6a6eb58b0eee49901df530b9cceafa2ed37e855beacec4971f08"
},
{
"path": "config/env/production.js",
"bytes": 21,
"sha256": "8222b8169ee86f25cdccd84d340340060ae3f0cff55e2ea9d344d7c332733b71"
},
{
"path": "config/env/test.js",
"bytes": 318,
"sha256": "b48cd5c17fc9639c1c4198fced69b438c2b0c7fe70e80f0113bcd0d86cd583a5"
},
{
"path": "server.js",
"bytes": 4860,
"sha256": "48ec5e8f9668b230caf6af27f4a4ffbdcd8b702b376a6bbcc951217917c6ea2e"
},
{
"path": "test/e2e/integration/allocations_spec.js",
"bytes": 1062,
"sha256": "d345f97bc2c3c9e559d98f3e108ab568303c7509dbe707c4cc49f811d5f94db7"
},
{
"path": "test/e2e/integration/benefits_spec.js",
"bytes": 1228,
"sha256": "e4eb2765b08769e86b140dceee3091a5466da13933400272076b6de693b5cb71"
},
{
"path": "test/e2e/integration/contributions_spec.js",
"bytes": 1160,
"sha256": "8504f4cbbe578b91f112b7effffb0e43823af9648c5b406ded5a0d65fb4bbde3"
},
{
"path": "test/e2e/integration/dashboard_spec.js",
"bytes": 933,
"sha256": "96ef5e6d8b75787ac9a44fcd5f918cd3493680e74c70c45b381fe4416fa7f4f8"
},
{
"path": "test/e2e/integration/general_spec.js",
"bytes": 2044,
"sha256": "5364de581df32c99964f63baa8486fcd32b922c9f327192f3a1e81ca6cd0ceff"
},
{
"path": "test/e2e/integration/learn_spec.js",
"bytes": 471,
"sha256": "05e6bf11c5e773cd22861dbe18bced293024a7400c3a89b2c0e111bb88d8eaa1"
},
{
"path": "test/e2e/integration/login_spec.js",
"bytes": 2377,
"sha256": "e1433dfab270ac3f7b32f4ee904d781c2bb2581804177a0cafc488f6c79efb25"
},
{
"path": "test/e2e/integration/logout_spec.js",
"bytes": 737,
"sha256": "31ebf201e7d899baf8acd1d50c3fc4e42a5636c263982e5e517a1eaf3e35518f"
},
{
"path": "test/e2e/integration/memos_spec.js",
"bytes": 991,
"sha256": "625a08e3c9f80cf46f3fe81c2acde3dc76d955bde10aa7c68498b6830b7a86b4"
},
{
"path": "test/e2e/integration/profile_spec.js",
"bytes": 1509,
"sha256": "e22ce888656d18e020ca2775396e000cc899bdac255a1503f9af2c4ef18ffef0"
},
{
"path": "test/e2e/integration/research_spec.js",
"bytes": 1108,
"sha256": "4e81ed0c2cf42da656217c1e38a35f9257d0a09467ffbe25d9d19930df05ed3a"
},
{
"path": "test/e2e/integration/signup_spec.js",
"bytes": 1734,
"sha256": "27c56206888e1d664f852090ed943dc746638724743f7d5fb12d35e39136d22f"
},
{
"path": "test/e2e/integration/tutorial_spec.js",
"bytes": 1819,
"sha256": "2664d921df2c716695df8c216e93b76a9b09376100ee8bc5c3f4354f0ebdb8a6"
},
{
"path": "test/e2e/plugins/index.js",
"bytes": 788,
"sha256": "1fd870a6602782c27f87cd1aaaae24da269b20408612f718125b4471242f6e83"
},
{
"path": "test/e2e/support/commands.js",
"bytes": 839,
"sha256": "967bdb0f97ec8277d952de4273c1bf2fcc000b1eb08de533a80e34157f65e499"
},
{
"path": "test/e2e/support/index.js",
"bytes": 27,
"sha256": "a74243373740a95e3e3691087776e652ba954fcfd96130c4c374279a7310683d"
},
{
"path": "test/security/profile-test.js",
"bytes": 13055,
"sha256": "17b6d02097d2fdfaebcdae31e70620fe691b5cabbcd99829d7c8d72ac3d4239a"
}
],
"graph_bytes": 727481,
"disposable_census": {
"seconds": 15.415338277001865,
"exit_code": 0,
"stdout": "ERROR StatusConsoleListener Could not determine local host name\n java.net.UnknownHostException: fe09bc0236a4: fe09bc0236a4: Temporary failure in name resolution\n\tat java.base/java.net.InetAddress.getLocalHost(Unknown Source)\n\tat org.apache.logging.log4j.core.util.NetUtils.getLocalHostname(NetUtils.java:56)\n\tat org.apache.logging.log4j.core.LoggerContext.lambda$setConfiguration$0(LoggerContext.java:615)\n\tat java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(Unknown Source)\n\tat org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:615)\n\tat org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:694)\n\tat org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:711)\n\tat org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:253)\n\tat org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:155)\n\tat org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:47)\n\tat org.apache.logging.log4j.LogManager.getContext(LogManager.java:196)\n\tat org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:137)\n\tat org.apache.logging.slf4j.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:61)\n\tat org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:47)\n\tat org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:33)\n\tat org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:447)\n\tat org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:472)\n\tat io.shiftleft.semanticcpg.sarif.SarifSchema$.<clinit>(SarifSchema.scala:10)\n\tat io.shiftleft.semanticcpg.sarif.SarifConfig$.$lessinit$greater$default$8(SarifConfig.scala:38)\n\tat ScalaReplPP$.<clinit>(wrapped-script12435363677634397242.sc:21)\n\tat ScalaReplPP.main(wrapped-script12435363677634397242.sc)\n\tat java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Unknown Source)\n\tat java.base/java.lang.reflect.Method.invoke(Unknown Source)\n\tat replpp.scripting.ScriptingDriver.$anonfun$2(ScriptingDriver.scala:60)\n\tat replpp.util.SimpleDriver.compile$$anonfun$1(SimpleDriver.scala:81)\n\tat scala.util.Try$.apply(Try.scala:195)\n\tat replpp.util.SimpleDriver.compile(SimpleDriver.scala:83)\n\tat replpp.scripting.ScriptingDriver.compileAndRun(ScriptingDriver.scala:53)\n\tat replpp.scripting.NonForkingScriptRunner$.exec(NonForkingScriptRunner.scala:48)\n\tat replpp.scripting.NonForkingScriptRunner$.main(NonForkingScriptRunner.scala:21)\n\tat replpp.scripting.NonForkingScriptRunner.main(NonForkingScriptRunner.scala)\nCaused by: java.net.UnknownHostException: fe09bc0236a4: Temporary failure in name resolution\n\tat java.base/java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)\n\tat java.base/java.net.Inet6AddressImpl.lookupAllHostAddr(Unknown Source)\n\tat java.base/java.net.InetAddress$PlatformResolver.lookupByName(Unknown Source)\n\tat java.base/java.net.InetAddress.getAddressesFromNameService(Unknown Source)\n\tat java.base/java.net.InetAddress$NameServiceAddresses.get(Unknown Source)\n\tat java.base/java.net.InetAddress.getAllByName0(Unknown Source)\n\t... 31 more\n[INFO ] initialising from existing storage (/tmp/session-probe-8hw4bxz9/workspace/cpg.bin/cpg.bin.tmp)\n[INFO ] Start of pass: io.joern.x2cpg.frontendspecific.jssrc2cpg.JavaScriptInheritanceNamePass\n[INFO ] Pass io.joern.x2cpg.frontendspecific.jssrc2cpg.JavaScriptInheritanceNamePass completed in 41 ms (68% on mutations). 0 + 0 changes committed from 0 parts.\n[INFO ] Start of pass: io.joern.x2cpg.frontendspecific.jssrc2cpg.ConstClosurePass\n[INFO ] Pass io.joern.x2cpg.frontendspecific.jssrc2cpg.ConstClosurePass completed in 195 ms (9% on mutations). 39 + 0 changes committed from 1 parts.\n[INFO ] Start of pass: io.joern.x2cpg.frontendspecific.jssrc2cpg.JavaScriptImportResolverPass\n[INFO ] Pass io.joern.x2cpg.frontendspecific.jssrc2cpg.JavaScriptImportResolverPass completed in 146 ms (9% on mutations). 274 + 0 changes co
"stderr": "Picked up JAVA_TOOL_OPTIONS: -Xmx1536m\nPicked up JAVA_TOOL_OPTIONS: -Xmx1536m\nexecuting /app/src/openultrasast/cpg/queries/census.sc with params=Map(cpgFile -> /tmp/session-probe-8hw4bxz9/cpg.bin)\nCreating project `cpg.bin` for CPG at `/tmp/session-probe-8hw4bxz9/cpg.bin`\nCreating working copy of CPG to be safe\nLoading base CPG from: /tmp/session-probe-8hw4bxz9/workspace/cpg.bin/cpg.bin.tmp\nOverlay dataflowOss already exists - skipping\nThe graph has been modified. You may want to use the `save` command to persist changes to disk. All changes will also be saved collectively on exit\nclosing/saving project `cpg.bin`\n"
},
"server_startup_seconds": 12.902201440068893,
"status": "INSTRUMENT_FAILURE",
"error": "AssertionError(None)"
},
"server_log": "Picked up JAVA_TOOL_OPTIONS: -Xmx1536m\nERROR StatusConsoleListener Could not determine local host name\n java.net.UnknownHostException: fe09bc0236a4: fe09bc0236a4: Temporary failure in name resolution\n\tat java.base/java.net.InetAddress.getLocalHost(Unknown Source)\n\tat org.apache.logging.log4j.core.util.NetUtils.getLocalHostname(NetUtils.java:56)\n\tat org.apache.logging.log4j.core.LoggerContext.lambda$setConfiguration$0(LoggerContext.java:615)\n\tat java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(Unknown Source)\n\tat org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:615)\n\tat org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:694)\n\tat org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:711)\n\tat org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:253)\n\tat org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:155)\n\tat org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:47)\n\tat org.apache.logging.log4j.LogManager.getContext(LogManager.java:196)\n\tat org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:137)\n\tat org.apache.logging.slf4j.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:61)\n\tat org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:47)\n\tat org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:33)\n\tat org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:447)\n\tat org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:472)\n\tat replpp.server.ReplServer$.<clinit>(ReplServer.scala:16)\n\tat io.joern.console.ServerHandling.startHttpServer(BridgeBase.scala:477)\n\tat io.joern.console.ServerHandling.startHttpServer$(BridgeBase.scala:464)\n\tat io.joern.joerncli.console.ReplBridge$.startHttpServer(ReplBridge.scala:5)\n\tat io.joern.console.BridgeBase.run(BridgeBase.scala:239)\n\tat io.joern.console.BridgeBase.run$(BridgeBase.scala:55)\n\tat io.joern.joerncli.console.ReplBridge$.run(ReplBridge.scala:5)\n\tat io.joern.joerncli.console.ReplBridge$.main(ReplBridge.scala:10)\n\tat io.joern.joerncli.console.ReplBridge.main(ReplBridge.scala)\nCaused by: java.net.UnknownHostException: fe09bc0236a4: Temporary failure in name resolution\n\tat java.base/java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)\n\tat java.base/java.net.Inet6AddressImpl.lookupAllHostAddr(Unknown Source)\n\tat java.base/java.net.InetAddress$PlatformResolver.lookupByName(Unknown Source)\n\tat java.base/java.net.InetAddress.getAddressesFromNameService(Unknown Source)\n\tat java.base/java.net.InetAddress$NameServiceAddresses.get(Unknown Source)\n\tat java.base/java.net.InetAddress.getAllByName0(Unknown Source)\n\t... 26 more\nusing jar from inherited classpath: /opt/joern-cli/lib/org.scala-lang.tasty-core_3-3.8.3.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/org.apache.logging.log4j.log4j-core-2.20.0.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/com.fasterxml.jackson.core.jackson-core-2.17.2.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.joern.rubysrc2cpg-4.0.625.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.joern.dataflowengineoss-4.0.625.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.joern.flatgraph-formats_3-0.1.34.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.joern.flatgraph-odb-convert_3-0.1.34.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/com.lihaoyi.cask_3-0.9.5.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/com.lihaoyi.upickle-core_3-4.1.0.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.shiftleft.overflowdb-core_3-1.194.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/org.json4s.json4s-native_3-4.0.7.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/com.lihaoyi.castor_3-0.3.0.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.undertow.undertow-core-2.
},
{
"id": "v2",
"instrument": "\"\"\"Isolated lifecycle experiment; not a production backend or hook benchmark.\"\"\"\nimport hashlib\nimport json\nimport os\nfrom pathlib import Path\nimport signal\nimport socket\nimport subprocess\nimport tempfile\nimport time\nimport urllib.error\nimport urllib.request\n\nfrom openultrasast.cpg.backend import extract_payload\n\nOUT = Path('/results/session-probe-v2')\nOUT.mkdir(exist_ok=False)\nROOT = Path('/results/post-census-runtime-v1')\nrecord = {'schema_version': 1, 'purpose': 'census lifecycle only; no detector or hook qualification', 'requests': []}\n\ndef save():\n (OUT / 'result.json').write_text(json.dumps(record, indent=2) + '\\n')\n\ndef query(code, timeout=90):\n start = time.monotonic()\n request = urllib.request.Request('http://127.0.0.1:18081/query-sync', data=json.dumps({'query': code}).encode(), headers={'Content-Type': 'application/json'})\n with urllib.request.urlopen(request, timeout=timeout) as response:\n data = json.load(response)\n record['requests'].append({'seconds': time.monotonic()-start, 'query': code, 'response': data})\n save()\n assert data.get('success') is True or data.get('success') == 'true', data\n return data\n\nproc = None\ntry:\n graph = None\n for manifest in sorted((ROOT / 'artifacts').glob('*/manifest.json')):\n data = json.loads(manifest.read_bytes())\n meta = data.get('metadata', {})\n if meta.get('source_bytes') == 95411 and meta.get('completeness') == 'complete':\n graph = manifest.parent / 'payload'\n graph_bytes = graph.read_bytes()\n assert hashlib.sha256(graph_bytes).hexdigest() == data['sha256'] == meta['graph_digest']\n record['graph_manifest'] = data\n break\n assert graph is not None, 'no verified Node head graph'\n source = Path('/cache/nodegoat/c5cb68a7084e/app/routes/contributions.js')\n raw = source.read_bytes()\n assert raw\n record['input_probe'] = {'path': str(source), 'bytes': len(raw), 'sha256': hashlib.sha256(raw).hexdigest()}\n source_root = source.parents[2]\n sources = [(name, (source_root / name).read_bytes()) for name in record['graph_manifest']['metadata']['source_paths']]\n record['source_receipts'] = [{'path': name, 'bytes': len(raw), 'sha256': hashlib.sha256(raw).hexdigest()} for name, raw in sources]\n assert sum(len(raw) for _, raw in sources) == 95411\n record['graph_bytes'] = len(graph_bytes)\n print(json.dumps(record['input_probe']), flush=True)\n with tempfile.TemporaryDirectory(prefix='session-probe-') as scratch_name:\n scratch = Path(scratch_name)\n target = scratch / 'cpg.bin'\n target.write_bytes(graph_bytes)\n server_scratch = scratch / 'server'\n server_scratch.mkdir()\n env = dict(os.environ, JAVA_TOOL_OPTIONS='-Xmx1536m')\n start = time.monotonic()\n baseline = subprocess.run(['joern', '--script', '/app/src/openultrasast/cpg/queries/census.sc', '--param', f'cpgFile={target}'], cwd=scratch, env=env, capture_output=True, text=True, timeout=90)\n record['disposable_census'] = {'seconds': time.monotonic()-start, 'exit_code': baseline.returncode, 'stdout': baseline.stdout, 'stderr': baseline.stderr}\n save()\n assert baseline.returncode == 0, 'baseline process failed'\n expected = extract_payload(baseline.stdout)\n assert isinstance(expected, dict) and int(expected['files']) == 44 and int(expected['methods']) > 0, expected\n target.write_bytes(graph_bytes)\n log = (OUT / 'server.log').open('w')\n start = time.monotonic()\n proc = subprocess.Popen(['joern', '--server', '--server-host', '127.0.0.1', '--server-port', '18081'], cwd=server_scratch, env=env, stdout=log, stderr=subprocess.STDOUT, start_new_session=True)\n while True:\n assert proc.poll() is None, 'server exited during startup'\n try:\n with socket.create_connection(('127.0.0.1', 18081), timeout=0.2):\n pass\n
"instrument_sha256": "db72156f699930f9b86b2c0d16a27e77f518c99ccd31d66dab19e10ff6c65af4",
"result": {
"schema_version": 1,
"purpose": "census lifecycle only; no detector or hook qualification",
"requests": [
{
"seconds": 0.2846673959866166,
"query": "println(\"OUSAST_READY\")",
"response": {
"success": true,
"stdout": "\u001b[33mlazy\u001b[0m \u001b[33mval\u001b[0m \u001b[36mgiven_Colors\u001b[0m: replpp.Colors\n\u001b[33mval\u001b[0m \u001b[36mresolver\u001b[0m: \u001b[32mICallResolver\u001b[0m = io.shiftleft.semanticcpg.language.NoResolve$@1dab94bc\n\u001b[33mval\u001b[0m \u001b[36mfinder\u001b[0m: \u001b[32mNodeExtensionFinder\u001b[0m = io.shiftleft.semanticcpg.language.DefaultNodeExtensionFinder$@61dac810\n\u001b[33mval\u001b[0m \u001b[36msarifConfig\u001b[0m: \u001b[32mSarifConfig\u001b[0m = SarifConfig(\n toolName = \"Joern\",\n toolFullName = Some(value = \"Joern - The Bug Hunter's Workbench\"),\n toolInformationUri = Some(value = https://joern.io),\n organization = Some(value = \"Joern.io\"),\n semanticVersion = None,\n sarifVersion = V2_1_0,\n resultConverter = io.shiftleft.semanticcpg.sarif.v2_1_0.JoernScanResultToSarifConverter@527c79f4,\n customSerializers = List(\n org.json4s.CustomSerializer@79a7e2a8,\n org.json4s.CustomSerializer@44573dd0,\n org.json4s.CustomSerializer@7675a11f,\n org.json4s.CustomSerializer@1b8a4c52,\n org.json4s.CustomSerializer@5d7e4f29,\n org.json4s.CustomSerializer@203a50eb,\n org.json4s.CustomSerializer@7b9c70aa,\n org.json4s.CustomSerializer@32bd5b57,\n org.json4s.CustomSerializer@1d955d2e\n )\n)\n// defined class OptsDynamic\n\u001b[33mval\u001b[0m \u001b[36mopts\u001b[0m: \u001b[32mOptsDynamic\u001b[0m = OptsDynamic@1ed37e51\ndef _diffGraph: DiffGraphBuilder\ndef diffGraph: DiffGraphBuilder\n// defined class OverlaysDynamic\n\u001b[33mval\u001b[0m \u001b[36mrun\u001b[0m: \u001b[32mOverlaysDynamic\u001b[0m = \n\u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n\u2502name \u2502description \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502dumpcpg14 \u2502Dump Code Property Graph (2014) to out/ \u2502\n\u2502dumpcdg \u2502Dump control dependence graph to out/ \u2502\n\u2502scan \u2502Joern Code Scanner \u2502\n\u2502commit \u2502Apply current custom diffgraph \u2502\n\u2502dumpddg \u2502Dump data dependence graphs to out/ \u2502\n\u2502base \u2502base layer (linked frontend CPG) \u2502\n\u2502controlflow \u2502Control flow layer (including dominators and CDG edges)\u2502\n\u2502dumpast \u2502Dump abstract syntax trees to out/ \u2502\n\u2502dumppdg \u2502Dump program dependence graph to out/ \u2502\n\u2502callgraph \u2502Call graph layer \u2502\n\u2502ossdataflow \u2502Layer to support the OSS lightweight data flow tracker \u2502\n\u2502dumpcfg \u2502Dump control flow graph to out/ \u2502\n\u2502typerelations\u2502Type relations layer (hierarchy and aliases) \u2502\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
"uuid": "99fe40be-2b63-4ec5-bbbe-c4fa0d78522d"
}
},
{
"seconds": 3.2794300430687144,
"query": "importCpg(\"/tmp/session-probe-6hk0u5l6/cpg.bin\")",
"response": {
"success": true,
"stdout": "\u001b[33mval\u001b[0m \u001b[36mres0\u001b[0m: \u001b[32mOption\u001b[0m[\u001b[32mCpg\u001b[0m] = Some(value = Cpg[Graph[19863 nodes]])\n",
"uuid": "86ad2255-4d31-4177-b6cd-be86950bbae5"
}
},
{
"seconds": 1.2805163289885968,
"query": "java.nio.file.Files.writeString(java.nio.file.Path.of(\"/tmp/session-probe-6hk0u5l6/census-0.json\"), ujson.write(ujson.Obj(\"receipt\" -> \"108:0\", \"files\" -> cpg.file.size.toString, \"methods\" -> cpg.method.size.toString, \"calls\" -> cpg.call.size.toString, \"file_names\" -> ujson.Arr.from(cpg.file.name.l), \"overlays\" -> cpg.metaData.overlays.l.mkString(\",\"))))",
"response": {
"success": true,
"stdout": "\u001b[33mval\u001b[0m \u001b[36mres1\u001b[0m: java.nio.file.Path = /tmp/session-probe-6hk0u5l6/census-0.json\n",
"uuid": "24196931-f85b-4e66-96ff-714ca7b9cce2"
},
"file_receipt": {
"receipt": "108:0",
"files": "44",
"methods": "579",
"calls": "4134",
"file_names": [
"Gruntfile.js",
"app/assets/js/chart/chart-data-morris.js",
"app/assets/js/tour/redirects-steps.js",
"app/data/allocations-dao.js",
"app/data/benefits-dao.js",
"app/data/contributions-dao.js",
"app/data/memos-dao.js",
"app/data/profile-dao.js",
"app/data/research-dao.js",
"app/data/user-dao.js",
"app/routes/allocations.js",
"app/routes/benefits.js",
"app/routes/contributions.js",
"app/routes/error.js",
"app/routes/index.js",
"app/routes/memos.js",
"app/routes/profile.js",
"app/routes/research.js",
"app/routes/session.js",
"app/routes/tutorial.js",
"artifacts/db-reset.js",
"config/config.js",
"config/env/all.js",
"config/env/development.js",
"config/env/production.js",
"config/env/test.js",
"server.js",
"test/e2e/integration/allocations_spec.js",
"test/e2e/integration/benefits_spec.js",
"test/e2e/integration/contributions_spec.js",
"test/e2e/integration/dashboard_spec.js",
"test/e2e/integration/general_spec.js",
"test/e2e/integration/learn_spec.js",
"test/e2e/integration/login_spec.js",
"test/e2e/integration/logout_spec.js",
"test/e2e/integration/memos_spec.js",
"test/e2e/integration/profile_spec.js",
"test/e2e/integration/research_spec.js",
"test/e2e/integration/signup_spec.js",
"test/e2e/integration/tutorial_spec.js",
"test/e2e/plugins/index.js",
"test/e2e/support/commands.js",
"test/e2e/support/index.js",
"test/security/profile-test.js"
],
"overlays": "base,controlflow,typerel,callgraph,dataflowOss"
}
},
{
"seconds": 0.39168700901791453,
"query": "java.nio.file.Files.writeString(java.nio.file.Path.of(\"/tmp/session-probe-6hk0u5l6/census-1.json\"), ujson.write(ujson.Obj(\"receipt\" -> \"108:1\", \"files\" -> cpg.file.size.toString, \"methods\" -> cpg.method.size.toString, \"calls\" -> cpg.call.size.toString, \"file_names\" -> ujson.Arr.from(cpg.file.name.l), \"overlays\" -> cpg.metaData.overlays.l.mkString(\",\"))))",
"response": {
"success": true,
"stdout": "\u001b[33mval\u001b[0m \u001b[36mres2\u001b[0m: java.nio.file.Path = /tmp/session-probe-6hk0u5l6/census-1.json\n",
"uuid": "c0011f7c-c970-4f64-a0ac-62174a0e4fba"
},
"file_receipt": {
"receipt": "108:1",
"files": "44",
"methods": "579",
"calls": "4134",
"file_names": [
"Gruntfile.js",
"app/assets/js/chart/chart-data-morris.js",
"app/assets/js/tour/redirects-steps.js",
"app/data/allocations-dao.js",
"app/data/benefits-dao.js",
"app/data/contributions-dao.js",
"app/data/memos-dao.js",
"app/data/profile-dao.js",
"app/data/research-dao.js",
"app/data/user-dao.js",
"app/routes/allocations.js",
"app/routes/benefits.js",
"app/routes/contributions.js",
"app/routes/error.js",
"app/routes/index.js",
"app/routes/memos.js",
"app/routes/profile.js",
"app/routes/research.js",
"app/routes/session.js",
"app/routes/tutorial.js",
"artifacts/db-reset.js",
"config/config.js",
"config/env/all.js",
"config/env/development.js",
"config/env/production.js",
"config/env/test.js",
"server.js",
"test/e2e/integration/allocations_spec.js",
"test/e2e/integration/benefits_spec.js",
"test/e2e/integration/contributions_spec.js",
"test/e2e/integration/dashboard_spec.js",
"test/e2e/integration/general_spec.js",
"test/e2e/integration/learn_spec.js",
"test/e2e/integration/login_spec.js",
"test/e2e/integration/logout_spec.js",
"test/e2e/integration/memos_spec.js",
"test/e2e/integration/profile_spec.js",
"test/e2e/integration/research_spec.js",
"test/e2e/integration/signup_spec.js",
"test/e2e/integration/tutorial_spec.js",
"test/e2e/plugins/index.js",
"test/e2e/support/commands.js",
"test/e2e/support/index.js",
"test/security/profile-test.js"
],
"overlays": "base,controlflow,typerel,callgraph,dataflowOss"
}
},
{
"seconds": 0.22911434608977288,
"query": "java.nio.file.Files.writeString(java.nio.file.Path.of(\"/tmp/session-probe-6hk0u5l6/census-2.json\"), ujson.write(ujson.Obj(\"receipt\" -> \"108:2\", \"files\" -> cpg.file.size.toString, \"methods\" -> cpg.method.size.toString, \"calls\" -> cpg.call.size.toString, \"file_names\" -> ujson.Arr.from(cpg.file.name.l), \"overlays\" -> cpg.metaData.overlays.l.mkString(\",\"))))",
"response": {
"success": true,
"stdout": "\u001b[33mval\u001b[0m \u001b[36mres3\u001b[0m: java.nio.file.Path = /tmp/session-probe-6hk0u5l6/census-2.json\n",
"uuid": "593ec3a1-b391-4687-9d01-d673cbf1e922"
},
"file_receipt": {
"receipt": "108:2",
"files": "44",
"methods": "579",
"calls": "4134",
"file_names": [
"Gruntfile.js",
"app/assets/js/chart/chart-data-morris.js",
"app/assets/js/tour/redirects-steps.js",
"app/data/allocations-dao.js",
"app/data/benefits-dao.js",
"app/data/contributions-dao.js",
"app/data/memos-dao.js",
"app/data/profile-dao.js",
"app/data/research-dao.js",
"app/data/user-dao.js",
"app/routes/allocations.js",
"app/routes/benefits.js",
"app/routes/contributions.js",
"app/routes/error.js",
"app/routes/index.js",
"app/routes/memos.js",
"app/routes/profile.js",
"app/routes/research.js",
"app/routes/session.js",
"app/routes/tutorial.js",
"artifacts/db-reset.js",
"config/config.js",
"config/env/all.js",
"config/env/development.js",
"config/env/production.js",
"config/env/test.js",
"server.js",
"test/e2e/integration/allocations_spec.js",
"test/e2e/integration/benefits_spec.js",
"test/e2e/integration/contributions_spec.js",
"test/e2e/integration/dashboard_spec.js",
"test/e2e/integration/general_spec.js",
"test/e2e/integration/learn_spec.js",
"test/e2e/integration/login_spec.js",
"test/e2e/integration/logout_spec.js",
"test/e2e/integration/memos_spec.js",
"test/e2e/integration/profile_spec.js",
"test/e2e/integration/research_spec.js",
"test/e2e/integration/signup_spec.js",
"test/e2e/integration/tutorial_spec.js",
"test/e2e/plugins/index.js",
"test/e2e/support/commands.js",
"test/e2e/support/index.js",
"test/security/profile-test.js"
],
"overlays": "base,controlflow,typerel,callgraph,dataflowOss"
}
},
{
"seconds": 0.20450362900737673,
"query": "java.nio.file.Files.writeString(java.nio.file.Path.of(\"/tmp/session-probe-6hk0u5l6/census-3.json\"), ujson.write(ujson.Obj(\"receipt\" -> \"108:3\", \"files\" -> cpg.file.size.toString, \"methods\" -> cpg.method.size.toString, \"calls\" -> cpg.call.size.toString, \"file_names\" -> ujson.Arr.from(cpg.file.name.l), \"overlays\" -> cpg.metaData.overlays.l.mkString(\",\"))))",
"response": {
"success": true,
"stdout": "\u001b[33mval\u001b[0m \u001b[36mres4\u001b[0m: java.nio.file.Path = /tmp/session-probe-6hk0u5l6/census-3.json\n",
"uuid": "f5627e1b-ab8f-48d4-b77e-b45e81ad0b33"
},
"file_receipt": {
"receipt": "108:3",
"files": "44",
"methods": "579",
"calls": "4134",
"file_names": [
"Gruntfile.js",
"app/assets/js/chart/chart-data-morris.js",
"app/assets/js/tour/redirects-steps.js",
"app/data/allocations-dao.js",
"app/data/benefits-dao.js",
"app/data/contributions-dao.js",
"app/data/memos-dao.js",
"app/data/profile-dao.js",
"app/data/research-dao.js",
"app/data/user-dao.js",
"app/routes/allocations.js",
"app/routes/benefits.js",
"app/routes/contributions.js",
"app/routes/error.js",
"app/routes/index.js",
"app/routes/memos.js",
"app/routes/profile.js",
"app/routes/research.js",
"app/routes/session.js",
"app/routes/tutorial.js",
"artifacts/db-reset.js",
"config/config.js",
"config/env/all.js",
"config/env/development.js",
"config/env/production.js",
"config/env/test.js",
"server.js",
"test/e2e/integration/allocations_spec.js",
"test/e2e/integration/benefits_spec.js",
"test/e2e/integration/contributions_spec.js",
"test/e2e/integration/dashboard_spec.js",
"test/e2e/integration/general_spec.js",
"test/e2e/integration/learn_spec.js",
"test/e2e/integration/login_spec.js",
"test/e2e/integration/logout_spec.js",
"test/e2e/integration/memos_spec.js",
"test/e2e/integration/profile_spec.js",
"test/e2e/integration/research_spec.js",
"test/e2e/integration/signup_spec.js",
"test/e2e/integration/tutorial_spec.js",
"test/e2e/plugins/index.js",
"test/e2e/support/commands.js",
"test/e2e/support/index.js",
"test/security/profile-test.js"
],
"overlays": "base,controlflow,typerel,callgraph,dataflowOss"
}
},
{
"seconds": 0.22233186708763242,
"query": "java.nio.file.Files.writeString(java.nio.file.Path.of(\"/tmp/session-probe-6hk0u5l6/census-4.json\"), ujson.write(ujson.Obj(\"receipt\" -> \"108:4\", \"files\" -> cpg.file.size.toString, \"methods\" -> cpg.method.size.toString, \"calls\" -> cpg.call.size.toString, \"file_names\" -> ujson.Arr.from(cpg.file.name.l), \"overlays\" -> cpg.metaData.overlays.l.mkString(\",\"))))",
"response": {
"success": true,
"stdout": "\u001b[33mval\u001b[0m \u001b[36mres5\u001b[0m: java.nio.file.Path = /tmp/session-probe-6hk0u5l6/census-4.json\n",
"uuid": "d1c63313-c38a-42a0-87c4-8671c54fe0a6"
},
"file_receipt": {
"receipt": "108:4",
"files": "44",
"methods": "579",
"calls": "4134",
"file_names": [
"Gruntfile.js",
"app/assets/js/chart/chart-data-morris.js",
"app/assets/js/tour/redirects-steps.js",
"app/data/allocations-dao.js",
"app/data/benefits-dao.js",
"app/data/contributions-dao.js",
"app/data/memos-dao.js",
"app/data/profile-dao.js",
"app/data/research-dao.js",
"app/data/user-dao.js",
"app/routes/allocations.js",
"app/routes/benefits.js",
"app/routes/contributions.js",
"app/routes/error.js",
"app/routes/index.js",
"app/routes/memos.js",
"app/routes/profile.js",
"app/routes/research.js",
"app/routes/session.js",
"app/routes/tutorial.js",
"artifacts/db-reset.js",
"config/config.js",
"config/env/all.js",
"config/env/development.js",
"config/env/production.js",
"config/env/test.js",
"server.js",
"test/e2e/integration/allocations_spec.js",
"test/e2e/integration/benefits_spec.js",
"test/e2e/integration/contributions_spec.js",
"test/e2e/integration/dashboard_spec.js",
"test/e2e/integration/general_spec.js",
"test/e2e/integration/learn_spec.js",
"test/e2e/integration/login_spec.js",
"test/e2e/integration/logout_spec.js",
"test/e2e/integration/memos_spec.js",
"test/e2e/integration/profile_spec.js",
"test/e2e/integration/research_spec.js",
"test/e2e/integration/signup_spec.js",
"test/e2e/integration/tutorial_spec.js",
"test/e2e/plugins/index.js",
"test/e2e/support/commands.js",
"test/e2e/support/index.js",
"test/security/profile-test.js"
],
"overlays": "base,controlflow,typerel,callgraph,dataflowOss"
}
}
],
"graph_manifest": {
"complete": true,
"key": "07185611945033bf128c962ae71a70f1196345f9525ebaead472f62d6f045028",
"metadata": {
"census": {
"calls": 4134,
"files": 44,
"methods": 579
},
"completeness": "complete",
"diagnostics": [],
"graph_digest": "ecb311e3fe1fe500d8f6269916d5cf835a44db25318449750583fc8f3e6de462",
"identity": {
"declarations_digest": "285af83095d6e43bbb0b995cd46e7b65a109d715ec6b6a5fd4367dcea8c406fd",
"engine_version": "4.0.625",
"exclusions_digest": "eab75a523f55acc077e1024b46236ab585ee9e79a4e7563b0204dcab4fcc6183",
"frontend": "jssrc2cpg",
"frontend_options": [
[
"include_tests",
"True"
],
[
"include_build_configs",
"True"
],
[
"installation",
"c9860f63eb08efd404b60cd7d23c65798028f8684e915fe7472e1dc4763a23e5"
],
[
"java_options",
"default"
]
],
"frontend_version": "4.0.625",
"language": "javascript",
"overlay_options": [
[
"implementation",
"b1b5bf7b5609ea930a06addb404840b12b7c0e36cdd083ea0d11ede01f8f6647"
]
],
"overlay_semantics": [
"dataflowOss"
],
"source_digest": "dea287382ca0cf5074b9e85c7823792738bbc5c8bb8a3e4ed06ebc0a2cc13149",
"unit": "repository"
},
"source_bytes": 95411,
"source_paths": [
"Gruntfile.js",
"app/assets/js/chart/chart-data-morris.js",
"app/assets/js/tour/redirects-steps.js",
"app/data/allocations-dao.js",
"app/data/benefits-dao.js",
"app/data/contributions-dao.js",
"app/data/memos-dao.js",
"app/data/profile-dao.js",
"app/data/research-dao.js",
"app/data/user-dao.js",
"app/routes/allocations.js",
"app/routes/benefits.js",
"app/routes/contributions.js",
"app/routes/error.js",
"app/routes/index.js",
"app/routes/memos.js",
"app/routes/profile.js",
"app/routes/research.js",
"app/routes/session.js",
"app/routes/tutorial.js",
"artifacts/db-reset.js",
"config/config.js",
"config/env/all.js",
"config/env/development.js",
"config/env/production.js",
"config/env/test.js",
"server.js",
"test/e2e/integration/allocations_spec.js",
"test/e2e/integration/benefits_spec.js",
"test/e2e/integration/contributions_spec.js",
"test/e2e/integration/dashboard_spec.js",
"test/e2e/integration/general_spec.js",
"test/e2e/integration/learn_spec.js",
"test/e2e/integration/login_spec.js",
"test/e2e/integration/logout_spec.js",
"test/e2e/integration/memos_spec.js",
"test/e2e/integration/profile_spec.js",
"test/e2e/integration/research_spec.js",
"test/e2e/integration/signup_spec.js",
"test/e2e/integration/tutorial_spec.js",
"test/e2e/plugins/index.js",
"test/e2e/support/commands.js",
"test/e2e/support/index.js",
"test/security/profile-test.js"
],
"source_root": "/tmp/ousast-input-iczx7vvd"
},
"receipt": "297ca4188e5a0a00229097d4a9a44d8978a7be659890b900ae976186dbcf15dd",
"sha256": "ecb311e3fe1fe500d8f6269916d5cf835a44db25318449750583fc8f3e6de462",
"size": 727481,
"version": 1
},
"input_probe": {
"path": "/cache/nodegoat/c5cb68a7084e/app/routes/contributions.js",
"bytes": 2485,
"sha256": "196bdeaa22da4cfe8a851b1b932710b2fcedd21f14ed75d70b739ba759a01003"
},
"source_receipts": [
{
"path": "Gruntfile.js",
"bytes": 6359,
"sha256": "2e9fd032cbc6a5594d90c76448ce37b98be0f0d3ef7a66e6b4aabbc674293af6"
},
{
"path": "app/assets/js/chart/chart-data-morris.js",
"bytes": 3718,
"sha256": "a5511ae7a5614f9f2dd89625bce94d6b794a675dae4987259d087a8d2e8e2693"
},
{
"path": "app/assets/js/tour/redirects-steps.js",
"bytes": 648,
"sha256": "16babf9b88e186cb4e2a7ab896a78494f6d4a88737c903eb1e23e35579ac651b"
},
{
"path": "app/data/allocations-dao.js",
"bytes": 3928,
"sha256": "c6aebc971ce7f9c8b2a8f0864a500497de25a3ea0318ef94ecd57cadf6e789ea"
},
{
"path": "app/data/benefits-dao.js",
"bytes": 1240,
"sha256": "0ac30b097e016eeffb10e1c72d9c657153d3ce67e7b3f4756b2cb127d94181d7"
},
{
"path": "app/data/contributions-dao.js",
"bytes": 2791,
"sha256": "363065e8b3c32f0997ce2dcb17341eb3e40b7f43b00b72c576dfebf73f551c85"
},
{
"path": "app/data/memos-dao.js",
"bytes": 1107,
"sha256": "6582195bd913c2d60d63e9b519f9508a3319e07e158fd0c6f31dcbc50a80e8cf"
},
{
"path": "app/data/profile-dao.js",
"bytes": 3506,
"sha256": "80429a5df579867401a59b1cbd9c1d74f88d5548780fbd909e9504876c1968cc"
},
{
"path": "app/data/research-dao.js",
"bytes": 750,
"sha256": "f1cf267e56080fc94943ad7d83802b4e9db9420687fac49f84dbc0e45dfa88ac"
},
{
"path": "app/data/user-dao.js",
"bytes": 4078,
"sha256": "577fb140933a50e010a4bbcb74e975f678d7f3a989467e4d113926f35c042e64"
},
{
"path": "app/routes/allocations.js",
"bytes": 915,
"sha256": "b5b7da1a6b595799cf6cca402756dd9a3f6e2a8b5d712c1989d23b7f01f349a6"
},
{
"path": "app/routes/benefits.js",
"bytes": 1340,
"sha256": "bc5516b35ba21884915b88b3f810441e616f068d8a0cf756b143185d5aeda2d2"
},
{
"path": "app/routes/contributions.js",
"bytes": 2485,
"sha256": "196bdeaa22da4cfe8a851b1b932710b2fcedd21f14ed75d70b739ba759a01003"
},
{
"path": "app/routes/error.js",
"bytes": 281,
"sha256": "452dc61f9f06a31ea4305edb2e573fc940428615841533b59320792fcfb6fb3f"
},
{
"path": "app/routes/index.js",
"bytes": 3149,
"sha256": "3ab970b2888bc1501515db24a83cc7851ac9c09d00948c652300401515185eb5"
},
{
"path": "app/routes/memos.js",
"bytes": 824,
"sha256": "c3543f308f24083436e25e3a72210ad31e611db5c93268d8dd0e340095e132c9"
},
{
"path": "app/routes/profile.js",
"bytes": 3633,
"sha256": "18575bf3d3710906e57e09e6036e40fd3986bdcca436ed0e2a2875b41f0f2aca"
},
{
"path": "app/routes/research.js",
"bytes": 1071,
"sha256": "e399f3c70436fa160f00835626bf50f88980268fcd143436af97c9d2297c1d92"
},
{
"path": "app/routes/session.js",
"bytes": 10199,
"sha256": "e53e38b6eea76b026efaacde07f694e7a2eca005de4083fb74f9393d432a5b25"
},
{
"path": "app/routes/tutorial.js",
"bytes": 637,
"sha256": "502e0b959b37cbc844d15eadd7a78a40b5281155fcf8d532f0e4abdd2fee8eb9"
},
{
"path": "artifacts/db-reset.js",
"bytes": 4183,
"sha256": "df5d947ef23786683ab0d5f3c5ed5ef3f25ab93ce7610448c6db79b446168aa9"
},
{
"path": "config/config.js",
"bytes": 487,
"sha256": "b84b1bf634159caffdef50fe826077e60dbde1e381ceb148ff3b869e789b6962"
},
{
"path": "config/env/all.js",
"bytes": 365,
"sha256": "31a71288f0d830799da9c39e1b1ad10b0e989282bcf9a31bb48f8f618f37f6ad"
},
{
"path": "config/env/development.js",
"bytes": 636,
"sha256": "1829bc509dcc6a6eb58b0eee49901df530b9cceafa2ed37e855beacec4971f08"
},
{
"path": "config/env/production.js",
"bytes": 21,
"sha256": "8222b8169ee86f25cdccd84d340340060ae3f0cff55e2ea9d344d7c332733b71"
},
{
"path": "config/env/test.js",
"bytes": 318,
"sha256": "b48cd5c17fc9639c1c4198fced69b438c2b0c7fe70e80f0113bcd0d86cd583a5"
},
{
"path": "server.js",
"bytes": 4860,
"sha256": "48ec5e8f9668b230caf6af27f4a4ffbdcd8b702b376a6bbcc951217917c6ea2e"
},
{
"path": "test/e2e/integration/allocations_spec.js",
"bytes": 1062,
"sha256": "d345f97bc2c3c9e559d98f3e108ab568303c7509dbe707c4cc49f811d5f94db7"
},
{
"path": "test/e2e/integration/benefits_spec.js",
"bytes": 1228,
"sha256": "e4eb2765b08769e86b140dceee3091a5466da13933400272076b6de693b5cb71"
},
{
"path": "test/e2e/integration/contributions_spec.js",
"bytes": 1160,
"sha256": "8504f4cbbe578b91f112b7effffb0e43823af9648c5b406ded5a0d65fb4bbde3"
},
{
"path": "test/e2e/integration/dashboard_spec.js",
"bytes": 933,
"sha256": "96ef5e6d8b75787ac9a44fcd5f918cd3493680e74c70c45b381fe4416fa7f4f8"
},
{
"path": "test/e2e/integration/general_spec.js",
"bytes": 2044,
"sha256": "5364de581df32c99964f63baa8486fcd32b922c9f327192f3a1e81ca6cd0ceff"
},
{
"path": "test/e2e/integration/learn_spec.js",
"bytes": 471,
"sha256": "05e6bf11c5e773cd22861dbe18bced293024a7400c3a89b2c0e111bb88d8eaa1"
},
{
"path": "test/e2e/integration/login_spec.js",
"bytes": 2377,
"sha256": "e1433dfab270ac3f7b32f4ee904d781c2bb2581804177a0cafc488f6c79efb25"
},
{
"path": "test/e2e/integration/logout_spec.js",
"bytes": 737,
"sha256": "31ebf201e7d899baf8acd1d50c3fc4e42a5636c263982e5e517a1eaf3e35518f"
},
{
"path": "test/e2e/integration/memos_spec.js",
"bytes": 991,
"sha256": "625a08e3c9f80cf46f3fe81c2acde3dc76d955bde10aa7c68498b6830b7a86b4"
},
{
"path": "test/e2e/integration/profile_spec.js",
"bytes": 1509,
"sha256": "e22ce888656d18e020ca2775396e000cc899bdac255a1503f9af2c4ef18ffef0"
},
{
"path": "test/e2e/integration/research_spec.js",
"bytes": 1108,
"sha256": "4e81ed0c2cf42da656217c1e38a35f9257d0a09467ffbe25d9d19930df05ed3a"
},
{
"path": "test/e2e/integration/signup_spec.js",
"bytes": 1734,
"sha256": "27c56206888e1d664f852090ed943dc746638724743f7d5fb12d35e39136d22f"
},
{
"path": "test/e2e/integration/tutorial_spec.js",
"bytes": 1819,
"sha256": "2664d921df2c716695df8c216e93b76a9b09376100ee8bc5c3f4354f0ebdb8a6"
},
{
"path": "test/e2e/plugins/index.js",
"bytes": 788,
"sha256": "1fd870a6602782c27f87cd1aaaae24da269b20408612f718125b4471242f6e83"
},
{
"path": "test/e2e/support/commands.js",
"bytes": 839,
"sha256": "967bdb0f97ec8277d952de4273c1bf2fcc000b1eb08de533a80e34157f65e499"
},
{
"path": "test/e2e/support/index.js",
"bytes": 27,
"sha256": "a74243373740a95e3e3691087776e652ba954fcfd96130c4c374279a7310683d"
},
{
"path": "test/security/profile-test.js",
"bytes": 13055,
"sha256": "17b6d02097d2fdfaebcdae31e70620fe691b5cabbcd99829d7c8d72ac3d4239a"
}
],
"graph_bytes": 727481,
"disposable_census": {
"seconds": 13.442263594013639,
"exit_code": 0,
"stdout": "ERROR StatusConsoleListener Could not determine local host name\n java.net.UnknownHostException: 392c66d8f096: 392c66d8f096: Temporary failure in name resolution\n\tat java.base/java.net.InetAddress.getLocalHost(Unknown Source)\n\tat org.apache.logging.log4j.core.util.NetUtils.getLocalHostname(NetUtils.java:56)\n\tat org.apache.logging.log4j.core.LoggerContext.lambda$setConfiguration$0(LoggerContext.java:615)\n\tat java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(Unknown Source)\n\tat org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:615)\n\tat org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:694)\n\tat org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:711)\n\tat org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:253)\n\tat org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:155)\n\tat org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:47)\n\tat org.apache.logging.log4j.LogManager.getContext(LogManager.java:196)\n\tat org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:137)\n\tat org.apache.logging.slf4j.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:61)\n\tat org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:47)\n\tat org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:33)\n\tat org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:447)\n\tat org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:472)\n\tat io.shiftleft.semanticcpg.sarif.SarifSchema$.<clinit>(SarifSchema.scala:10)\n\tat io.shiftleft.semanticcpg.sarif.SarifConfig$.$lessinit$greater$default$8(SarifConfig.scala:38)\n\tat ScalaReplPP$.<clinit>(wrapped-script8217499019605766643.sc:21)\n\tat ScalaReplPP.main(wrapped-script8217499019605766643.sc)\n\tat java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Unknown Source)\n\tat java.base/java.lang.reflect.Method.invoke(Unknown Source)\n\tat replpp.scripting.ScriptingDriver.$anonfun$2(ScriptingDriver.scala:60)\n\tat replpp.util.SimpleDriver.compile$$anonfun$1(SimpleDriver.scala:81)\n\tat scala.util.Try$.apply(Try.scala:195)\n\tat replpp.util.SimpleDriver.compile(SimpleDriver.scala:83)\n\tat replpp.scripting.ScriptingDriver.compileAndRun(ScriptingDriver.scala:53)\n\tat replpp.scripting.NonForkingScriptRunner$.exec(NonForkingScriptRunner.scala:48)\n\tat replpp.scripting.NonForkingScriptRunner$.main(NonForkingScriptRunner.scala:21)\n\tat replpp.scripting.NonForkingScriptRunner.main(NonForkingScriptRunner.scala)\nCaused by: java.net.UnknownHostException: 392c66d8f096: Temporary failure in name resolution\n\tat java.base/java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)\n\tat java.base/java.net.Inet6AddressImpl.lookupAllHostAddr(Unknown Source)\n\tat java.base/java.net.InetAddress$PlatformResolver.lookupByName(Unknown Source)\n\tat java.base/java.net.InetAddress.getAddressesFromNameService(Unknown Source)\n\tat java.base/java.net.InetAddress$NameServiceAddresses.get(Unknown Source)\n\tat java.base/java.net.InetAddress.getAllByName0(Unknown Source)\n\t... 31 more\n[INFO ] initialising from existing storage (/tmp/session-probe-6hk0u5l6/workspace/cpg.bin/cpg.bin.tmp)\n[INFO ] Start of pass: io.joern.x2cpg.frontendspecific.jssrc2cpg.JavaScriptInheritanceNamePass\n[INFO ] Pass io.joern.x2cpg.frontendspecific.jssrc2cpg.JavaScriptInheritanceNamePass completed in 54 ms (56% on mutations). 0 + 0 changes committed from 0 parts.\n[INFO ] Start of pass: io.joern.x2cpg.frontendspecific.jssrc2cpg.ConstClosurePass\n[INFO ] Pass io.joern.x2cpg.frontendspecific.jssrc2cpg.ConstClosurePass completed in 198 ms (7% on mutations). 39 + 0 changes committed from 1 parts.\n[INFO ] Start of pass: io.joern.x2cpg.frontendspecific.jssrc2cpg.JavaScriptImportResolverPass\n[INFO ] Pass io.joern.x2cpg.frontendspecific.jssrc2cpg.JavaScriptImportResolverPass completed in 116 ms (11% on mutations). 274 + 0 changes com
"stderr": "Picked up JAVA_TOOL_OPTIONS: -Xmx1536m\nPicked up JAVA_TOOL_OPTIONS: -Xmx1536m\nexecuting /app/src/openultrasast/cpg/queries/census.sc with params=Map(cpgFile -> /tmp/session-probe-6hk0u5l6/cpg.bin)\nCreating project `cpg.bin` for CPG at `/tmp/session-probe-6hk0u5l6/cpg.bin`\nCreating working copy of CPG to be safe\nLoading base CPG from: /tmp/session-probe-6hk0u5l6/workspace/cpg.bin/cpg.bin.tmp\nOverlay dataflowOss already exists - skipping\nThe graph has been modified. You may want to use the `save` command to persist changes to disk. All changes will also be saved collectively on exit\nclosing/saving project `cpg.bin`\n"
},
"server_startup_seconds": 11.762742699938826,
"census_equivalent": true,
"cancellation_seconds": 0.04296782903838903,
"status": "PASS_LIFECYCLE_PROBE_ONLY"
},
"server_log": "Picked up JAVA_TOOL_OPTIONS: -Xmx1536m\nERROR StatusConsoleListener Could not determine local host name\n java.net.UnknownHostException: 392c66d8f096: 392c66d8f096: Temporary failure in name resolution\n\tat java.base/java.net.InetAddress.getLocalHost(Unknown Source)\n\tat org.apache.logging.log4j.core.util.NetUtils.getLocalHostname(NetUtils.java:56)\n\tat org.apache.logging.log4j.core.LoggerContext.lambda$setConfiguration$0(LoggerContext.java:615)\n\tat java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(Unknown Source)\n\tat org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:615)\n\tat org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:694)\n\tat org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:711)\n\tat org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:253)\n\tat org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:155)\n\tat org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:47)\n\tat org.apache.logging.log4j.LogManager.getContext(LogManager.java:196)\n\tat org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:137)\n\tat org.apache.logging.slf4j.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:61)\n\tat org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:47)\n\tat org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:33)\n\tat org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:447)\n\tat org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:472)\n\tat replpp.server.ReplServer$.<clinit>(ReplServer.scala:16)\n\tat io.joern.console.ServerHandling.startHttpServer(BridgeBase.scala:477)\n\tat io.joern.console.ServerHandling.startHttpServer$(BridgeBase.scala:464)\n\tat io.joern.joerncli.console.ReplBridge$.startHttpServer(ReplBridge.scala:5)\n\tat io.joern.console.BridgeBase.run(BridgeBase.scala:239)\n\tat io.joern.console.BridgeBase.run$(BridgeBase.scala:55)\n\tat io.joern.joerncli.console.ReplBridge$.run(ReplBridge.scala:5)\n\tat io.joern.joerncli.console.ReplBridge$.main(ReplBridge.scala:10)\n\tat io.joern.joerncli.console.ReplBridge.main(ReplBridge.scala)\nCaused by: java.net.UnknownHostException: 392c66d8f096: Temporary failure in name resolution\n\tat java.base/java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)\n\tat java.base/java.net.Inet6AddressImpl.lookupAllHostAddr(Unknown Source)\n\tat java.base/java.net.InetAddress$PlatformResolver.lookupByName(Unknown Source)\n\tat java.base/java.net.InetAddress.getAddressesFromNameService(Unknown Source)\n\tat java.base/java.net.InetAddress$NameServiceAddresses.get(Unknown Source)\n\tat java.base/java.net.InetAddress.getAllByName0(Unknown Source)\n\t... 26 more\nusing jar from inherited classpath: /opt/joern-cli/lib/org.scala-lang.tasty-core_3-3.8.3.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/org.apache.logging.log4j.log4j-core-2.20.0.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/com.fasterxml.jackson.core.jackson-core-2.17.2.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.joern.rubysrc2cpg-4.0.625.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.joern.dataflowengineoss-4.0.625.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.joern.flatgraph-formats_3-0.1.34.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.joern.flatgraph-odb-convert_3-0.1.34.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/com.lihaoyi.cask_3-0.9.5.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/com.lihaoyi.upickle-core_3-4.1.0.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.shiftleft.overflowdb-core_3-1.194.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/org.json4s.json4s-native_3-4.0.7.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/com.lihaoyi.castor_3-0.3.0.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.undertow.undertow-core-2.
},
{
"id": "v3",
"instrument": "\"\"\"Isolated lifecycle experiment; not a production backend or hook benchmark.\"\"\"\nimport hashlib\nimport json\nimport os\nfrom pathlib import Path\nimport signal\nimport socket\nimport subprocess\nimport tempfile\nimport time\nimport urllib.error\nimport urllib.request\n\nfrom openultrasast.cpg.backend import extract_payload\n\nOUT = Path('/results/session-probe-v3')\nOUT.mkdir(exist_ok=False)\nROOT = Path('/results/post-census-runtime-v1')\nrecord = {'schema_version': 1, 'purpose': 'census lifecycle only; no detector or hook qualification', 'requests': []}\n\ndef save():\n (OUT / 'result.json').write_text(json.dumps(record, indent=2) + '\\n')\n\ndef query(code, timeout=90):\n start = time.monotonic()\n request = urllib.request.Request('http://127.0.0.1:18081/query-sync', data=json.dumps({'query': code}).encode(), headers={'Content-Type': 'application/json'})\n with urllib.request.urlopen(request, timeout=timeout) as response:\n data = json.load(response)\n record['requests'].append({'seconds': time.monotonic()-start, 'query': code, 'response': data})\n save()\n assert data.get('success') is True or data.get('success') == 'true', data\n return data\n\nproc = None\ntry:\n graph = None\n for manifest in sorted((ROOT / 'artifacts').glob('*/manifest.json')):\n data = json.loads(manifest.read_bytes())\n meta = data.get('metadata', {})\n if meta.get('source_bytes') == 95411 and meta.get('completeness') == 'complete':\n graph = manifest.parent / 'payload'\n graph_bytes = graph.read_bytes()\n assert hashlib.sha256(graph_bytes).hexdigest() == data['sha256'] == meta['graph_digest']\n record['graph_manifest'] = data\n break\n assert graph is not None, 'no verified Node head graph'\n source = Path('/cache/nodegoat/c5cb68a7084e/app/routes/contributions.js')\n raw = source.read_bytes()\n assert raw\n record['input_probe'] = {'path': str(source), 'bytes': len(raw), 'sha256': hashlib.sha256(raw).hexdigest()}\n source_root = source.parents[2]\n sources = [(name, (source_root / name).read_bytes()) for name in record['graph_manifest']['metadata']['source_paths']]\n record['source_receipts'] = [{'path': name, 'bytes': len(raw), 'sha256': hashlib.sha256(raw).hexdigest()} for name, raw in sources]\n assert sum(len(raw) for _, raw in sources) == 95411\n record['graph_bytes'] = len(graph_bytes)\n print(json.dumps(record['input_probe']), flush=True)\n with tempfile.TemporaryDirectory(prefix='session-probe-') as scratch_name:\n scratch = Path(scratch_name)\n target = scratch / 'cpg.bin'\n target.write_bytes(graph_bytes)\n server_scratch = scratch / 'server'\n server_scratch.mkdir()\n env = dict(os.environ, JAVA_TOOL_OPTIONS='-Xmx1536m')\n start = time.monotonic()\n baseline = subprocess.run(['joern', '--script', '/app/src/openultrasast/cpg/queries/census.sc', '--param', f'cpgFile={target}'], cwd=scratch, env=env, capture_output=True, text=True, timeout=90)\n record['disposable_census'] = {'seconds': time.monotonic()-start, 'exit_code': baseline.returncode, 'stdout': baseline.stdout, 'stderr': baseline.stderr}\n save()\n assert baseline.returncode == 0, 'baseline process failed'\n expected = extract_payload(baseline.stdout)\n assert isinstance(expected, dict) and int(expected['files']) == 44 and int(expected['methods']) > 0, expected\n target.write_bytes(graph_bytes)\n log = (OUT / 'server.log').open('w')\n start = time.monotonic()\n proc = subprocess.Popen(['joern', '--server', '--server-host', '127.0.0.1', '--server-port', '18081'], cwd=server_scratch, env=env, stdout=log, stderr=subprocess.STDOUT, start_new_session=True)\n while True:\n assert proc.poll() is None, 'server exited during startup'\n try:\n with socket.create_connection(('127.0.0.1', 18081), timeout=0.2):\n pass\n
"instrument_sha256": "91d0fb99fbf5cd456a4487e15806cf752b7528d8135eff5f629ef64736c9b94c",
"result": {
"schema_version": 1,
"purpose": "census lifecycle only; no detector or hook qualification",
"requests": [
{
"seconds": 0.3228343940572813,
"query": "println(\"OUSAST_READY\")",
"response": {
"success": true,
"stdout": "\u001b[33mlazy\u001b[0m \u001b[33mval\u001b[0m \u001b[36mgiven_Colors\u001b[0m: replpp.Colors\n\u001b[33mval\u001b[0m \u001b[36mresolver\u001b[0m: \u001b[32mICallResolver\u001b[0m = io.shiftleft.semanticcpg.language.NoResolve$@7019ed73\n\u001b[33mval\u001b[0m \u001b[36mfinder\u001b[0m: \u001b[32mNodeExtensionFinder\u001b[0m = io.shiftleft.semanticcpg.language.DefaultNodeExtensionFinder$@1dab94bc\n\u001b[33mval\u001b[0m \u001b[36msarifConfig\u001b[0m: \u001b[32mSarifConfig\u001b[0m = SarifConfig(\n toolName = \"Joern\",\n toolFullName = Some(value = \"Joern - The Bug Hunter's Workbench\"),\n toolInformationUri = Some(value = https://joern.io),\n organization = Some(value = \"Joern.io\"),\n semanticVersion = None,\n sarifVersion = V2_1_0,\n resultConverter = io.shiftleft.semanticcpg.sarif.v2_1_0.JoernScanResultToSarifConverter@2b7e9d48,\n customSerializers = List(\n org.json4s.CustomSerializer@26196172,\n org.json4s.CustomSerializer@79a7e2a8,\n org.json4s.CustomSerializer@44573dd0,\n org.json4s.CustomSerializer@7675a11f,\n org.json4s.CustomSerializer@1b8a4c52,\n org.json4s.CustomSerializer@5d7e4f29,\n org.json4s.CustomSerializer@203a50eb,\n org.json4s.CustomSerializer@7b9c70aa,\n org.json4s.CustomSerializer@32bd5b57\n )\n)\n// defined class OptsDynamic\n\u001b[33mval\u001b[0m \u001b[36mopts\u001b[0m: \u001b[32mOptsDynamic\u001b[0m = OptsDynamic@278133f6\ndef _diffGraph: DiffGraphBuilder\ndef diffGraph: DiffGraphBuilder\n// defined class OverlaysDynamic\n\u001b[33mval\u001b[0m \u001b[36mrun\u001b[0m: \u001b[32mOverlaysDynamic\u001b[0m = \n\u250c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2510\n\u2502name \u2502description \u2502\n\u251c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u253c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2524\n\u2502dumpcpg14 \u2502Dump Code Property Graph (2014) to out/ \u2502\n\u2502dumpcdg \u2502Dump control dependence graph to out/ \u2502\n\u2502scan \u2502Joern Code Scanner \u2502\n\u2502commit \u2502Apply current custom diffgraph \u2502\n\u2502dumpddg \u2502Dump data dependence graphs to out/ \u2502\n\u2502base \u2502base layer (linked frontend CPG) \u2502\n\u2502controlflow \u2502Control flow layer (including dominators and CDG edges)\u2502\n\u2502dumpast \u2502Dump abstract syntax trees to out/ \u2502\n\u2502dumppdg \u2502Dump program dependence graph to out/ \u2502\n\u2502callgraph \u2502Call graph layer \u2502\n\u2502ossdataflow \u2502Layer to support the OSS lightweight data flow tracker \u2502\n\u2502dumpcfg \u2502Dump control flow graph to out/ \u2502\n\u2502typerelations\u2502Type relations layer (hierarchy and aliases) \u2502\n\u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2534\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500
"uuid": "0d65a7ae-9825-4917-864c-10ff9ea47c38"
}
},
{
"seconds": 3.6359307559905574,
"query": "importCpg(\"/tmp/session-probe-7zkl39j0/cpg.bin\")",
"response": {
"success": true,
"stdout": "\u001b[33mval\u001b[0m \u001b[36mres0\u001b[0m: \u001b[32mOption\u001b[0m[\u001b[32mCpg\u001b[0m] = Some(value = Cpg[Graph[19863 nodes]])\n",
"uuid": "14091abb-3be2-484e-9e94-8d628a866a10"
}
},
{
"seconds": 1.402274933992885,
"query": "java.nio.file.Files.writeString(java.nio.file.Path.of(\"/tmp/session-probe-7zkl39j0/census-0.json\"), ujson.write(ujson.Obj(\"receipt\" -> \"108:0\", \"files\" -> cpg.file.size.toString, \"methods\" -> cpg.method.size.toString, \"calls\" -> cpg.call.size.toString, \"file_names\" -> ujson.Arr.from(cpg.file.name.l), \"overlays\" -> cpg.metaData.overlays.l.mkString(\",\"))))",
"response": {
"success": true,
"stdout": "\u001b[33mval\u001b[0m \u001b[36mres1\u001b[0m: java.nio.file.Path = /tmp/session-probe-7zkl39j0/census-0.json\n",
"uuid": "7931c7ea-0ec0-4014-8b15-d625e534eaec"
},
"file_receipt": {
"receipt": "108:0",
"files": "44",
"methods": "579",
"calls": "4134",
"file_names": [
"Gruntfile.js",
"app/assets/js/chart/chart-data-morris.js",
"app/assets/js/tour/redirects-steps.js",
"app/data/allocations-dao.js",
"app/data/benefits-dao.js",
"app/data/contributions-dao.js",
"app/data/memos-dao.js",
"app/data/profile-dao.js",
"app/data/research-dao.js",
"app/data/user-dao.js",
"app/routes/allocations.js",
"app/routes/benefits.js",
"app/routes/contributions.js",
"app/routes/error.js",
"app/routes/index.js",
"app/routes/memos.js",
"app/routes/profile.js",
"app/routes/research.js",
"app/routes/session.js",
"app/routes/tutorial.js",
"artifacts/db-reset.js",
"config/config.js",
"config/env/all.js",
"config/env/development.js",
"config/env/production.js",
"config/env/test.js",
"server.js",
"test/e2e/integration/allocations_spec.js",
"test/e2e/integration/benefits_spec.js",
"test/e2e/integration/contributions_spec.js",
"test/e2e/integration/dashboard_spec.js",
"test/e2e/integration/general_spec.js",
"test/e2e/integration/learn_spec.js",
"test/e2e/integration/login_spec.js",
"test/e2e/integration/logout_spec.js",
"test/e2e/integration/memos_spec.js",
"test/e2e/integration/profile_spec.js",
"test/e2e/integration/research_spec.js",
"test/e2e/integration/signup_spec.js",
"test/e2e/integration/tutorial_spec.js",
"test/e2e/plugins/index.js",
"test/e2e/support/commands.js",
"test/e2e/support/index.js",
"test/security/profile-test.js"
],
"overlays": "base,controlflow,typerel,callgraph,dataflowOss"
}
},
{
"seconds": 0.3387976880185306,
"query": "java.nio.file.Files.writeString(java.nio.file.Path.of(\"/tmp/session-probe-7zkl39j0/census-1.json\"), ujson.write(ujson.Obj(\"receipt\" -> \"108:1\", \"files\" -> cpg.file.size.toString, \"methods\" -> cpg.method.size.toString, \"calls\" -> cpg.call.size.toString, \"file_names\" -> ujson.Arr.from(cpg.file.name.l), \"overlays\" -> cpg.metaData.overlays.l.mkString(\",\"))))",
"response": {
"success": true,
"stdout": "\u001b[33mval\u001b[0m \u001b[36mres2\u001b[0m: java.nio.file.Path = /tmp/session-probe-7zkl39j0/census-1.json\n",
"uuid": "659ece83-0bbf-474d-af31-1147ee868998"
},
"file_receipt": {
"receipt": "108:1",
"files": "44",
"methods": "579",
"calls": "4134",
"file_names": [
"Gruntfile.js",
"app/assets/js/chart/chart-data-morris.js",
"app/assets/js/tour/redirects-steps.js",
"app/data/allocations-dao.js",
"app/data/benefits-dao.js",
"app/data/contributions-dao.js",
"app/data/memos-dao.js",
"app/data/profile-dao.js",
"app/data/research-dao.js",
"app/data/user-dao.js",
"app/routes/allocations.js",
"app/routes/benefits.js",
"app/routes/contributions.js",
"app/routes/error.js",
"app/routes/index.js",
"app/routes/memos.js",
"app/routes/profile.js",
"app/routes/research.js",
"app/routes/session.js",
"app/routes/tutorial.js",
"artifacts/db-reset.js",
"config/config.js",
"config/env/all.js",
"config/env/development.js",
"config/env/production.js",
"config/env/test.js",
"server.js",
"test/e2e/integration/allocations_spec.js",
"test/e2e/integration/benefits_spec.js",
"test/e2e/integration/contributions_spec.js",
"test/e2e/integration/dashboard_spec.js",
"test/e2e/integration/general_spec.js",
"test/e2e/integration/learn_spec.js",
"test/e2e/integration/login_spec.js",
"test/e2e/integration/logout_spec.js",
"test/e2e/integration/memos_spec.js",
"test/e2e/integration/profile_spec.js",
"test/e2e/integration/research_spec.js",
"test/e2e/integration/signup_spec.js",
"test/e2e/integration/tutorial_spec.js",
"test/e2e/plugins/index.js",
"test/e2e/support/commands.js",
"test/e2e/support/index.js",
"test/security/profile-test.js"
],
"overlays": "base,controlflow,typerel,callgraph,dataflowOss"
}
},
{
"seconds": 0.4674431789899245,
"query": "java.nio.file.Files.writeString(java.nio.file.Path.of(\"/tmp/session-probe-7zkl39j0/census-2.json\"), ujson.write(ujson.Obj(\"receipt\" -> \"108:2\", \"files\" -> cpg.file.size.toString, \"methods\" -> cpg.method.size.toString, \"calls\" -> cpg.call.size.toString, \"file_names\" -> ujson.Arr.from(cpg.file.name.l), \"overlays\" -> cpg.metaData.overlays.l.mkString(\",\"))))",
"response": {
"success": true,
"stdout": "\u001b[33mval\u001b[0m \u001b[36mres3\u001b[0m: java.nio.file.Path = /tmp/session-probe-7zkl39j0/census-2.json\n",
"uuid": "bca5b6ec-f56b-4908-b347-34c383ee4c3d"
},
"file_receipt": {
"receipt": "108:2",
"files": "44",
"methods": "579",
"calls": "4134",
"file_names": [
"Gruntfile.js",
"app/assets/js/chart/chart-data-morris.js",
"app/assets/js/tour/redirects-steps.js",
"app/data/allocations-dao.js",
"app/data/benefits-dao.js",
"app/data/contributions-dao.js",
"app/data/memos-dao.js",
"app/data/profile-dao.js",
"app/data/research-dao.js",
"app/data/user-dao.js",
"app/routes/allocations.js",
"app/routes/benefits.js",
"app/routes/contributions.js",
"app/routes/error.js",
"app/routes/index.js",
"app/routes/memos.js",
"app/routes/profile.js",
"app/routes/research.js",
"app/routes/session.js",
"app/routes/tutorial.js",
"artifacts/db-reset.js",
"config/config.js",
"config/env/all.js",
"config/env/development.js",
"config/env/production.js",
"config/env/test.js",
"server.js",
"test/e2e/integration/allocations_spec.js",
"test/e2e/integration/benefits_spec.js",
"test/e2e/integration/contributions_spec.js",
"test/e2e/integration/dashboard_spec.js",
"test/e2e/integration/general_spec.js",
"test/e2e/integration/learn_spec.js",
"test/e2e/integration/login_spec.js",
"test/e2e/integration/logout_spec.js",
"test/e2e/integration/memos_spec.js",
"test/e2e/integration/profile_spec.js",
"test/e2e/integration/research_spec.js",
"test/e2e/integration/signup_spec.js",
"test/e2e/integration/tutorial_spec.js",
"test/e2e/plugins/index.js",
"test/e2e/support/commands.js",
"test/e2e/support/index.js",
"test/security/profile-test.js"
],
"overlays": "base,controlflow,typerel,callgraph,dataflowOss"
}
},
{
"seconds": 0.35327990900259465,
"query": "java.nio.file.Files.writeString(java.nio.file.Path.of(\"/tmp/session-probe-7zkl39j0/census-3.json\"), ujson.write(ujson.Obj(\"receipt\" -> \"108:3\", \"files\" -> cpg.file.size.toString, \"methods\" -> cpg.method.size.toString, \"calls\" -> cpg.call.size.toString, \"file_names\" -> ujson.Arr.from(cpg.file.name.l), \"overlays\" -> cpg.metaData.overlays.l.mkString(\",\"))))",
"response": {
"success": true,
"stdout": "\u001b[33mval\u001b[0m \u001b[36mres4\u001b[0m: java.nio.file.Path = /tmp/session-probe-7zkl39j0/census-3.json\n",
"uuid": "afbc8aa0-cc74-44cb-8d89-efe13601d9ae"
},
"file_receipt": {
"receipt": "108:3",
"files": "44",
"methods": "579",
"calls": "4134",
"file_names": [
"Gruntfile.js",
"app/assets/js/chart/chart-data-morris.js",
"app/assets/js/tour/redirects-steps.js",
"app/data/allocations-dao.js",
"app/data/benefits-dao.js",
"app/data/contributions-dao.js",
"app/data/memos-dao.js",
"app/data/profile-dao.js",
"app/data/research-dao.js",
"app/data/user-dao.js",
"app/routes/allocations.js",
"app/routes/benefits.js",
"app/routes/contributions.js",
"app/routes/error.js",
"app/routes/index.js",
"app/routes/memos.js",
"app/routes/profile.js",
"app/routes/research.js",
"app/routes/session.js",
"app/routes/tutorial.js",
"artifacts/db-reset.js",
"config/config.js",
"config/env/all.js",
"config/env/development.js",
"config/env/production.js",
"config/env/test.js",
"server.js",
"test/e2e/integration/allocations_spec.js",
"test/e2e/integration/benefits_spec.js",
"test/e2e/integration/contributions_spec.js",
"test/e2e/integration/dashboard_spec.js",
"test/e2e/integration/general_spec.js",
"test/e2e/integration/learn_spec.js",
"test/e2e/integration/login_spec.js",
"test/e2e/integration/logout_spec.js",
"test/e2e/integration/memos_spec.js",
"test/e2e/integration/profile_spec.js",
"test/e2e/integration/research_spec.js",
"test/e2e/integration/signup_spec.js",
"test/e2e/integration/tutorial_spec.js",
"test/e2e/plugins/index.js",
"test/e2e/support/commands.js",
"test/e2e/support/index.js",
"test/security/profile-test.js"
],
"overlays": "base,controlflow,typerel,callgraph,dataflowOss"
}
},
{
"seconds": 0.22122467402368784,
"query": "java.nio.file.Files.writeString(java.nio.file.Path.of(\"/tmp/session-probe-7zkl39j0/census-4.json\"), ujson.write(ujson.Obj(\"receipt\" -> \"108:4\", \"files\" -> cpg.file.size.toString, \"methods\" -> cpg.method.size.toString, \"calls\" -> cpg.call.size.toString, \"file_names\" -> ujson.Arr.from(cpg.file.name.l), \"overlays\" -> cpg.metaData.overlays.l.mkString(\",\"))))",
"response": {
"success": true,
"stdout": "\u001b[33mval\u001b[0m \u001b[36mres5\u001b[0m: java.nio.file.Path = /tmp/session-probe-7zkl39j0/census-4.json\n",
"uuid": "85453705-c0ec-4bf9-a76a-068941baa4df"
},
"file_receipt": {
"receipt": "108:4",
"files": "44",
"methods": "579",
"calls": "4134",
"file_names": [
"Gruntfile.js",
"app/assets/js/chart/chart-data-morris.js",
"app/assets/js/tour/redirects-steps.js",
"app/data/allocations-dao.js",
"app/data/benefits-dao.js",
"app/data/contributions-dao.js",
"app/data/memos-dao.js",
"app/data/profile-dao.js",
"app/data/research-dao.js",
"app/data/user-dao.js",
"app/routes/allocations.js",
"app/routes/benefits.js",
"app/routes/contributions.js",
"app/routes/error.js",
"app/routes/index.js",
"app/routes/memos.js",
"app/routes/profile.js",
"app/routes/research.js",
"app/routes/session.js",
"app/routes/tutorial.js",
"artifacts/db-reset.js",
"config/config.js",
"config/env/all.js",
"config/env/development.js",
"config/env/production.js",
"config/env/test.js",
"server.js",
"test/e2e/integration/allocations_spec.js",
"test/e2e/integration/benefits_spec.js",
"test/e2e/integration/contributions_spec.js",
"test/e2e/integration/dashboard_spec.js",
"test/e2e/integration/general_spec.js",
"test/e2e/integration/learn_spec.js",
"test/e2e/integration/login_spec.js",
"test/e2e/integration/logout_spec.js",
"test/e2e/integration/memos_spec.js",
"test/e2e/integration/profile_spec.js",
"test/e2e/integration/research_spec.js",
"test/e2e/integration/signup_spec.js",
"test/e2e/integration/tutorial_spec.js",
"test/e2e/plugins/index.js",
"test/e2e/support/commands.js",
"test/e2e/support/index.js",
"test/security/profile-test.js"
],
"overlays": "base,controlflow,typerel,callgraph,dataflowOss"
}
},
{
"seconds": 0.05666331492830068,
"query": "def ousastHang(): Unit = { java.nio.file.Files.writeString(java.nio.file.Path.of(\"/tmp/session-probe-7zkl39j0/hanging-request-entered\"), \"entered\"); Thread.sleep(10000) }",
"response": {
"success": true,
"stdout": "def ousastHang(): Unit\n",
"uuid": "8c4d2f12-b2da-4f21-999f-7d6cc6b42431"
}
}
],
"graph_manifest": {
"complete": true,
"key": "07185611945033bf128c962ae71a70f1196345f9525ebaead472f62d6f045028",
"metadata": {
"census": {
"calls": 4134,
"files": 44,
"methods": 579
},
"completeness": "complete",
"diagnostics": [],
"graph_digest": "ecb311e3fe1fe500d8f6269916d5cf835a44db25318449750583fc8f3e6de462",
"identity": {
"declarations_digest": "285af83095d6e43bbb0b995cd46e7b65a109d715ec6b6a5fd4367dcea8c406fd",
"engine_version": "4.0.625",
"exclusions_digest": "eab75a523f55acc077e1024b46236ab585ee9e79a4e7563b0204dcab4fcc6183",
"frontend": "jssrc2cpg",
"frontend_options": [
[
"include_tests",
"True"
],
[
"include_build_configs",
"True"
],
[
"installation",
"c9860f63eb08efd404b60cd7d23c65798028f8684e915fe7472e1dc4763a23e5"
],
[
"java_options",
"default"
]
],
"frontend_version": "4.0.625",
"language": "javascript",
"overlay_options": [
[
"implementation",
"b1b5bf7b5609ea930a06addb404840b12b7c0e36cdd083ea0d11ede01f8f6647"
]
],
"overlay_semantics": [
"dataflowOss"
],
"source_digest": "dea287382ca0cf5074b9e85c7823792738bbc5c8bb8a3e4ed06ebc0a2cc13149",
"unit": "repository"
},
"source_bytes": 95411,
"source_paths": [
"Gruntfile.js",
"app/assets/js/chart/chart-data-morris.js",
"app/assets/js/tour/redirects-steps.js",
"app/data/allocations-dao.js",
"app/data/benefits-dao.js",
"app/data/contributions-dao.js",
"app/data/memos-dao.js",
"app/data/profile-dao.js",
"app/data/research-dao.js",
"app/data/user-dao.js",
"app/routes/allocations.js",
"app/routes/benefits.js",
"app/routes/contributions.js",
"app/routes/error.js",
"app/routes/index.js",
"app/routes/memos.js",
"app/routes/profile.js",
"app/routes/research.js",
"app/routes/session.js",
"app/routes/tutorial.js",
"artifacts/db-reset.js",
"config/config.js",
"config/env/all.js",
"config/env/development.js",
"config/env/production.js",
"config/env/test.js",
"server.js",
"test/e2e/integration/allocations_spec.js",
"test/e2e/integration/benefits_spec.js",
"test/e2e/integration/contributions_spec.js",
"test/e2e/integration/dashboard_spec.js",
"test/e2e/integration/general_spec.js",
"test/e2e/integration/learn_spec.js",
"test/e2e/integration/login_spec.js",
"test/e2e/integration/logout_spec.js",
"test/e2e/integration/memos_spec.js",
"test/e2e/integration/profile_spec.js",
"test/e2e/integration/research_spec.js",
"test/e2e/integration/signup_spec.js",
"test/e2e/integration/tutorial_spec.js",
"test/e2e/plugins/index.js",
"test/e2e/support/commands.js",
"test/e2e/support/index.js",
"test/security/profile-test.js"
],
"source_root": "/tmp/ousast-input-iczx7vvd"
},
"receipt": "297ca4188e5a0a00229097d4a9a44d8978a7be659890b900ae976186dbcf15dd",
"sha256": "ecb311e3fe1fe500d8f6269916d5cf835a44db25318449750583fc8f3e6de462",
"size": 727481,
"version": 1
},
"input_probe": {
"path": "/cache/nodegoat/c5cb68a7084e/app/routes/contributions.js",
"bytes": 2485,
"sha256": "196bdeaa22da4cfe8a851b1b932710b2fcedd21f14ed75d70b739ba759a01003"
},
"source_receipts": [
{
"path": "Gruntfile.js",
"bytes": 6359,
"sha256": "2e9fd032cbc6a5594d90c76448ce37b98be0f0d3ef7a66e6b4aabbc674293af6"
},
{
"path": "app/assets/js/chart/chart-data-morris.js",
"bytes": 3718,
"sha256": "a5511ae7a5614f9f2dd89625bce94d6b794a675dae4987259d087a8d2e8e2693"
},
{
"path": "app/assets/js/tour/redirects-steps.js",
"bytes": 648,
"sha256": "16babf9b88e186cb4e2a7ab896a78494f6d4a88737c903eb1e23e35579ac651b"
},
{
"path": "app/data/allocations-dao.js",
"bytes": 3928,
"sha256": "c6aebc971ce7f9c8b2a8f0864a500497de25a3ea0318ef94ecd57cadf6e789ea"
},
{
"path": "app/data/benefits-dao.js",
"bytes": 1240,
"sha256": "0ac30b097e016eeffb10e1c72d9c657153d3ce67e7b3f4756b2cb127d94181d7"
},
{
"path": "app/data/contributions-dao.js",
"bytes": 2791,
"sha256": "363065e8b3c32f0997ce2dcb17341eb3e40b7f43b00b72c576dfebf73f551c85"
},
{
"path": "app/data/memos-dao.js",
"bytes": 1107,
"sha256": "6582195bd913c2d60d63e9b519f9508a3319e07e158fd0c6f31dcbc50a80e8cf"
},
{
"path": "app/data/profile-dao.js",
"bytes": 3506,
"sha256": "80429a5df579867401a59b1cbd9c1d74f88d5548780fbd909e9504876c1968cc"
},
{
"path": "app/data/research-dao.js",
"bytes": 750,
"sha256": "f1cf267e56080fc94943ad7d83802b4e9db9420687fac49f84dbc0e45dfa88ac"
},
{
"path": "app/data/user-dao.js",
"bytes": 4078,
"sha256": "577fb140933a50e010a4bbcb74e975f678d7f3a989467e4d113926f35c042e64"
},
{
"path": "app/routes/allocations.js",
"bytes": 915,
"sha256": "b5b7da1a6b595799cf6cca402756dd9a3f6e2a8b5d712c1989d23b7f01f349a6"
},
{
"path": "app/routes/benefits.js",
"bytes": 1340,
"sha256": "bc5516b35ba21884915b88b3f810441e616f068d8a0cf756b143185d5aeda2d2"
},
{
"path": "app/routes/contributions.js",
"bytes": 2485,
"sha256": "196bdeaa22da4cfe8a851b1b932710b2fcedd21f14ed75d70b739ba759a01003"
},
{
"path": "app/routes/error.js",
"bytes": 281,
"sha256": "452dc61f9f06a31ea4305edb2e573fc940428615841533b59320792fcfb6fb3f"
},
{
"path": "app/routes/index.js",
"bytes": 3149,
"sha256": "3ab970b2888bc1501515db24a83cc7851ac9c09d00948c652300401515185eb5"
},
{
"path": "app/routes/memos.js",
"bytes": 824,
"sha256": "c3543f308f24083436e25e3a72210ad31e611db5c93268d8dd0e340095e132c9"
},
{
"path": "app/routes/profile.js",
"bytes": 3633,
"sha256": "18575bf3d3710906e57e09e6036e40fd3986bdcca436ed0e2a2875b41f0f2aca"
},
{
"path": "app/routes/research.js",
"bytes": 1071,
"sha256": "e399f3c70436fa160f00835626bf50f88980268fcd143436af97c9d2297c1d92"
},
{
"path": "app/routes/session.js",
"bytes": 10199,
"sha256": "e53e38b6eea76b026efaacde07f694e7a2eca005de4083fb74f9393d432a5b25"
},
{
"path": "app/routes/tutorial.js",
"bytes": 637,
"sha256": "502e0b959b37cbc844d15eadd7a78a40b5281155fcf8d532f0e4abdd2fee8eb9"
},
{
"path": "artifacts/db-reset.js",
"bytes": 4183,
"sha256": "df5d947ef23786683ab0d5f3c5ed5ef3f25ab93ce7610448c6db79b446168aa9"
},
{
"path": "config/config.js",
"bytes": 487,
"sha256": "b84b1bf634159caffdef50fe826077e60dbde1e381ceb148ff3b869e789b6962"
},
{
"path": "config/env/all.js",
"bytes": 365,
"sha256": "31a71288f0d830799da9c39e1b1ad10b0e989282bcf9a31bb48f8f618f37f6ad"
},
{
"path": "config/env/development.js",
"bytes": 636,
"sha256": "1829bc509dcc6a6eb58b0eee49901df530b9cceafa2ed37e855beacec4971f08"
},
{
"path": "config/env/production.js",
"bytes": 21,
"sha256": "8222b8169ee86f25cdccd84d340340060ae3f0cff55e2ea9d344d7c332733b71"
},
{
"path": "config/env/test.js",
"bytes": 318,
"sha256": "b48cd5c17fc9639c1c4198fced69b438c2b0c7fe70e80f0113bcd0d86cd583a5"
},
{
"path": "server.js",
"bytes": 4860,
"sha256": "48ec5e8f9668b230caf6af27f4a4ffbdcd8b702b376a6bbcc951217917c6ea2e"
},
{
"path": "test/e2e/integration/allocations_spec.js",
"bytes": 1062,
"sha256": "d345f97bc2c3c9e559d98f3e108ab568303c7509dbe707c4cc49f811d5f94db7"
},
{
"path": "test/e2e/integration/benefits_spec.js",
"bytes": 1228,
"sha256": "e4eb2765b08769e86b140dceee3091a5466da13933400272076b6de693b5cb71"
},
{
"path": "test/e2e/integration/contributions_spec.js",
"bytes": 1160,
"sha256": "8504f4cbbe578b91f112b7effffb0e43823af9648c5b406ded5a0d65fb4bbde3"
},
{
"path": "test/e2e/integration/dashboard_spec.js",
"bytes": 933,
"sha256": "96ef5e6d8b75787ac9a44fcd5f918cd3493680e74c70c45b381fe4416fa7f4f8"
},
{
"path": "test/e2e/integration/general_spec.js",
"bytes": 2044,
"sha256": "5364de581df32c99964f63baa8486fcd32b922c9f327192f3a1e81ca6cd0ceff"
},
{
"path": "test/e2e/integration/learn_spec.js",
"bytes": 471,
"sha256": "05e6bf11c5e773cd22861dbe18bced293024a7400c3a89b2c0e111bb88d8eaa1"
},
{
"path": "test/e2e/integration/login_spec.js",
"bytes": 2377,
"sha256": "e1433dfab270ac3f7b32f4ee904d781c2bb2581804177a0cafc488f6c79efb25"
},
{
"path": "test/e2e/integration/logout_spec.js",
"bytes": 737,
"sha256": "31ebf201e7d899baf8acd1d50c3fc4e42a5636c263982e5e517a1eaf3e35518f"
},
{
"path": "test/e2e/integration/memos_spec.js",
"bytes": 991,
"sha256": "625a08e3c9f80cf46f3fe81c2acde3dc76d955bde10aa7c68498b6830b7a86b4"
},
{
"path": "test/e2e/integration/profile_spec.js",
"bytes": 1509,
"sha256": "e22ce888656d18e020ca2775396e000cc899bdac255a1503f9af2c4ef18ffef0"
},
{
"path": "test/e2e/integration/research_spec.js",
"bytes": 1108,
"sha256": "4e81ed0c2cf42da656217c1e38a35f9257d0a09467ffbe25d9d19930df05ed3a"
},
{
"path": "test/e2e/integration/signup_spec.js",
"bytes": 1734,
"sha256": "27c56206888e1d664f852090ed943dc746638724743f7d5fb12d35e39136d22f"
},
{
"path": "test/e2e/integration/tutorial_spec.js",
"bytes": 1819,
"sha256": "2664d921df2c716695df8c216e93b76a9b09376100ee8bc5c3f4354f0ebdb8a6"
},
{
"path": "test/e2e/plugins/index.js",
"bytes": 788,
"sha256": "1fd870a6602782c27f87cd1aaaae24da269b20408612f718125b4471242f6e83"
},
{
"path": "test/e2e/support/commands.js",
"bytes": 839,
"sha256": "967bdb0f97ec8277d952de4273c1bf2fcc000b1eb08de533a80e34157f65e499"
},
{
"path": "test/e2e/support/index.js",
"bytes": 27,
"sha256": "a74243373740a95e3e3691087776e652ba954fcfd96130c4c374279a7310683d"
},
{
"path": "test/security/profile-test.js",
"bytes": 13055,
"sha256": "17b6d02097d2fdfaebcdae31e70620fe691b5cabbcd99829d7c8d72ac3d4239a"
}
],
"graph_bytes": 727481,
"disposable_census": {
"seconds": 14.29165190004278,
"exit_code": 0,
"stdout": "ERROR StatusConsoleListener Could not determine local host name\n java.net.UnknownHostException: 1f1a1df5d1b2: 1f1a1df5d1b2: Temporary failure in name resolution\n\tat java.base/java.net.InetAddress.getLocalHost(Unknown Source)\n\tat org.apache.logging.log4j.core.util.NetUtils.getLocalHostname(NetUtils.java:56)\n\tat org.apache.logging.log4j.core.LoggerContext.lambda$setConfiguration$0(LoggerContext.java:615)\n\tat java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(Unknown Source)\n\tat org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:615)\n\tat org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:694)\n\tat org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:711)\n\tat org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:253)\n\tat org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:155)\n\tat org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:47)\n\tat org.apache.logging.log4j.LogManager.getContext(LogManager.java:196)\n\tat org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:137)\n\tat org.apache.logging.slf4j.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:61)\n\tat org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:47)\n\tat org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:33)\n\tat org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:447)\n\tat org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:472)\n\tat io.shiftleft.semanticcpg.sarif.SarifSchema$.<clinit>(SarifSchema.scala:10)\n\tat io.shiftleft.semanticcpg.sarif.SarifConfig$.$lessinit$greater$default$8(SarifConfig.scala:38)\n\tat ScalaReplPP$.<clinit>(wrapped-script15917914099764983556.sc:21)\n\tat ScalaReplPP.main(wrapped-script15917914099764983556.sc)\n\tat java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(Unknown Source)\n\tat java.base/java.lang.reflect.Method.invoke(Unknown Source)\n\tat replpp.scripting.ScriptingDriver.$anonfun$2(ScriptingDriver.scala:60)\n\tat replpp.util.SimpleDriver.compile$$anonfun$1(SimpleDriver.scala:81)\n\tat scala.util.Try$.apply(Try.scala:195)\n\tat replpp.util.SimpleDriver.compile(SimpleDriver.scala:83)\n\tat replpp.scripting.ScriptingDriver.compileAndRun(ScriptingDriver.scala:53)\n\tat replpp.scripting.NonForkingScriptRunner$.exec(NonForkingScriptRunner.scala:48)\n\tat replpp.scripting.NonForkingScriptRunner$.main(NonForkingScriptRunner.scala:21)\n\tat replpp.scripting.NonForkingScriptRunner.main(NonForkingScriptRunner.scala)\nCaused by: java.net.UnknownHostException: 1f1a1df5d1b2: Temporary failure in name resolution\n\tat java.base/java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)\n\tat java.base/java.net.Inet6AddressImpl.lookupAllHostAddr(Unknown Source)\n\tat java.base/java.net.InetAddress$PlatformResolver.lookupByName(Unknown Source)\n\tat java.base/java.net.InetAddress.getAddressesFromNameService(Unknown Source)\n\tat java.base/java.net.InetAddress$NameServiceAddresses.get(Unknown Source)\n\tat java.base/java.net.InetAddress.getAllByName0(Unknown Source)\n\t... 31 more\n[INFO ] initialising from existing storage (/tmp/session-probe-7zkl39j0/workspace/cpg.bin/cpg.bin.tmp)\n[INFO ] Start of pass: io.joern.x2cpg.frontendspecific.jssrc2cpg.JavaScriptInheritanceNamePass\n[INFO ] Pass io.joern.x2cpg.frontendspecific.jssrc2cpg.JavaScriptInheritanceNamePass completed in 39 ms (62% on mutations). 0 + 0 changes committed from 0 parts.\n[INFO ] Start of pass: io.joern.x2cpg.frontendspecific.jssrc2cpg.ConstClosurePass\n[INFO ] Pass io.joern.x2cpg.frontendspecific.jssrc2cpg.ConstClosurePass completed in 169 ms (9% on mutations). 39 + 0 changes committed from 1 parts.\n[INFO ] Start of pass: io.joern.x2cpg.frontendspecific.jssrc2cpg.JavaScriptImportResolverPass\n[INFO ] Pass io.joern.x2cpg.frontendspecific.jssrc2cpg.JavaScriptImportResolverPass completed in 139 ms (9% on mutations). 274 + 0 changes co
"stderr": "Picked up JAVA_TOOL_OPTIONS: -Xmx1536m\nPicked up JAVA_TOOL_OPTIONS: -Xmx1536m\nexecuting /app/src/openultrasast/cpg/queries/census.sc with params=Map(cpgFile -> /tmp/session-probe-7zkl39j0/cpg.bin)\nCreating project `cpg.bin` for CPG at `/tmp/session-probe-7zkl39j0/cpg.bin`\nCreating working copy of CPG to be safe\nLoading base CPG from: /tmp/session-probe-7zkl39j0/workspace/cpg.bin/cpg.bin.tmp\nOverlay dataflowOss already exists - skipping\nThe graph has been modified. You may want to use the `save` command to persist changes to disk. All changes will also be saved collectively on exit\nclosing/saving project `cpg.bin`\n"
},
"server_startup_seconds": 12.80504657595884,
"census_equivalent": true,
"hanging_request_entered": true,
"cancellation_seconds": 0.04341585794463754,
"status": "PASS_LIFECYCLE_PROBE_ONLY"
},
"server_log": "Picked up JAVA_TOOL_OPTIONS: -Xmx1536m\nERROR StatusConsoleListener Could not determine local host name\n java.net.UnknownHostException: 1f1a1df5d1b2: 1f1a1df5d1b2: Temporary failure in name resolution\n\tat java.base/java.net.InetAddress.getLocalHost(Unknown Source)\n\tat org.apache.logging.log4j.core.util.NetUtils.getLocalHostname(NetUtils.java:56)\n\tat org.apache.logging.log4j.core.LoggerContext.lambda$setConfiguration$0(LoggerContext.java:615)\n\tat java.base/java.util.concurrent.ConcurrentHashMap.computeIfAbsent(Unknown Source)\n\tat org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:615)\n\tat org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:694)\n\tat org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:711)\n\tat org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:253)\n\tat org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:155)\n\tat org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:47)\n\tat org.apache.logging.log4j.LogManager.getContext(LogManager.java:196)\n\tat org.apache.logging.log4j.spi.AbstractLoggerAdapter.getContext(AbstractLoggerAdapter.java:137)\n\tat org.apache.logging.slf4j.Log4jLoggerFactory.getContext(Log4jLoggerFactory.java:61)\n\tat org.apache.logging.log4j.spi.AbstractLoggerAdapter.getLogger(AbstractLoggerAdapter.java:47)\n\tat org.apache.logging.slf4j.Log4jLoggerFactory.getLogger(Log4jLoggerFactory.java:33)\n\tat org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:447)\n\tat org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:472)\n\tat replpp.server.ReplServer$.<clinit>(ReplServer.scala:16)\n\tat io.joern.console.ServerHandling.startHttpServer(BridgeBase.scala:477)\n\tat io.joern.console.ServerHandling.startHttpServer$(BridgeBase.scala:464)\n\tat io.joern.joerncli.console.ReplBridge$.startHttpServer(ReplBridge.scala:5)\n\tat io.joern.console.BridgeBase.run(BridgeBase.scala:239)\n\tat io.joern.console.BridgeBase.run$(BridgeBase.scala:55)\n\tat io.joern.joerncli.console.ReplBridge$.run(ReplBridge.scala:5)\n\tat io.joern.joerncli.console.ReplBridge$.main(ReplBridge.scala:10)\n\tat io.joern.joerncli.console.ReplBridge.main(ReplBridge.scala)\nCaused by: java.net.UnknownHostException: 1f1a1df5d1b2: Temporary failure in name resolution\n\tat java.base/java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)\n\tat java.base/java.net.Inet6AddressImpl.lookupAllHostAddr(Unknown Source)\n\tat java.base/java.net.InetAddress$PlatformResolver.lookupByName(Unknown Source)\n\tat java.base/java.net.InetAddress.getAddressesFromNameService(Unknown Source)\n\tat java.base/java.net.InetAddress$NameServiceAddresses.get(Unknown Source)\n\tat java.base/java.net.InetAddress.getAllByName0(Unknown Source)\n\t... 26 more\nusing jar from inherited classpath: /opt/joern-cli/lib/org.scala-lang.tasty-core_3-3.8.3.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/org.apache.logging.log4j.log4j-core-2.20.0.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/com.fasterxml.jackson.core.jackson-core-2.17.2.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.joern.rubysrc2cpg-4.0.625.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.joern.dataflowengineoss-4.0.625.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.joern.flatgraph-formats_3-0.1.34.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.joern.flatgraph-odb-convert_3-0.1.34.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/com.lihaoyi.cask_3-0.9.5.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/com.lihaoyi.upickle-core_3-4.1.0.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.shiftleft.overflowdb-core_3-1.194.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/org.json4s.json4s-native_3-4.0.7.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/com.lihaoyi.castor_3-0.3.0.jar\nusing jar from inherited classpath: /opt/joern-cli/lib/io.undertow.undertow-core-2.
}
],
"final_summary": {
"disposable_census_seconds": 14.29165190004278,
"session_startup_seconds": 12.80504657595884,
"graph_load_seconds": 3.6359307559905574,
"first_census_seconds": 1.402274933992885,
"warm_census_seconds": [
0.3387976880185306,
0.4674431789899245,
0.35327990900259465,
0.22122467402368784
],
"cancellation_seconds": 0.04341585794463754,
"hanging_operation_entry_verified": true,
"process_group_absence_verified": true,
"source_files_reopened": 44,
"source_bytes_reopened": 95411,
"decision": "Promising transport candidate; production integration remains unverified."
},
"reproduce": "Extract an attempt instrument to /tmp/ousast-session-probe.py; run after reproducing the post-census profile at /tmp/group8-runtime/post-census-runtime-v1. Use a fresh output directory for repeats. docker run --rm --init --network none --memory 3g --entrypoint python -v /tmp/ousast-session-probe.py:/probe.py:ro -v /tmp/group8-runtime:/results -v /home/mc/.cache/openultrasast/repos:/cache:ro openultrasast:dev /probe.py. Build the recorded candidate commit; verify the image and runtime provenance."
}