Skip to content

Commit f3181b3

Browse files
authored
Merge pull request #70 from BruinGrowly/cursor/check-ci-action-errors-b629
Check ci action errors
2 parents e434653 + 817e2ac commit f3181b3

File tree

1 file changed

+39
-39
lines changed

1 file changed

+39
-39
lines changed

harmonizer_report.html

Lines changed: 39 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -18,87 +18,87 @@
1818
--power: #ef4444;
1919
--wisdom: #3b82f6;
2020
}
21-
21+
2222
body {
2323
font-family: 'Inter', system-ui, sans-serif;
2424
background-color: var(--bg-color);
2525
color: var(--text-primary);
2626
margin: 0;
2727
padding: 20px;
2828
}
29-
29+
3030
.container {
3131
max_width: 1400px;
3232
margin: 0 auto;
3333
}
34-
34+
3535
header {
3636
margin-bottom: 30px;
3737
border-bottom: 1px solid #334155;
3838
padding-bottom: 20px;
3939
}
40-
40+
4141
h1 { margin: 0; font-size: 2rem; }
4242
.subtitle { color: var(--text-secondary); margin-top: 5px; }
43-
43+
4444
.grid {
4545
display: grid;
4646
grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
4747
gap: 20px;
4848
margin-bottom: 30px;
4949
}
50-
50+
5151
.card {
5252
background-color: var(--card-bg);
5353
border-radius: 12px;
5454
padding: 20px;
5555
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
5656
}
57-
57+
5858
.card h2 { margin-top: 0; font-size: 1.2rem; color: var(--accent); }
59-
59+
6060
#galaxy-graph {
6161
width: 100%;
6262
height: 600px;
6363
background-color: #020617;
6464
border-radius: 8px;
6565
}
66-
66+
6767
table {
6868
width: 100%;
6969
border-collapse: collapse;
7070
margin-top: 10px;
7171
}
72-
72+
7373
th, td {
7474
text-align: left;
7575
padding: 12px;
7676
border-bottom: 1px solid #334155;
7777
}
78-
78+
7979
th { color: var(--text-secondary); font-weight: 600; }
80-
80+
8181
.badge {
8282
padding: 4px 8px;
8383
border-radius: 4px;
8484
font-size: 0.8rem;
8585
font-weight: bold;
8686
}
87-
87+
8888
.badge-love { background: rgba(244, 114, 182, 0.2); color: var(--love); }
8989
.badge-justice { background: rgba(251, 191, 36, 0.2); color: var(--justice); }
9090
.badge-power { background: rgba(239, 68, 68, 0.2); color: var(--power); }
9191
.badge-wisdom { background: rgba(59, 130, 246, 0.2); color: var(--wisdom); }
92-
92+
9393
</style>
9494
</head>
9595
<body>
9696
<div class="container">
9797
<header>
9898
<h1>LJPW Code Harmony Report</h1>
99-
<div class="subtitle">Generated on 2025-11-19 20:26</div>
99+
<div class="subtitle">Generated on 2025-11-20 18:56</div>
100100
</header>
101-
101+
102102
<div class="grid">
103103
<div class="card">
104104
<h2>System Balance (Average)</h2>
@@ -109,16 +109,16 @@ <h2>Semantic Density vs Complexity</h2>
109109
<canvas id="scatterChart"></canvas>
110110
</div>
111111
</div>
112-
112+
113113
<div class="card" style="margin-bottom: 30px;">
114114
<h2>Dependency Galaxy (Gravitational Pull)</h2>
115115
<div id="galaxy-graph"></div>
116116
<p style="color: var(--text-secondary); font-size: 0.9rem; margin-top: 10px;">
117-
Nodes are sized by Mass (Complexity). Links show imports.
117+
Nodes are sized by Mass (Complexity). Links show imports.
118118
Colors represent dominant LJPW dimension.
119119
</p>
120120
</div>
121-
121+
122122
<div class="card">
123123
<h2>File Analysis</h2>
124124
<div style="overflow-x: auto;">
@@ -142,14 +142,14 @@ <h2>File Analysis</h2>
142142
</div>
143143

