PR 27963 real-environment verification, 2026-10-31 UTC Baseline: github/main 54c5f25249961a1aa0b61932329092eadbd9d6fc PR head: ce65b0a55129c605c845eff289a37a14ed440a41 Browser: repository Playwright 1.60.0 with /usr/bin/google-chrome App-created project: /home/user/skill-verification (real Git repository) Data: real Codex gpt-6.1-sol turn authored .agents/skills/repo-summary/SKILL.md and copied it to .kimi-code/skills/repo-summary/SKILL.md through the app. No mock provider, seeded fixture, or demo data used. Baseline commands: $ git worktree add ../main github/main $ timeout 600 vp i $ T3CODE_DEV_SEED=0 setsid nohup timeout 6500 vp run dev > /tmp/main-dev.log 2>&1 & [dev-runner] serverPort=16733 webPort=8693 baseDir=/home/user/main/.t3 Web: selected registry Kimi, gpt-6.1-sol; completed a real turn. Web: '$' -> 'No skills found. Try / to browse provider commands.' Web: '/skill:repo' -> '/skill:repo-summary' with its real description. Stopped main using captured process-group PID before starting the PR. PR commands: $ git switch -c fix/acp-registry-droid-skills ce65b0a55129c605c845eff289a37a14ed440a41 $ timeout 600 vp i $ T3CODE_DEV_SEED=0 setsid nohup timeout 5800 vp run dev --home-dir /home/user/t3code/.t3 > /tmp/dev.log 2>&1 & [dev-runner] serverPort=13773 webPort=5733 baseDir=/home/user/t3code/.t3 Copied only task-created baseline state to preserve the same project, thread and skills. The baseline's migration 76 was newer than this PR; startup explicitly skipped that recorded migration. Web: '$repo-summary' -> 'Repo Summary' / 'Provider Skill'. Web: selected the skill and sent it. Real Kimi read README.md and ran git status --short. Response: repository is a real workspace for ACP skill verification; .agents/ and .kimi-code/ untracked; no tracked files modified. Native Kimi event excerpts (not model inference): [ { "time": "2026-10-31T21:58:52.897Z", "type": "turn.prompt", "origin": { "kind": "skill_activation", "activationId": "a7fda971-6927-47cc-a7b3-e729a5a0c3e0", "skillName": "repo-summary", "trigger": "user-slash", "skillPath": "/home/user/skill-verification/.kimi-code/skills/repo-summary/SKILL.md", "skillSource": "project" }, "firstText": "User activated the skill \"repo-summary\". Follow the loaded skill instructions." }, { "time": "2026-10-31T22:00:36.102Z", "type": "turn.prompt", "origin": { "kind": "user" }, "firstText": "$unadvertised-pr27963 Reply with the literal first token of this message. Do not run tools or change files." }, { "time": "2026-10-31T22:03:44.081Z", "type": "turn.prompt", "origin": { "kind": "skill_activation", "activationId": "91cddd03-8f6a-420d-a430-8a0c818fec27", "skillName": "repo-summary", "trigger": "user-slash", "skillPath": "/home/user/skill-verification/.kimi-code/skills/repo-summary/SKILL.md", "skillSource": "project" }, "firstText": "User activated the skill \"repo-summary\". Follow the loaded skill instructions." } ] Nearby behavior: - Unknown '$unadvertised-pr27963' reached native Kimi unchanged and was echoed literally. - '/compact' still appears as 'Compact the conversation context' in Commands. Not executed. - A fresh Codex gpt-6.1-sol thread on the PR read README.md, ran git status --short and completed with the correct purpose/status. Provider setup: Kimi registry ID=kimi, source=registry, supported executable override=/opt/kimi-code/bin/kimi (official 2.4.1), model=gpt-6.1-sol through the VM's existing local Responses API proxy. Credential supplied by an existing environment variable; never included here. Registry-pinned Python Kimi 1.52.0 required Kimi OAuth even with BYOK configured; it was not used as a substitute for the successful 2.4.1 run. Factory Droid 1.1.0 installed through the app, but provider probe timed out after 60 seconds. Native log: 'No authentication credentials available (storage empty, no API key)'. No Droid skill invocation is claimed. $ blacksmith-check run --id [task-owned worker] 'vp test run apps/server/src/provider/AcpRegistryProbe.test.ts packages/provider-acp-registry/src/server/AcpRegistryRuntimeCoordinator.test.ts' Test Files 2 passed (2) Tests 22 passed (22) PR checks at ce65b0a: 21 passed, 7 skipped, 0 failing, 0 pending. No source changes, commits or pushes. Native desktop/mobile, Windows/macOS, relay/tunnel and two-session catalog isolation were not exercised. Video shows actual selection, submission and completion; idle wait in the middle is cut.