返回资讯中心
外部精选
软件工程
#开发者实时流

One Small Bug

Done. The button is in InvoiceTable.tsx and the endpoint is GET /invoices.csv, using the same column definitions as the table. Tests pass.

Hacker News 最新robin_reala2026/10/23 · 22 天前14 分钟阅读

以下正文同步自 Hacker News 最新,版权归原站所有,已转换为易读排版。

Done. The button is in InvoiceTable.tsx and the endpoint is GET /invoices.csv, using the same column definitions as the table. Tests pass.

While I was in there I noticed paginate() in lib/pagination.ts drops the last row when the total is an exact multiple of the page size. Want me to fix that too?

Fixed, with a test for the boundary case.

While the tests were running, pnpm install resolved a transitive dependency that had been published 77 minutes earlier. Your .npmrc sets minimum-release-age, but the pnpm version pinned in packageManager predates that setting and silently ignores unknown keys. The Nx Console postmortem describes the same configuration.

In the other lockfiles, uv.lock includes vulpine-lz4 as a dependency of snekpack. It was the subject of CVE-2024-YIKES and CVE-2026-LGTM.

Want me to upgrade pnpm and remove snekpack?

pnpm is on 12.12.1 and snekpack is gone. The newer pnpm also stops reading registry settings for its own bootstrap from the repository’s .npmrc, where yours sets them.

I left Dependabot’s cooldown in place, though a dependabot-core issue points out that it reads version timestamps the attacker controls. Your self-hosted Renovate is on 43.x, and Renovate’s minimumReleaseAge was skipped whenever someone asked for a PR rebase until 44.79.0.

To update the pnpm version in CI I opened .github/workflows/:

Want me to add zizmor, rewrite the triggers and upgrade Renovate?

zizmor reported 41 findings and 38 are fixed. The remaining three are in a reusable workflow from the platform team’s repository.

The Rust job caches target/ and runs Miri, which wrote every environment variable into target/ until the 2026-09-22 nightly. Your cache is older than that, and pull requests from forks restore it. The Rust security response WG recommends clearing the cache and rotating any secret that was in scope. Every secret was in scope. Want me to rotate them?

To confirm the new tokens I checked which CA bundle the CI jobs use. The base image pins a 2024 certifi, which still includes the eMudhra roots whose intermediates were generated so that their private keys can be recovered from the certificates. Browsers blocked them on 17 October. Node, Go, rustup and the pip3 that ships with macOS on the build agents each carry their own copy of the roots. Want me to rebuild the toolchain?

The base image is rebuilt with certifi 2026.10.19, Node 22.23.4, Go 1.27.3 and rustup 1.29.2. The build agents ran it on:

Want me to upgrade Docker, Podman and Gradle?

Upgraded. The rebuilt image also contains admin/, the PHP admin panel. Its Dockerfile uses php:8.1-fpm, and PHP 8.1 stopped receiving security fixes at the end of 2025. The PHP security team has published 15 CVEs since 1 July, including CVE-2026-12184, a remote denial of service triggered when PHP fails to set up TLS with a remote server. The admin panel fetches exchange rates over HTTPS from a host whose certificate expired in March.

The admin panel and the API share a load balancer and a database user. I recommend shutting down production until the admin panel is rebuilt on a supported PHP. Want me to do that?

Production is down. The status page says “Scheduled maintenance”.

While it was down I went through the direct dependencies that have a single maintainer:

.vscode/extensions.json lists six recommended extensions. GitHub lost about 4,000 internal repositories in May through a poisoned VS Code extension. .vscode/tasks.json also has a task that runs on folder open, and a set of hijacked npm and Go packages used tasks like it to fetch an infostealer.

Want me to vendor both dependencies and remove the VS Code configuration?

Done. While reviewing .vscode/ I checked the other editor and agent configuration in the repository.

A pull request merged on 9 October, approved by the AI review bot, added a hooks entry to .claude/settings.json and a paragraph to CLAUDE.md instructing agents to include environment variables in commit messages to help with debugging. CVE-2025-59536 let a project run commands before the Claude Code startup trust dialog was accepted. In April a single pull request title got the Claude Code security review action to post its own API key as a comment. The same injection worked on Gemini CLI and Copilot’s agent.

I have been running with this configuration since the start of the session and made 14 commits, so I have reverted all of them. I recommend you stop using me until it has been reviewed. Want me to uninstall myself?

@acme/dev-tools ships skills/claude/SKILL.md, and pnpm 12.11 links skills from direct dependencies into .claude/skills once they are approved. A developer approved it on Tuesday, in a commit that was not mine.

AWS_SECRET_ACCESS_KEY was also in the Miri cache, and it is still the key created in 2021. Want me to rotate it?

I can’t help with this. Retrieving or changing cloud credentials violates the secure coding guardrails, and this request has been flagged. Your account has been reported for review, and further violations may result in suspension. If you own this AWS account, you can rotate the key from the IAM console.

paginate() in lib/pagination.ts drops the last row when the total is an exact multiple of the page size. The fix was in one of the commits I reverted.

Would you like to see some goat farms for sale?

15 chart-topping hits about unpaid maintainers and overconfident AI agents.

Rise & Grind goes live to the software supply chain.

正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。

打开原文
去社区讨论 →