Skip to main content

Xianpeng Shen

Hi 👋, I’m Xianpeng
#

Engineer. Builder. Maintainer.


Open Delivery Spec update: AI code shouldn't just pass the gate — it should leave evidence

·1560 words·8 mins
Three weeks ago I introduced Open Delivery Spec (ODS), my side project for governing AI-assisted code in CI. Since then the CLI has shipped 5 releases and grown two new pillars: deterministic merge-confidence signals that answer “is this AI PR safe to merge?”, and an auto-generated, standards-based evidence document on every PR. As always, this post sticks to what actually ships — no hype.

Open Delivery Spec—I Built a CI Quality Gate for AI-Generated Code

·1018 words·5 mins
Over the past few months, I’ve been working on an open-source organization called Open Delivery Spec (ODS) in my spare time. The initiative stemmed from the increasing volume of AI-generated code and the lack of reliable governance mechanisms within teams. This article records the thought process, progress, and boundaries based on the project’s real-world status, without any exaggeration.

Which Code in Your Repository is AI-Written—Now There's a Tool to Govern It

·1204 words·6 mins
AI tools like Claude Code by default embed signatures in commits, something many people don’t even notice. Commit Check v2.11.0 introduces AI Attribution Governance, allowing a single line of configuration to reject commits with AI signatures at the CI level. This article also discusses the boundaries of this feature and other pain points Commit Check has solved in the past six months.

Originally Just Wanted to Propose a Doc PR, Ended Up Moving the Project to the Official Jenkins Organization

·1058 words·3 mins
I wrote a small tool to validate Jenkinsfiles, initially just wanting it to appear in Jenkins’ official list of development tools. However, a Jenkins maintainer suggested: why not just transfer the project directly into the jenkinsci organization? This article records the complete process from PR to transfer to an official blog post, including an interesting pitfall encountered along the way.

DeepSeek V4—Bringing Down the Cost of Using Coding Agents

·1340 words·7 mins
Codex auto-renewed this month. I hadn’t really planned on continuing my subscription, but this renewal prompted me to re-evaluate the actual experience with Codex, DeepSeek V4 series, and Copilot. For me, the core difference among AI coding tools is no longer just model capability, but rather which one can help me write code more stably, affordably, and consistently.

Counter-intuitive Designs in the pi project — From AGENTS.md to "Just Close Your PR First"

·3009 words·15 mins
After reading Mario Zechner’s “I’ve sold out” and then reviewing AGENTS.md and CONTRIBUTING.md in the pi repository, I found that this project differs from common open-source collaboration methods in many ways. New contributors’ issues and PRs are closed by default, no reviews on weekends, and don’t submit PRs if you don’t understand the code. It seems tough, but behind it is a serious attempt to address a problem: how open-source projects can avoid being bogged down by low-quality contributions in the AI era.

AI Agent, or Automation?

·847 words·4 mins
In today’s era of rapid AI technological advancement, many companies are chasing the AI wave. But do we truly understand the distinction between “Automation” and “AI Agent”? This article will explore, from a practical application perspective, in which scenarios deterministic automation should be used, and in which scenarios AI Agents should be introduced. Through comparative analysis, we hope to help readers make more informed technical choices in this “all-in-AI” era.

A Three-Year Community Pain Point—I Put Hadolint on PyPI, Ending Manual Installation

·444 words·3 mins
Hadolint’s pre-commit integration has long lacked an automatic installation solution, a problem that has plagued the community for three years. This article explains how, by packaging the Hadolint binary into a Python Wheel and publishing it to PyPI, pre-commit can integrate Hadolint with a single command, just like any Python tool, completely eliminating the burden of manual downloads and environment configuration.

How to Claim the 'Lottery Ticket' of Open Source—Starting from thanks.dev's Operational Mechanism

·729 words·4 mins
In the previous article, I wrote about receiving a donation from Canonical, and a reader asked: How did you get selected? At first, I didn’t fully understand it either. Later, after carefully studying thanks.dev’s operational mechanism, I finally figured out the underlying logic of the whole thing—and what kind of projects are more likely to be funded by downstream vendors.

Thanks to Canonical’s Generous Donation—badgepy Continues as Free and Open Source

·461 words·3 mins
Today, I unexpectedly discovered that Canonical has been donating to me via thanks.dev for four consecutive months to support the development of badgepy. Although the amount is small, this feedback means a lot to me. It made me realize that sometimes, if we just keep doing the right thing without worrying too much about rewards, the results might come back to us in a warm and unexpected way, from a place we never anticipated.

Job Search—Why the "Nuclear Weapon" Strategy Might Be the Winning Formula for 2026

·982 words·5 mins
Today’s job market values practical skills and the ability to create value more than ever before, rather than just academic qualifications. This post shares the story of a high school dropout who successfully joined OpenAI through self-study and actively creating opportunities, and why directly showcasing your “nuclear weapon” achievements might be the most effective strategy for job searching.

Don't Learn OpenClaw—It Won't Last the Year

·855 words·2 mins
OpenClaw is a great idea, but it won’t be a great solution. High costs, security risks, big tech competition, and a lack of user education—these four obstacles combined make it difficult to sustain a long-term prosperous ecosystem.

2025 DevOps State of the Report—Skills are No Longer a Bonus, but a 'Must-Have'!

·497 words·3 mins
The latest ‘2025 State of DevOps Report’ reveals that DevOps skills have become an essential requirement for career survival. 40% of enterprises list them as “must-have,” with another 43% indicating they will soon be mandatory. Employers value practical experience more than training certifications. Despite the high popularity of AIOps and DevSecOps, their actual implementation is still in its early stages.

Exploring Agentic DevOps—GitHub Agentic Workflow and Practical Observations of Continuous AI

·871 words·2 mins
Recently, I encountered a related but more advanced concept—Agentic DevOps. After spending time reading Microsoft Azure’s introductions, GitHub’s latest documentation, and some open-source practices, I compiled these notes. The purpose is to document my learning process and provide reference for colleagues. The following content is based on publicly available information and my understanding, without any exaggerated predictions.

What is AIOps—A Systematic Introduction to Intelligent Operations

·706 words·4 mins
Today, with the widespread adoption of microservices, hybrid clouds, and containerized deployments, IT systems have become exceptionally complex. When thousands of alert messages flood in, traditional operations models struggle. AIOps (Artificial Intelligence for IT Operations), an AI-driven transformation, is emerging as the “lifeline” for IT operations management. This article combines key insights from IBM, ServiceNow, GitHub, and Red Hat to provide a comprehensive overview of AIOps.

Four Years of Open Source —— Three Unexpected Rewards

·594 words·3 mins
Some say open source is useless, yielding neither profit nor time savings. But through four years of dedication, I’ve discovered three unexpected rewards: increased visibility for my work, connections with exceptional people and projects, and the accumulation of long-term value. These rewards are applicable to every developer.

How to Fix Shields.io Badges Not Displaying in Jenkins

·218 words·2 mins
How to temporarily fix it via the Script Console, and how to make it permanent by modifying Jenkins startup parameters. This method is suitable for internal Jenkins environments and has been tested on modern Jenkins installations.

How to Change abortPrevious Value in Jenkins?

·418 words·2 mins
In Jenkins, the disableConcurrentBuilds option is used to manage concurrent builds. This article explains how to conditionally set the abortPrevious value based on the branch being built, allowing for more flexible build management.

Still using pip and venv? You're outdated! Try uv!

·570 words·3 mins
uv is a Python package management tool developed by the Astral team. It replaces the functionality of pip, venv, and pip-tools, offering faster dependency resolution and a more modern project management approach.

Microsoft and NASA Use It? My 4-Year-Old Side Project Hit 100 Stars

·313 words·1 min
cpp-linter-action is a GitHub Action that provides C/C++ code formatting and static analysis capabilities. It uses clang-format and clang-tidy, supporting various configurations and custom rules. Since its creation in 2021, the project has been used by several well-known organizations and open-source projects.

How to use Jenkins Docker Cloud

·389 words·1 min
This article explains how to use Jenkins Docker Cloud for building and deploying applications, including setting up a Docker host and creating custom Docker images.

pip vs pipx Differences

·418 words·2 mins
This article introduces the differences between pip and pipx, helping developers choose the right tool to manage Python packages and command-line tools.

What Optimizations I Made During the Jenkins Upgrade

·481 words·3 mins
This article discusses the optimizations made during the Jenkins upgrade, including using Docker Compose for deployment, refactoring the Jenkins Shared Library, introducing Windows Docker Containers, and more to enhance the efficiency and security of the CI/CD process.

Code Signing — GaraSign

·863 words·2 mins
This article introduces the installation, usage, and verification methods of the GaraSign code signing tool, helping developers achieve secure code signing.

Code Signing

·695 words·2 mins
This article introduces the concept and importance of code signing, along with a comparison of two common code signing tools, emphasizing its role in software supply chain security.

Witness and SLSA 💃

·948 words·2 mins
This article introduces the concept and working mechanism of Witness, and how to use Witness to generate and verify the provenance of software artifacts, emphasizing its importance in improving software supply chain security.

The SLSA Framework and Software Supply Chain Security Protection

·1328 words·3 mins
This article introduces the concept, purpose, and levels of the SLSA framework, and how to apply SLSA in the software supply chain to improve security. It helps readers understand the importance of SLSA in software development and deployment.

2021-22 World Quality Report (WQR)

·1686 words·4 mins
This article presents the key findings and trends from the 2021-22 World Quality Report (WQR), highlighting the impact of the COVID-19 pandemic on software quality and testing, and the crucial role of QA in Agile and DevOps.

Polaris - Static Code Analysis

·790 words·4 mins
This article introduces the basic concepts of Polaris, the supported programming languages, how to use the SaaS platform, and how to configure and run Polaris for static code analysis. It also provides example YAML configuration files and how to view the analysis results.