Skip to content

Add inline script activation-time discovery (PEP 723 PR 8/16) - #6

Closed
StellaHuang95 wants to merge 1 commit into
mainfrom
pep723-pr8-activation-discovery
Closed

Add inline script activation-time discovery (PEP 723 PR 8/16)#6
StellaHuang95 wants to merge 1 commit into
mainfrom
pep723-pr8-activation-discovery

Conversation

@StellaHuang95

@StellaHuang95 StellaHuang95 commented Aug 17, 2026

Copy link
Copy Markdown
Owner

Draft fork-review PR. Do not send upstream yet.

Summary

  • discover valid cached inline-script environments after activation
  • expose discovered entries through getEnvironments('all')
  • reconcile add/remove changes and emit manager environment events
  • keep activation non-blocking with deferred, bounded bootstrap retries
  • keep explicit refresh() a settled, single-pass operation

Safety and lifecycle

  • validates sidecars, base interpreters, venv launchers, direct-child ownership, and cache locks
  • preserves transient, unavailable, and busy entries rather than deleting them
  • removes stale published entries when their launcher or metadata becomes definitively invalid
  • coalesces overlapping scans and cancels bootstrap retries on explicit refresh or disposal
  • fixes Windows discovery to verify both the cached launcher and its base interpreter

Scope

This PR does not add automatic routing, project registration, user-facing setup UI, cache deletion, TTL eviction, or lifecycle telemetry.

Validation

  • TypeScript test compilation
  • ESLint
  • focused unit suite: 176 passing, 3 expected platform skips
  • three manual review passes; no significant findings remain

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 3cb82ae9-7424-40a4-9156-8c54ac6e0895
@StellaHuang95
StellaHuang95 marked this pull request as ready for review August 17, 2026 17:12
@StellaHuang95 StellaHuang95 added review-auto:changes-requested Automated review: posted blocking findings to address. and removed review-auto:changes-requested Automated review: posted blocking findings to address. labels Aug 17, 2026
@StellaHuang95

Copy link
Copy Markdown
Owner Author

Closing this PR in favor of a clean-history replacement with the same current reviewed file changes.

@StellaHuang95

Copy link
Copy Markdown
Owner Author

Superseded by clean-history replacement #9.

StellaHuang95 added a commit that referenced this pull request Aug 25, 2026
…-key preservation

Reduce this PR's net diff versus its merge-base to only three logical changes:

- #3 atomic canonical lock retirement on release (src/common/lockfile.apis.ts)
- #6 serialized persistent-state clears (src/common/persistentState.ts)
- #7 generic Clear Cache preserves the inline association key
  (constants.ts, envCommands.ts, extension.ts, and an import-only change in
  the inline-script envManager)

Revert the other seven changes to the merge-base content:
- #1 root-generation nonce, #2 root/entry admission decoupling,
  #9 create-counting order (inline-script envManager)
- #4/#5 reclaim-side lock retirement + generation-specific inspection
  (keep only the minimal release-side companions inspect/reclaim need to
  stay correct: .release-* recognition and ENOENT-on-readdir tolerance)
- #8 workspace-root protection (settingHelpers)
- #10 typed ClearCacheNotSupported (envManagers, NotSupportedError)

Also revert the associated test changes for the removed items, keeping the
new persistentState suite (#6), the new Clear Environment Caches suite (#7),
and the release-side lock-retirement tests (#3).

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
StellaHuang95 added a commit that referenced this pull request Aug 26, 2026
…-key preservation

Reduce this PR's net diff versus its merge-base to only three logical changes:

- #3 atomic canonical lock retirement on release (src/common/lockfile.apis.ts)
- #6 serialized persistent-state clears (src/common/persistentState.ts)
- #7 generic Clear Cache preserves the inline association key
  (constants.ts, envCommands.ts, extension.ts, and an import-only change in
  the inline-script envManager)

Revert the other seven changes to the merge-base content:
- #1 root-generation nonce, #2 root/entry admission decoupling,
  #9 create-counting order (inline-script envManager)
- #4/#5 reclaim-side lock retirement + generation-specific inspection
  (keep only the minimal release-side companions inspect/reclaim need to
  stay correct: .release-* recognition and ENOENT-on-readdir tolerance)
- #8 workspace-root protection (settingHelpers)
- #10 typed ClearCacheNotSupported (envManagers, NotSupportedError)

Also revert the associated test changes for the removed items, keeping the
new persistentState suite (#6), the new Clear Environment Caches suite (#7),
and the release-side lock-retirement tests (#3).

Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com>
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.

1 participant