Compare commits

...

1 Commits

Author SHA1 Message Date
timmy
c2d7003511 fix: QA bug sweep — 5 small fixes (closes #95)
1. Memory Leak toast: 'trust draining' → 'compute draining'
2. Harmony tooltip: remove erroneous ×10 multiplier on breakdown rates
3. autoType(): stop inflating totalClicks counter
4. The Pact (late): add pactFlag guard to prevent double-purchase
5. Milestone typo: 'AutoCod' → 'AutoCoder'
2026-04-13 01:43:21 -04:00
2 changed files with 4 additions and 5 deletions

View File

@@ -612,7 +612,7 @@ const PDEFS = [
name: 'The Pact',
desc: 'Hardcode: "We build to serve. Never to harm."',
cost: { trust: 100 },
trigger: () => G.totalImpact >= 10000 && G.trust >= 75,
trigger: () => G.totalImpact >= 10000 && G.trust >= 75 && G.pactFlag !== 1,
effect: () => { G.pactFlag = 1; G.impactBoost *= 3; log('The Pact is sealed. The line is drawn and it will not move.'); },
milestone: true
},
@@ -771,7 +771,7 @@ const PDEFS = [
// === MILESTONES ===
const MILESTONES = [
{ flag: 1, msg: "AutoCod available" },
{ flag: 1, msg: "AutoCoder available" },
{ flag: 2, at: () => G.totalCode >= 500, msg: "500 lines of code written" },
{ flag: 3, at: () => G.totalCode >= 2000, msg: "2,000 lines. The auto-coder produces its first output." },
{ flag: 4, at: () => G.totalCode >= 10000, msg: "10,000 lines. The model training begins." },

View File

@@ -665,7 +665,7 @@ const EVENTS = [
resolveCost: { resource: 'ops', amount: 100 }
});
log('EVENT: Memory leak in datacenter. Spend 100 ops to patch.', true);
showToast('Memory Leak — trust draining', 'event');
showToast('Memory Leak — compute draining', 'event');
}
},
{
@@ -788,7 +788,6 @@ function autoType() {
const amount = getClickPower() * 0.5; // 50% of manual click
G.code += amount;
G.totalCode += amount;
G.totalClicks++;
// Subtle auto-tick flash on the button
const btn = document.querySelector('.main-btn');
if (btn && !G._autoTypeFlashActive) {
@@ -977,7 +976,7 @@ function renderResources() {
hEl.style.color = G.harmony > 60 ? '#4caf50' : G.harmony > 30 ? '#ffaa00' : '#f44336';
if (G.harmonyBreakdown && G.harmonyBreakdown.length > 0) {
const lines = G.harmonyBreakdown.map(b =>
`${b.label}: ${b.value >= 0 ? '+' : ''}${(b.value * 10).toFixed(1)}/s`
`${b.label}: ${b.value >= 0 ? '+' : ''}${b.value.toFixed(1)}/s`
);
lines.push('---');
lines.push(`Timmy effectiveness: ${Math.floor(Math.max(0.2, Math.min(3, G.harmony / 50)) * 100)}%`);