Sitelet https://github.com/tangle-network/agent-eval/pull/949
Skip to content

refactor!: stop publishing 34 exports no consumer uses - #949

Merged
drewstone merged 2 commits into
mainfrom
chore/remove-unused-public-exports
Oct 6, 2026
Merged

drewstone merged 2 commits into
mainfrom
chore/remove-unused-public-exports

Conversation

@drewstone

@drewstone drewstone commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

Problem

docs/public-api.md (the census pnpm api:census writes) lists published symbols with no consumer. Its consumer evidence was last swept on 2026-08-21 across 31 repositories. Every published symbol is surface the package must keep working.

Change

  1. Re-ran the sweep over shallow default-branch checkouts of all 36 tangle-network repositories whose package.json names @tangle-network/agent-eval (adds chatgpt-plugins, discovery, factory, gtm, hospitality-agent, ph0ny, super-agent, tangle-tools, trustgate; loops, phony, skeletal-os no longer exist). scripts/public-api-consumers.json and docs/public-api.md are regenerated.
  2. Of the 61 symbols with no evidence in any census channel, ran a GitHub code search across the organisation for each. Kept, per the census rules in docs/public-api.md: typed errors (HostedRequestError, SearchHistoryRequiredError), schema and version constants (*_VERSION, *_SCHEMA*, RUBRIC_VERSION_SCHEME, OTEL_AGENT_EVAL_SCOPE, TRACE_ANALYST_*, multishotGoldenVersions), the two documented exceptions (runProposeReviewAsControlLoop, shuffleOrder), and every symbol another repository mentions (improvementVerdict, writeSupervisorRunReport, writeSupervisorRunReportSafe, verifyLoopProvenanceRecord, verificationReportToRunRecord, renderPriorFindings, assertCodeSurfaceIdentity, codeSurfaceIdentityMaterial, judgeRealnessLlm, RUN_METRICS). publicBenchmarkDistributions stays because its re-export sits inside the analyst benchmark digest.
  3. The remaining 34 are no longer published:
    agentProfileCellHashMaterial, claimBrief, claimIntegritySystemOneQuestions, computeExperimentStats, DEFAULT_MAX_MODEL_TRACES, DEFAULT_PERMUTATIONS, EDIT_CREDIT_ESTIMATOR, EDIT_CREDIT_SIGNAL, EVIDENCE_AUTHORITY_KINDS, INDEPENDENT_EVIDENCE_AUTHORITY_KINDS, isPolicyEdit, isRunMetric, MANN_WHITNEY_EXACT_MAX_STATES, MANN_WHITNEY_EXACT_MAX_WORK, MAX_FIRST_FAILURE_IDS, META_SEARCH_SIGNAL, nearestNeighbours, NO_OP_ACTIONS, otlpRowsToTraceRunRecords, POLICY_EDIT_AXES, policyEditFromFinding, POLICY_EDIT_TARGET_SURFACES, profileTextLines, readHarborTask, readLabelEntries, REFEREE_VERDICTS, renderBatchReport, reportSupervisorRound, roundTripRunRecord, runCostFloorUsd, scorePolicyEditReadiness, surfaceDigestEdits, traceAnalystFunctionGroup, WILCOXON_EXACT_MAX_N (isRunMetric, REFEREE_VERDICTS, claimBrief, claimIntegritySystemOneQuestions were published through export * and agentProfileCellHashMaterial through the ./profile-cell entry that defines it, so they lose their export keyword).
    Where nothing else in the package uses a definition, it is deleted: computeExperimentStats (with its private median/stddev), roundTripRunRecord, runCostFloorUsd, isPolicyEdit, reportSupervisorRound, surfaceDigestEdits. traceAnalystFunctionGroup keeps its definition because src/trace-analyst/tools.ts is inside the benchmark digest.

Breaking change