144144
<script>
145-
const data = {"files": [{"path": "C:\\Users\\Well\\Crush\\Projects\\Python_CH\\Python-Code-Harmonizer\\tests\\user_validation\\simple_data.py", "name": "simple_data.py", "l": 0.0, "j": 0.0, "p": 0.0, "w": 0.5, "functions": 2, "density": 0.0, "disharmony": 0.0}, {"path": "C:\\Users\\Well\\Crush\\Projects\\Python_CH\\Python-Code-Harmonizer\\tests\\user_validation\\simple_hello.py", "name": "simple_hello.py", "l": 1.0, "j": 0.0, "p": 0.0, "w": 0.0, "functions": 2, "density": 0.0, "disharmony": 0.0}, {"path": "C:\\Users\\Well\\Crush\\Projects\\Python_CH\\Python-Code-Harmonizer\\tests\\user_validation\\simple_math.py", "name": "simple_math.py", "l": 0.0, "j": 0.0, "p": 0.0, "w": 1.0, "functions": 3, "density": 0.0, "disharmony": 0.0}, {"path": "C:\\Users\\Well\\Crush\\Projects\\Python_CH\\Python-Code-Harmonizer\\tests\\user_validation\\complex_clean.py", "name": "complex_clean.py", "l": 0.08333333333333333, "j": 0.16666666666666666, "p": 0.08333333333333333, "w": 0.41666666666666663, "functions": 4, "density": 0.08333333333333333, "disharmony": 0.0}, {"path": "C:\\Users\\Well\\Crush\\Projects\\Python_CH\\Python-Code-Harmonizer\\tests\\user_validation\\complex_god.py", "name": "complex_god.py", "l": 0.4, "j": 0.23333333333333334, "p": 0.05, "w": 0.11666666666666667, "functions": 5, "density": 0.05, "disharmony": 0.0}, {"path": "C:\\Users\\Well\\Crush\\Projects\\Python_CH\\Python-Code-Harmonizer\\tests\\user_validation\\complex_spaghetti.py", "name": "complex_spaghetti.py", "l": 0.08333333333333333, "j": 0.16666666666666666, "p": 0.08333333333333333, "w": 0.41666666666666663, "functions": 4, "density": 0.08333333333333333, "disharmony": 0.0}], "graph": {"nodes": [{"id": "simple_data.py", "mass": 1.0, "gravity": 0}, {"id": "simple_hello.py", "mass": 1.0, "gravity": 0}, {"id": "simple_math.py", "mass": 1.0, "gravity": 0}, {"id": "complex_clean.py", "mass": 1.0, "gravity": 0}, {"id": "complex_god.py", "mass": 1.0, "gravity": 0}, {"id": "complex_spaghetti.py", "mass": 1.0, "gravity": 0}], "links": []}, "timestamp": "2025-11-19T20:26:48.834236", "project": "LJPW Validation Run"};
146-
145+
const data = {"files": [{"path": "/workspace/tests/user_validation/simple_hello.py", "name": "simple_hello.py", "l": 1.0, "j": 0.0, "p": 0.0, "w": 0.0, "functions": 2, "density": 0.0, "disharmony": 0.0}, {"path": "/workspace/tests/user_validation/simple_data.py", "name": "simple_data.py", "l": 0.0, "j": 0.0, "p": 0.0, "w": 0.5, "functions": 2, "density": 0.0, "disharmony": 0.0}, {"path": "/workspace/tests/user_validation/simple_math.py", "name": "simple_math.py", "l": 0.0, "j": 0.0, "p": 0.0, "w": 1.0, "functions": 3, "density": 0.0, "disharmony": 0.0}, {"path": "/workspace/tests/user_validation/complex_god.py", "name": "complex_god.py", "l": 0.4, "j": 0.23333333333333334, "p": 0.05, "w": 0.11666666666666667, "functions": 5, "density": 0.05, "disharmony": 0.0}, {"path": "/workspace/tests/user_validation/complex_spaghetti.py", "name": "complex_spaghetti.py", "l": 0.08333333333333333, "j": 0.16666666666666666, "p": 0.08333333333333333, "w": 0.41666666666666663, "functions": 4, "density": 0.08333333333333333, "disharmony": 0.0}, {"path": "/workspace/tests/user_validation/complex_clean.py", "name": "complex_clean.py", "l": 0.08333333333333333, "j": 0.16666666666666666, "p": 0.08333333333333333, "w": 0.41666666666666663, "functions": 4, "density": 0.08333333333333333, "disharmony": 0.0}], "graph": {"nodes": [{"id": "simple_hello.py", "mass": 1.0, "gravity": 0}, {"id": "simple_data.py", "mass": 1.0, "gravity": 0}, {"id": "simple_math.py", "mass": 1.0, "gravity": 0}, {"id": "complex_god.py", "mass": 1.0, "gravity": 0}, {"id": "complex_spaghetti.py", "mass": 1.0, "gravity": 0}, {"id": "complex_clean.py", "mass": 1.0, "gravity": 0}], "links": []}, "timestamp": "2025-11-20T18:56:22.439403", "project": "LJPW Validation Run"};
146+
147147
// --- 1. Radar Chart ---
148148
const avgL = data.files.reduce((sum, f) => sum + f.l, 0) / data.files.length;
149149
const avgJ = data.files.reduce((sum, f) => sum + f.j, 0) / data.files.length;
150150
const avgP = data.files.reduce((sum, f) => sum + f.p, 0) / data.files.length;
151151
const avgW = data.files.reduce((sum, f) => sum + f.w, 0) / data.files.length;
152-
152+
153153
new Chart(document.getElementById('radarChart'), {
154154
type: 'radar',
155155
data: {
@@ -182,7 +182,7 @@ <h2>File Analysis</h2>
182182
plugins: { legend: { labels: { color: '#cbd5e1' } } }
183183
}
184184
});
185-
185+
186186
// --- 2. Scatter Chart (Density vs Complexity) ---
187187
new Chart(document.getElementById('scatterChart'), {
188188
type: 'scatter',
@@ -201,12 +201,12 @@ <h2>File Analysis</h2>
201201
},
202202
options: {
203203
scales: {
204-
x: {
204+
x: {
205205
title: { display: true, text: 'Complexity (Function Count)', color: '#94a3b8' },
206206
grid: { color: '#334155' },
207207
ticks: { color: '#94a3b8' }
208208
},
209-
y: {
209+
y: {
210210
title: { display: true, text: 'Semantic Density (Power/LOC)', color: '#94a3b8' },
211211
grid: { color: '#334155' },
212212
ticks: { color: '#94a3b8' }
@@ -222,27 +222,27 @@ <h2>File Analysis</h2>
222222
}
223223
}
224224
});
225-
225+
226226
// --- 3. D3 Force Graph ---
227227
const width = document.getElementById('galaxy-graph').clientWidth;
228228
const height = 600;
229-
229+
230230
const svg = d3.select("#galaxy-graph").append("svg")
231231
.attr("width", width)
232232
.attr("height", height);
233-
233+
234234
const simulation = d3.forceSimulation(data.graph.nodes)
235235
.force("link", d3.forceLink(data.graph.links).id(d => d.id).distance(100))
236236
.force("charge", d3.forceManyBody().strength(-300))
237237
.force("center", d3.forceCenter(width / 2, height / 2));
238-
238+
239239
const link = svg.append("g")
240240
.selectAll("line")
241241
.data(data.graph.links)
242242
.enter().append("line")
243243
.attr("stroke", "#475569")
244244
.attr("stroke-width", 1);
245-
245+
246246
const node = svg.append("g")
247247
.selectAll("circle")
248248
.data(data.graph.nodes)
@@ -263,51 +263,51 @@ <h2>File Analysis</h2>
263263
.on("start", dragstarted)
264264
.on("drag", dragged)
265265
.on("end", dragended));
266-
266+
267267
node.append("title").text(d => d.id);
268-
268+
269269
simulation.on("tick", () => {
270270
link
271271
.attr("x1", d => d.source.x)
272272
.attr("y1", d => d.source.y)
273273
.attr("x2", d => d.target.x)
274274
.attr("y2", d => d.target.y);
275-
275+
276276
node
277277
.attr("cx", d => d.x)
278278
.attr("cy", d => d.y);
279279
});
280-
280+
281281
function dragstarted(event, d) {
282282
if (!event.active) simulation.alphaTarget(0.3).restart();
283283
d.fx = d.x;
284284
d.fy = d.y;
285285
}
286-
286+
287287
function dragged(event, d) {
288288
d.fx = event.x;
289289
d.fy = event.y;
290290
}
291-
291+
292292
function dragended(event, d) {
293293
if (!event.active) simulation.alphaTarget(0);
294294
d.fx = null;
295295
d.fy = null;
296296
}
297-
297+
298298
// --- 4. Populate Table ---
299299
const tbody = document.querySelector('#fileTable tbody');
300300
data.files.forEach(f => {
301301
const tr = document.createElement('tr');
302-
302+
303303
const max = Math.max(f.l, f.j, f.p, f.w);
304304
let domClass = '';
305305
let domName = '';
306306
if (max === f.l) { domClass = 'badge-love'; domName = 'Love'; }
307307
else if (max === f.j) { domClass = 'badge-justice'; domName = 'Justice'; }
308308
else if (max === f.p) { domClass = 'badge-power'; domName = 'Power'; }
309309
else { domClass = 'badge-wisdom'; domName = 'Wisdom'; }
310-
310+
311311
tr.innerHTML = `
312312
<td>${f.name}</td>
313313
<td><span class="badge ${domClass}">${domName}</span></td>

0 commit comments

Comments
 (0)