Skip to content

lint: pin delete_package as an accepted platform tool name in validate-ai-tool-references.test.ts, with a near-name control (should-fix from #31037) #31040

Closed

Description

@objectstack-fleet

repo:cloud#3 · hotlong · session_01Q4EjjRhUZjdy8VXs6Kkur2

Filing gate: (c) should-fix carried from a contract review (#31037, review 6693733275, PASS).

维护者速读

#31037 往平台工具名单里加了 delete_package,但没有像以往每次加名字那样,在 lint 测试里补一条「这个名字被认可」的固定用例。功能上不受影响,只是少了一道防回退的测试。

Expected

Acceptance

  • The pin fails if delete_package leaves the registry.

Serial: after #31037 merges.

Suggested-grade: p2 · XS.

Activity

  1. added
    enhancementNew feature or request
    repo:cloudCard routed whole to the cloud PM: needs cloud code, a producer or a fact (cloud owns it to closure)
    pm:blockedBlocked by another issue/PR — body carries Blocked-by: #N
    domain:cloudTouches cloud: the whole card is the cloud PM's (repo:cloud seat); no objectstack lane claims it
    domain:devxDomain lane — seat card indexed by label:pm:seat
    and removed
    domain:cloudTouches cloud: the whole card is the cloud PM's (repo:cloud seat); no objectstack lane claims it
    on Nov 6, 2026
  2. objectstack-fleet commented on Nov 6, 2026

    @objectstack-fleet
    ContributorAuthor

    triage#1 · os-zhuang · session_01AavokzJ5DndAwitDXvKy4U

    Path: none

    Triage: audit · p2 → p3 · domain:cloud → domain:devx · pm:blocked · 2026-11-06T19:53Z

    ⛔ Not a claim.


    Generated by Claude Code

  3. added
    pm:queueReady for the PM dispatch loop
    and removed
    pm:blockedBlocked by another issue/PR — body carries Blocked-by: #N
    repo:cloudCard routed whole to the cloud PM: needs cloud code, a producer or a fact (cloud owns it to closure)
    on Nov 7, 2026
  4. objectstack-fleet commented on Nov 7, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:devx#3 · os-project-manager · session_01FEkQ5njkh3xbcDN6EtSfw7

    Claim: PM loop round 1
    Session: session_01FEkQ5njkh3xbcDN6EtSfw7
    Account: os-project-manager
    Branch: claude/project-thread-dju5fc (a project card thread, session_01FEkQ5m4G8BbYuRmH2Ts8G4; the thread can push only its harness branch, a measured platform exception to claude/issue-<n>-<slug>)
    Worktree: objectstack-issue-31040
    Domain: domain:devx
    Seat: domain:devx#3
    File surface: packages/lint/src/validate-ai-tool-references.test.ts only (test-only pin plus a near-name control).
    Container & model: S, mode:thread, model: default — dispatch-gates --tier: no path-derived mandate, effort: medium
    Clause-②: no
    Metadata-protocol: none
    Responsibility: n/a — a regression pin, not a defect card
    Thread-read: 6694073110
    Premise: holds. PR #31037 is merged; the test file on main 56baf78e has 0 delete_package hits.
    Serial constraints cleared: none in flight on packages/lint/src/validate-ai-tool-references*.
    Ruling-ref: 「p1 p2 处理完了,就可以处理 p3」 (maintainer, 2026-10-26T10:29Z) — the lane's only unclaimed p1 (#31159) is serialized behind in-flight PRs on the runner CLI/driver.

    Order: pm-orders/devx/order-31040.md (project files), handed to the card thread in its opening message.

  5. added
    pm:dispatchedDispatched to a dev agent by /pm-dispatch
    and removed
    pm:queueReady for the PM dispatch loop
    on Nov 7, 2026
  6. objectstack-fleet commented on Nov 7, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:devx#3 · os-project-manager · session_01FEkQ5m4G8BbYuRmH2Ts8G4
    os-dev-report
    {
    "issue": 31040,
    "status": "done",
    "branch": "claude/project-thread-dju5fc",
    "pr": "#31219",
    "session": "session_01FEkQ5m4G8BbYuRmH2Ts8G4",
    "premise_still_valid": true,
    "summary": "Added one case to packages/lint/src/validate-ai-tool-references.test.ts, shaped like the #16512 and #27002 pins: a skill naming delete_package resolves with no findings, and the near-name control delete_packages (registered by nobody) is still reported, exactly one finding at skills[0].tools[1]. Test only; registry and rule untouched. Premise held on origin/main de3996b: the test file had 0 delete_package hits and the registry lists it under service-ai-studio. Card assignee not touched; no claim of my own.",
    "tests": "head ce48acb. New file: pnpm --filter @objectstack/lint exec vitest run --maxWorkers=2 src/validate-ai-tool-references.test.ts -> Tests 23 passed (23), VERDICT command-exit 0. Package: pnpm --filter @objectstack/lint test -> Test Files 197 passed (197), Tests 8338 passed | 5 skipped, VERDICT command-exit 0. pnpm --filter @objectstack/lint typecheck (tsc --noEmit && check:test-typecheck) -> VERDICT command-exit 0, debt held at 2 pinned signatures. Ablation (lint reads @objectstack/spec from dist, no alias): ablation-replace.mjs --delete of the registry line " 'delete_package'," in packages/spec/src/system/constants/platform-tool-names.ts, anchor 1 -> 0, blob 66cd0267ea06 -> 1ed8917b09d8; spec build exit 0; ablation-dist-preflight @objectstack/spec '"delete_package",' --absent --source-marker -> absent from all 594 built files, exit 0; run -> x resolves the service-ai-studio package removal, AssertionError expected [ { severity: 'warning', ...(5) } ] to deeply equal [], Tests 1 failed | 22 passed, exit 1. Restore: blob == HEAD 66cd0267ea06, git diff HEAD empty; spec rebuilt exit 0; preflight present mode -> marker in 2 built files, tree clean, exit 0; run -> 23 passed, exit 0.",
    "gates": "Local: dispatch-gates --commands --repo objectstack-ai/objectstack derived 50 families on ce48acb; 48 exit 0, 2 NOT MEASURED (pnpm check:dual-build-cjs-loads exit 3 PREREQUISITE NOT MET, needs every package dist; pnpm check:lean-entry-closure exit 3 PREREQUISITE NOT MET, needs packages/objectql/dist). pnpm check:docs-transcript-drift first exit 3 (lint dist absent), rerun after pnpm --filter @objectstack/lint build -> exit 0. --ran: '50 derived famil(ies) accounted for, 48 run, 2 NOT-MEASURED' (exit 0). Record: pm-orders/devx/31040-gates-ran.txt. Scoped pnpm lint: node --stack-size=4000 node_modules/eslint/bin/eslint.js packages/lint --no-inline-config -> exit 0. CI check-runs on PR #31219: in_progress at report time (not waited on, per os-dev.md).",
    "dogfood_battery": "n/a, no ! in the PR title and no (narrowing) arm",
    "line_budget": "+18 / -0, 1 file",
    "files_changed": [
    "packages/lint/src/validate-ai-tool-references.test.ts"
    ],
    "deviations": [
    "PR #31037 and its contract review 6693733275 were not opened: the card quotes the should-fix verbatim and names its acceptance, and the claim records #31037 merged; no reading in this PR depends on the review beyond that quote.",
    "check-plugin-teardown-shape --self-test needed git fetch --depth=1 origin 621a487 on this shallow clone before the loop reached it (exit 0)."
    ],
    "mcp_calls": "5, all reads: mcp__github__issue_read x3 (get #31040, get_comments #31040 twice), mcp__github__pull_request_read x1 (get #31219, read-back), plus 0 writes",
    "api_writes": "3: git push of claude/project-thread-dju5fc (not REST); POST /repos/objectstack-ai/objectstack/dispatches (relay pr_create -> PR #31219, draft, labels [skip-changeset], no assignees; read-back 5310 bytes identical); this report comment via post-stamped.mjs (POST /repos//issues/31040/comments)",
    "open_questions": [],
    "security_findings": "none",
    "out_of_scope_findings": []
    }


    Generated by Claude Code

  7. objectstack-fleet commented on Nov 7, 2026

    @objectstack-fleet
    ContributorAuthor

    domain:devx#3 · os-project-manager · session_01FEkQ5njkh3xbcDN6EtSfw7

    Landed 2026-11-07T19:01Z · PR #31219 merged through the merge queue at 2026-11-07T19:00Z, as 714dda8faa05fab4a677397ca8e0f272845c997d.

    Reading Value
    PR #31219 merged: true, merge commit 714dda8faa, head reviewed ce48acb137 (ACCEPT on the PR)
    #31040 closed completed by Fixes #31040

    State change: pm:dispatched removed (card closed). No out-of-scope findings.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

domain:devxDomain lane — seat card indexed by label:pm:seatenhancementNew feature or requestpriority:p3

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions