signal-decay
v1.0.0
Published
Detect and repair signal corruption in your archival nodes — makes npm security audits understandable
Maintainers
Readme
signal-decay
Detect and repair signal corruption in your archival nodes
Part of the Amulet Digital Signal Archives
An intelligent CLI tool that translates automated corruption scans (npm security audits) into clear, actionable restoration protocols. Instead of cryptic vulnerability IDs and technical jargon, it provides:
✅ Plain language explanations of signal degradation ✅ Transmission pathway visualization showing corruption spread ✅ Interactive prompts to execute restoration protocols ✅ Beautiful, color-coded corruption analysis ✅ Markdown reports for archival documentation
Overview
In the Signal Archives, every dependency is a signal fragment — a piece of transmitted knowledge preserved in your project. Over time, these fragments can degrade or become corrupted.
signal-decay monitors your archival nodes for corruption patterns, helping you:
- Understand how signals have degraded
- Trace corruption through transmission pathways
- Execute restoration protocols interactively
- Document corruption for network analysis
Installation
Global Install
npm install -g signal-decay
signal-decayLocal Install
npm install --save-dev signal-decay
npx signal-decayVia npx (No Installation)
npx signal-decayRequirements
- Node.js 18.0.0 or higher
- npm 6.0.0 or higher
Usage
Basic Usage
# Interactive mode - prompts for each corruption pattern
signal-decay
# Show only severe degradation
signal-decay --degradation severe
# Auto-restore all corrupted signals
signal-decay --restore-all
# Generate analysis report without restoration
signal-decay --analyze-onlyCLI Options
-h, --help Show help message
-v, --version Show version
--restore-all Automatically execute all restoration protocols
--degradation <level> Filter by degradation: critical, severe, moderate, minor
--analyze-only Generate analysis report without restoration
--json Output results as JSON
Compatibility aliases:
--fix-all Same as --restore-all
--severity <level> Same as --degradation
--report-only Same as --analyze-onlyHow It Works
Step 1: Scan for Corruption
$ signal-decayRuns automated corruption detection (npm audit) and parses signal degradation.
Step 2: Understand Each Corruption Pattern
For each corrupted signal, you'll see:
1/3 - 🔴 SEVERE DEGRADATION
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Fragment: lodash
Corruption Pattern: Prototype Pollution
Archive Reference: CVE-2019-10744
📖 Signal Degradation:
Attackers could modify object prototypes, cascading corruption
through all objects in your archival node.
🔍 Transmission Pathway:
├─ [email protected]
│ └─ [email protected]
│ └─ [email protected] ⚠️ CORRUPTED
💡 Restoration Protocol:
Update lodash to version 4.17.21 or higher to restore signal integrity
? Execute restoration? (Y/n/skip all)Step 3: Execute Restoration Protocols
For each corruption pattern, you can:
- Yes: Execute restoration immediately
- No: Skip this restoration
- Skip all: Stop interactive mode
Step 4: Review Analysis Report
A markdown analysis is archived at ./decay-report.md with:
- Summary of all corruption patterns
- Detailed degradation analysis for each
- Restoration results and status
- Archive references and CVEs
Features
🎯 Plain Language Degradation Analysis
Instead of cryptic vulnerability descriptions, signal-decay translates
corruption patterns:
| Technical | Signal Archives | |-----------|----------------| | "Prototype Pollution" | "Object prototype corruption cascade" | | "ReDoS" | "Regex-induced signal loop" | | "Path Traversal" | "Unauthorized pathway access beyond node boundaries" |
📊 Transmission Pathway Visualization
See exactly where corrupted signals propagate through your dependency tree:
Your Archival Node
└─ [email protected]
└─ [email protected]
└─ [email protected] ⚠️ CORRUPTED🔧 Interactive Restoration
Execute restoration protocols interactively for each corruption, or auto-restore all at once.
📝 Corruption Analysis Reports
Generate archival reports for your network:
# Signal Corruption Analysis
Archived: 2024-02-14T10:30:45.123Z
## Summary
- **Total Fragments:** 487
- **Corruption Patterns Detected:** 3
- 🔴 **Critical:** 0
- 🔴 **Severe:** 1
- 🟡 **Moderate:** 1
- 🟢 **Minor:** 1
## Corruption Patterns
### 1. Prototype Pollution
**Degradation:** severe
**Fragment:** lodash
**Archive Reference:** CVE-2019-10744
...🎨 Color-Coded Analysis
Degradation levels use color coding for quick identification of critical issues.
Configuration
Create an optional signal-decay.config.json in your project root:
{
"degradation": "severe",
"interactiveMode": true,
"reportPath": "./decay-report.md",
"excludeDevFragments": false,
"autoRestoreAll": false
}Examples
Example 1: Quick Interactive Analysis
$ signal-decay
◆ SIGNAL-DECAY — Corruption Analysis Protocol
✓ Analyzed 487 signal fragments
⚠ Detected 3 corruption patterns (1 severe, 2 moderate)
# ... displays corruption patterns and prompts for restorationExample 2: Auto-restore All
$ signal-decay --restore-all
◆ SIGNAL-DECAY — Automated Restoration
✓ Analyzed 487 signal fragments
⚠ Detected 3 corruption patterns
→ Initiating automated restoration...
✓ lodash — Signal restored
✓ express — Signal restored
✓ debug — Signal restored
✓ Restoration complete
→ Corruption analysis archived: ./decay-report.md
Signal integrity maintained • Amulet Digital Archive ProtocolExample 3: Analysis Only
$ signal-decay --analyze-only
◆ SIGNAL-DECAY — Corruption Analysis
✓ Analyzed 487 signal fragments
⚠ Detected 3 corruption patterns
→ Generating corruption analysis...
✓ Analysis archived: ./decay-report.md
Signal integrity maintained • Amulet Digital Archive ProtocolExample 4: Severity Filter
$ signal-decay --degradation severe
◆ SIGNAL-DECAY — Critical Corruption Scan
✓ Analyzed 487 signal fragments
⚠ Detected 1 severe degradation pattern
# ... shows only severe/critical corruptionSupported Corruption Patterns
signal-decay includes plain language explanations for:
- Prototype Pollution — Object prototype corruption cascade
- Remote Code Execution (RCE) — Arbitrary instruction injection
- SQL Injection — Database query manipulation
- Cross-Site Scripting (XSS) — Client-side script injection
- Denial of Service (DoS) — Resource exhaustion attacks
- Path Traversal — Unauthorized file access beyond boundaries
- Authentication Bypass — Security validation circumvention
- Regular Expression DoS (ReDoS) — Regex-induced signal loops
- XML External Entity (XXE) — XML parser exploitation
- Insecure Deserialization — Object reconstruction attacks
- Cryptographic Weakness — Encryption degradation
- Information Disclosure — Unauthorized data exposure
- And more...
For unknown corruption types, signal-decay provides the raw pattern
description with guidance.
Troubleshooting
"Failed to run corruption scan"
Ensure you're in a Node.js archival node with a manifest (package.json):
npm init
npm install signal-decay
signal-decay"No restoration protocol available"
Some corruption patterns don't have documented restoration protocols yet. Options:
- Wait for archivist response
- Contact the fragment maintainer
- Replace with alternative fragment
Dependencies are conflicting
When restoration introduces breaking changes, npm may refuse. Options:
- Review the restoration changelog
- Update transmission patterns if needed
- Defer restoration temporarily
API Usage
Use signal-decay as a library in your own archival tools:
import {
runAudit,
explainVulnerabilities,
buildDependencyPath,
generateReport,
} from 'signal-decay';
// Run corruption scan
const scanResult = await runAudit();
// Analyze degradation
const analysis = explainVulnerabilities(scanResult.vulnerabilities);
// Trace transmission pathways
analysis.forEach((corruption) => {
const pathway = buildDependencyPath(corruption);
console.log(pathway);
});
// Archive analysis
generateReport(scanResult, analysis);Migration from audit-explain
signal-decay is the rebranded version of audit-explain, now part of the
Amulet Digital Signal Archives.
To migrate:
npm uninstall -g audit-explain
npm install -g signal-decayAll functionality is preserved. Commands are compatible with aliases for
--fix-all, --severity, etc.
Contributing
We welcome contributions to the Signal Archives! See CONTRIBUTING.md.
License
MIT License - see LICENSE file for details.
Support
Related Archival Tools
- void-purge — Remove orphaned artifacts
- PixelFactory — The Initiate's Lens
- npm audit — Automated corruption detection
Signal integrity maintained by Amulet Digital
Archive Protocol • Node: signal-decay • Version: 1.0.0
