Skip to content

meta-exporter: meta-quota-export still uses the pre-#2083 raw-path entry-point check — invoked via any symlink it silently no-ops with exit 0 #2350

Closed as not planned

Description

@dezren39

Summary

pm-stack/meta-exporter/meta-quota-export.mjs:535 still compares the raw process.argv[1] path with import.meta.url. Via a symlinked file or directory, the comparison fails, main() is skipped, and Node exits 0 silently.

Fresh evidence (current main 87582f16e203388df93afef7845562e7905e1516, 2026-11-03)

A local probe used --cdp-port 1 and separate scratch output directories:

  • Direct invocation: exit 4, reports cdp-unavailable, and writes latest.json plus history.jsonl.
  • Symlinked-file invocation: exit 0, no output, no files.
  • Symlinked-directory invocation: exit 0, no output, no files.

The direct result proves main() ran; both symlink paths silently bypass it. bin/proxy-supervise.mjs:884-896 contains the established guarded realpathSync comparison pattern.

Scope correction

This issue should fix only the meta-exporter entry point and its regression coverage. The former repo-wide grep acceptance criterion is not a valid gate for this one-file fix: other entry-point instances belong to separate scopes (including #4325, whose PR #4583 is open and explicitly excludes this meta-exporter, and other remaining files). Do not expand this task into a repository-wide sweep or block this fix on unrelated matches.

A prior canceled task left uncommitted guard and test changes in /home/user/git/fleet/task-5248 on branch queue/5248-2350-meta-exporter-symlink-entry. Preserve that work; the follow-up must inspect it and reconcile it with fresh main rather than discard it or open a competing PR.

Acceptance criteria

  • The meta-exporter runs for direct, symlinked-file, and symlinked-directory invocation, using a guarded realpath comparison or equivalent.
  • Importing the module as a library still does not run main().
  • Regression coverage verifies direct failure-document behavior, both symlink forms, and inert library import.
  • Run node --test pm-stack/meta-exporter/meta-quota-export.test.mjs.
  • Keep changes limited to the meta-exporter and its tests; global entry-point inventory is explicitly out of scope.

Related: #2083 (proven fix pattern), #4325 (separate set; explicitly excludes this file), #4694 (separate issue, now closed).

Activity

  1. developing-today commented on Oct 29, 2026

    @developing-today
    Contributor
  2. added
    kind/bugSomething isn't working (prefixed form of the classic bug label)
    priority/normalOrdinary priority (the default)
    queue/queuedHas a queued task in the Supabase agent queue
    source/creatorFiled by the new-issue-creator job
    task/triageQueue packet kind: verify, reproduce, and route this item
    app/pm-stackpm-stack (Pad/Grist) in developing-today/code
    effort/xsTrivial: expected under 30 minutes of work
    on Oct 29, 2026
  3. dezren39 commented on Oct 29, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · filed

  4. added
    work/assignedQueue worker lifecycle state
    queue/claimedQueue worker lifecycle state
    and removed
    queue/queuedHas a queued task in the Supabase agent queue
    on Nov 1, 2026
  5. 48 remaining items

  6. developing-today commented on Nov 3, 2026

    @developing-today
    Contributor

    agent-note:v1
    state: triaged (coverage pass)
    Coverage pass 2026-11-03: reviewed in the fleet-wide per-issue pass (drift / overlap / already-handled / stale / blockers / ordering). Verdict: still live; queued in repo-health-code-pilot as small_fix at priority 50 (priority/normal). If this is already handled at current main, the triage closes it with evidence; if it needs splitting, the triage files the split.
    Found via: coverage pass 2026-11-03

  7. added
    work/assignedQueue worker lifecycle state
    queue/claimedQueue worker lifecycle state
    and removed
    status/parkedDeliberately paused with a recorded resume condition
    queue/queuedHas a queued task in the Supabase agent queue
    queue/parkedQueue task is parked (waiting on CI, time, or an event)
    on Nov 4, 2026
  8. dezren39 commented on Nov 4, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · picked up

  9. dezren39 commented on Nov 4, 2026

    @dezren39
    MemberAuthor

    🤖 Agent note · done (superseded)

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

Metadata

Metadata

Assignees

Labels

app/pm-stackpm-stack (Pad/Grist) in developing-today/codeeffort/xsTrivial: expected under 30 minutes of workkind/bugSomething isn't working (prefixed form of the classic bug label)priority/normalOrdinary priority (the default)source/creatorFiled by the new-issue-creator jobtask/small-fixQueue packet kind: bounded fix with reproduction and targeted testsuser/reviewNeeds a user-look: Muse reviews first and handles what it can

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions