@tangle-network/starter-foundry
Deterministic project scaffold engine for AI coding platforms
Supply chain provenance
Status for the latest visible version.
Maintainers
Accepted risks
Findings the reviewer chose to accept rather than block on.
| Source | Rule | Reason | Accepted by | When |
|---|---|---|---|---|
| semgrep | semgrep:etc-passwd-access | AI (semgrep): Test asserting path-traversal is rejected, not actual /etc/passwd access. | ai | |
| semgrep | semgrep:shady-links-exfil-services | AI (semgrep): URL is in a doc comment describing official Telegram Bot API setup. | ai | |
| semgrep | semgrep:base64-decode | AI (semgrep): Standard base64url decode helper for webhook payloads, not payload hiding. | ai | |
| semgrep | semgrep:hex-decode | AI (semgrep): Fires on HMAC signature verification converting hex to bytes for safeCompare — standard webhook validation pattern, not payload obfuscation. | ai | |
| semgrep | semgrep:shady-links-raw-ip | AI (semgrep): Fires on 127.0.0.1 used as localhost base URL in http.createServer — benign local server pattern. | ai |
Versions (showing 10 of 10)
| Version | Deps | Published |
|---|---|---|
| 0.13.2 | 2 / 15 | |
| 0.7.2 | 3 / 4 | |
| 0.7.0 | 3 / 4 | |
| 0.5.4 | 2 / 2 | |
| 0.5.3 | 1 / 2 | |
| 0.5.2 | 1 / 2 | |
| 0.5.1 | 1 / 2 | |
| 0.3.0 | 1 / 2 | |
| 0.2.0 | 1 / 2 | |
| 0.1.0 | 1 / 2 |
v0.13.2
6 findingsAccessing /etc/passwd or /etc/shadow — credential harvesting on Linux Source: https://github.com/tangle-network/starter-foundry/blob/748687a7e6761f7e206edaa7c39bf45c6e5d49a9/registry/layers/agent-base/secure/files/lib/secure/index.test.ts#L155 153 | const { workspace } = await import('./workspace.js') 154 | workspace._resetForTest() > 155 | assert.throws(() => workspace.read('../../etc/passwd'), /path-traversal rejected/) 156 | assert.throws(() => workspace.write('../escape', 'oops'), /path-traversal rejected/) 157 | })
Accessing /etc/passwd or /etc/shadow — credential harvesting on Linux (matched inside a comment — likely documentation, not executed code) Source: https://github.com/tangle-network/starter-foundry/blob/748687a7e6761f7e206edaa7c39bf45c6e5d49a9/registry/layers/agent-base/secure/files/lib/secure/workspace.ts#L5 3 | // requires a read capability; other paths are agent-local read/write. 4 | // > 5 | // Threat: an agent author writes `workspace.read('../../etc/passwd')`. 6 | // The path canonicalizer rejects any resolved path that escapes the 7 | // agent root, with an audit-logged event.
URL pointing to known exfiltration/tunneling service (matched inside a comment — likely documentation, not executed code) Source: https://github.com/tangle-network/starter-foundry/blob/748687a7e6761f7e206edaa7c39bf45c6e5d49a9/registry/layers/agent-channels/telegram/files/channels/telegram.ts#L9 7 | // Setup: 8 | // 1. Talk to @BotFather, run /newbot, paste the token into TELEGRAM_BOT_TOKEN. > 9 | // 2. POST https://api.telegram.org/bot<TOKEN>/setWebhook with url=<your-https-url>. 10 | // 3. Telegram POSTs JSON updates to that URL — pipe them into receive(). 11 |
URL pointing to known exfiltration/tunneling service Source: https://github.com/tangle-network/starter-foundry/blob/748687a7e6761f7e206edaa7c39bf45c6e5d49a9/registry/layers/agent-channels/telegram/files/channels/telegram.ts#L12 10 | // 3. Telegram POSTs JSON updates to that URL — pipe them into receive(). 11 | > 12 | const API = 'https://api.telegram.org' 13 | 14 | export interface TelegramInbound {
Published via CI/CD with Sigstore attestation (predicate: https://slsa.dev/provenance/v1). This is the strongest supply chain integrity signal.
This version was published by a different npm account (GitHub Actions) than the most recent previously approved version (drewstone) on 2026-07-17, but it carries Sigstore provenance attestation. This means the package moved to a trusted publisher (CI/CD with OIDC, e.g. GitHub Actions) — a supply-chain integrity improvement, not a compromise, since a stolen npm token cannot forge provenance bound to the source repository. Recorded as INFO for audit trail.