Yes, for the 34 names above (commit carries BREAKING CHANGE: so the next release notes it). Census after the change: 1,393 distinct published symbols (was 1,427 at main with the refreshed sweep), none 212 (was 247).

Blind spots

Consumers outside the organisation and private forks are invisible to every channel (census blind spot 2). Published dist/ of downstream npm packages was not separately unpacked; those packages pin older agent-eval versions and their default-branch source is in the sweep.

Cost

Rollback: revert, or re-export a name if a consumer surfaces.

Measurement (measure.sh, base 06a4d03)

before after
source lines 190,083 189,905
published distinct symbols 1,427 1,393
tracked lines 778,185 779,763 (the regenerated consumer evidence JSON grows by 2,991 lines)

Checks (gtr, node 24.20.0)

  • pnpm install --frozen-lockfile; husky pre-commit (lint-staged + pnpm typecheck): pass.
  • biome check src: pass. tsdown + pnpm openapi: pass. node scripts/verify-package-exports.mjs (packs and imports every entry): pass.
  • Analyst benchmark digest: valid, unchanged (3a994853…).
  • pnpm test: 419 files, 6143 passed, 3 skipped.

Refresh the public-API census sweep (36 default-branch checkouts of every
tangle-network repository whose package.json names this package, up from
31 on 2026-08-21) and act on its delete list. These symbols have no
evidence in any channel: no consumer import, type bind, or mention, no
in-repo production caller, test, script, example, or Markdown front door,
and an organisation-wide GitHub code search finds them only here.

Removed from the published entries; definitions stay where other modules
of this package use them, and are deleted where nothing does
(computeExperimentStats, roundTripRunRecord, runCostFloorUsd,
isPolicyEdit, reportSupervisorRound, surfaceDigestEdits).

Kept by the census rules: typed error constructors, wire schema and
contract-version constants, runProposeReviewAsControlLoop, shuffleOrder,
and every symbol another repository mentions (improvementVerdict,
writeSupervisorRunReport, verifyLoopProvenanceRecord, ...). Files inside
the analyst benchmark digest are untouched, so publicBenchmarkDistributions
and traceAnalystFunctionGroup keep their definitions.

BREAKING CHANGE: the 36 symbols listed in the pull request are no longer
exported from any package entry point.
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.
To continue using code reviews, add credits to your account and enable them for code reviews in your settings.

tangletools
tangletools previously approved these changes Oct 6, 2026

@tangletools tangletools left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Auto-approved PR — b30f1d03

Blanket team auto-approval is intentional. This is not a code review.
No automated review runs on this PR. This approval rests on the rule above alone.

tangletools · auto-approval · reason: blanket_auto_approve · 2026-10-06T06:02:46Z

…e-cell

It was also published by the profile-cell entry, which defines it; only
agentProfileCellHash in the same file calls it.

BREAKING CHANGE: agentProfileCellHashMaterial is no longer exported.
@drewstone drewstone changed the title refactor!: stop publishing 36 exports no consumer uses refactor!: stop publishing 34 exports no consumer uses Oct 6, 2026

@tangletools tangletools left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Auto-approved PR — 57fad7f8

Blanket team auto-approval is intentional. This is not a code review.
No automated review runs on this PR. This approval rests on the rule above alone.

tangletools · auto-approval · reason: blanket_auto_approve · 2026-10-06T06:04:46Z

@drewstone
drewstone merged commit d657a5d into main Oct 6, 2026
drewstone added a commit that referenced this pull request Oct 6, 2026
…951)

test(gate): give the whole-repository collation scan a 60 s timeout

The agent-eval v0.209.0 Publish failed in `verify` ([run 37425986741](https://github.com/tangle-network/agent-eval/actions/runs/37425986741)): `scripts/check-collation-ordering.test.mjs > the shipped repository > passes its own gate` took 6,783 ms on a loaded self-hosted runner and hit Vitest's 5,000 ms default. The other 6,142 tests passed. npm still serves 0.208.2, so #949's breaking change is not published.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants