[PR #248] [MERGED] feat(domain): add versioned JavaScript Application Graph #1899

Closed
opened 2026-10-16 21:12:18 +00:00 by bsakaguchi · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/morluto/rea/pull/248
Author: @N0zoM1z0
Created: 7/15/2026
Status: ✅ Merged
Merged: 7/15/2026
Merged by: @N0zoM1z0

Base: main ← Head: agent/add-javascript-application-graph


📝 Commits (2)

  • 9432cf0 feat(domain): add versioned JavaScript Application Graph
  • d3f0e42 docs: regenerate JavaScript graph API with Node 24

📊 Changes

65 files changed (+3630 additions, -57 deletions)

View changed files

📝 AGENTS.md (+2 -2)
📝 README.md (+3 -2)
📝 docs/api/assets/hierarchy.js (+1 -1)
📝 docs/api/assets/navigation.js (+1 -1)
📝 docs/api/assets/search.js (+1 -1)
📝 docs/api/classes/application_PermissionAuthority.PermissionPathError.html (+1 -1)
📝 docs/api/classes/application_ProcessCaptureError.ProcessCaptureError.html (+1 -1)
📝 docs/api/classes/application_ProjectPermissionStore.ProjectPermissionStoreError.html (+1 -1)
📝 docs/api/classes/domain_permissionPolicy.PermissionGrantError.html (+1 -1)
📝 docs/api/classes/ghidra_GhidraLauncher.GhidraLaunchError.html (+1 -1)
📝 docs/api/classes/ghidra_GhidraSessionError.GhidraSessionError.html (+1 -1)
📝 docs/api/classes/ghidra_protocol.GhidraRemoteError.html (+1 -1)
➕ docs/api/functions/domain_javascriptApplicationGraph.computeJavaScriptApplicationGraphSha256.html (+44 -0)
➕ docs/api/functions/domain_javascriptApplicationGraph.createJavaScriptApplicationEdge.html (+44 -0)
➕ docs/api/functions/domain_javascriptApplicationGraph.createJavaScriptApplicationGraph.html (+44 -0)
➕ docs/api/functions/domain_javascriptApplicationGraph.createJavaScriptApplicationNode.html (+44 -0)
➕ docs/api/functions/domain_javascriptApplicationGraph.parseJavaScriptApplicationGraph.html (+44 -0)
➕ docs/api/functions/domain_javascriptApplicationGraph.serializeJavaScriptApplicationGraph.html (+44 -0)
📝 docs/api/hierarchy.html (+26 -26)
📝 docs/api/index.html (+2 -2)

...and 45 more files

📄 Description

Summary

  • add a strict, provider-neutral JavaScript Application Graph v1 spanning packages, ASAR entries, Electron roles, JavaScript/source-map entities, browser/runtime instances, IPC, storage/endpoints, and native add-ons
  • keep entity identity separate from evidence-bearing observations, with explicit authority, epistemic state, confidence, artifact/location, extractor version, coverage, limitations, and identifier stability
  • derive and verify canonical node, observation, edge, graph, and serialized commitments; reject stale IDs, malformed versions, dangling/self edges, false completeness, and mixed static/runtime authority
  • add a source-owned synthetic package → ASAR → preload → contextBridge → IPC → native add-on/runtime fixture and pure domain coverage
  • publish the durable schema in the generated product catalog, architecture/narrative docs, and TypeDoc API

Contract and behavior

  • New durable schema: javascript_application_graph version 1
  • No CLI or MCP tool additions; the inventory remains 78 tools
  • No filesystem/CDP I/O, JavaScript execution, application-specific detectors, or provider-specific domain types
  • Unknown and unavailable values remain explicit; inference is never promoted to observation

Verification

  • npm run check — 123 test files, 869 tests; statements 83.25%, branches 72.39%, lines 85.50%
  • npm run knip
  • npm run jscpd
  • npm run scan:todos
  • npm run verify:package under Node v22.19.0 — packaged CLI/setup/skill/78-tool target-free MCP verification passed
  • focused JavaScript Application Graph suite — 16 tests passed

Real Hopper, Ghidra, and browser verification was not run because this PR adds a pure domain contract and performs no provider or runtime I/O.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/morluto/rea/pull/248 **Author:** [@N0zoM1z0](https://github.com/N0zoM1z0) **Created:** 7/15/2026 **Status:** ✅ Merged **Merged:** 7/15/2026 **Merged by:** [@N0zoM1z0](https://github.com/N0zoM1z0) **Base:** `main` ← **Head:** `agent/add-javascript-application-graph` --- ### 📝 Commits (2) - [`9432cf0`](https://github.com/morluto/rea/commit/9432cf083b1fc3e951ca0c8fb8205a39b3a33692) feat(domain): add versioned JavaScript Application Graph - [`d3f0e42`](https://github.com/morluto/rea/commit/d3f0e420c56d338db6464e6bc29bca80cf7cf1df) docs: regenerate JavaScript graph API with Node 24 ### 📊 Changes **65 files changed** (+3630 additions, -57 deletions) <details> <summary>View changed files</summary> 📝 `AGENTS.md` (+2 -2) 📝 `README.md` (+3 -2) 📝 `docs/api/assets/hierarchy.js` (+1 -1) 📝 `docs/api/assets/navigation.js` (+1 -1) 📝 `docs/api/assets/search.js` (+1 -1) 📝 `docs/api/classes/application_PermissionAuthority.PermissionPathError.html` (+1 -1) 📝 `docs/api/classes/application_ProcessCaptureError.ProcessCaptureError.html` (+1 -1) 📝 `docs/api/classes/application_ProjectPermissionStore.ProjectPermissionStoreError.html` (+1 -1) 📝 `docs/api/classes/domain_permissionPolicy.PermissionGrantError.html` (+1 -1) 📝 `docs/api/classes/ghidra_GhidraLauncher.GhidraLaunchError.html` (+1 -1) 📝 `docs/api/classes/ghidra_GhidraSessionError.GhidraSessionError.html` (+1 -1) 📝 `docs/api/classes/ghidra_protocol.GhidraRemoteError.html` (+1 -1) ➕ `docs/api/functions/domain_javascriptApplicationGraph.computeJavaScriptApplicationGraphSha256.html` (+44 -0) ➕ `docs/api/functions/domain_javascriptApplicationGraph.createJavaScriptApplicationEdge.html` (+44 -0) ➕ `docs/api/functions/domain_javascriptApplicationGraph.createJavaScriptApplicationGraph.html` (+44 -0) ➕ `docs/api/functions/domain_javascriptApplicationGraph.createJavaScriptApplicationNode.html` (+44 -0) ➕ `docs/api/functions/domain_javascriptApplicationGraph.parseJavaScriptApplicationGraph.html` (+44 -0) ➕ `docs/api/functions/domain_javascriptApplicationGraph.serializeJavaScriptApplicationGraph.html` (+44 -0) 📝 `docs/api/hierarchy.html` (+26 -26) 📝 `docs/api/index.html` (+2 -2) _...and 45 more files_ </details> ### 📄 Description ## Summary - add a strict, provider-neutral JavaScript Application Graph v1 spanning packages, ASAR entries, Electron roles, JavaScript/source-map entities, browser/runtime instances, IPC, storage/endpoints, and native add-ons - keep entity identity separate from evidence-bearing observations, with explicit authority, epistemic state, confidence, artifact/location, extractor version, coverage, limitations, and identifier stability - derive and verify canonical node, observation, edge, graph, and serialized commitments; reject stale IDs, malformed versions, dangling/self edges, false completeness, and mixed static/runtime authority - add a source-owned synthetic package → ASAR → preload → contextBridge → IPC → native add-on/runtime fixture and pure domain coverage - publish the durable schema in the generated product catalog, architecture/narrative docs, and TypeDoc API ## Contract and behavior - New durable schema: `javascript_application_graph` version 1 - No CLI or MCP tool additions; the inventory remains 78 tools - No filesystem/CDP I/O, JavaScript execution, application-specific detectors, or provider-specific domain types - Unknown and unavailable values remain explicit; inference is never promoted to observation ## Verification - `npm run check` — 123 test files, 869 tests; statements 83.25%, branches 72.39%, lines 85.50% - `npm run knip` - `npm run jscpd` - `npm run scan:todos` - `npm run verify:package` under Node v22.19.0 — packaged CLI/setup/skill/78-tool target-free MCP verification passed - focused JavaScript Application Graph suite — 16 tests passed Real Hopper, Ghidra, and browser verification was not run because this PR adds a pure domain contract and performs no provider or runtime I/O. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
bsakaguchi 2026-10-16 21:12:18 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
morluto/rea#1899
No description provided.