release/jsr-readiness — JSR publishing-readiness program (umbrella, draft)#53
release/jsr-readiness — JSR publishing-readiness program (umbrella, draft)#53rickylabs wants to merge 135 commits into
Conversation
Scaffold the JSR-readiness umbrella supervisor run and its four sub-run skeletons. Umbrella (.llm/tmp/run/release-jsr-readiness--supervisor/): - scorecard.md exit gate (dims A-F), evaluator-owned; gates publish steps E/F - phase-registry.md four-group map + sequencing (chore* parallel; docs IMPL after) - plan.md / research.md program plan + re-baseline vs main@cc3b8731 - worklog/drift/commits/context-pack bookkeeping (drift D-1 GitHub access, D-2 4-vs-3) Sub-runs (.llm/tmp/run/): - chore-prod-readiness--cleanup repo-wide cleanup (dead code, shims, cruft, stray files) - chore-deps-hygiene--deps dep-shape scanners + task prune + bump-version wrapper - docs-user-site--diataxis external docs (Diataxis, deno doc reference, Lume->Pages) - docs-internal-overhaul--contributor internal docs consolidation + deno doc documented Plus .llm/tmp/docs/docs-architecture-research.md (Diataxis/Lume/comparators extract). No branch/worktree/generator launched yet; present-for-review gate precedes any generator. Catalog law, version pins, and off-limits files untouched. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
- drift D-3: WSL Codex remote-control daemon was unmanaged; ran the codex-wsl-remote skill's anchored-PID safe repair -> connected/managed, mobile-visible lane verified. - drift D-1 update: workflow-scoped PAT provided + verified (scopes repo, workflow; login rickylabs), stored in Windows Credential Manager; workflow-scope blocker resolved. - commits.md: record fc5f2ab bootstrap commit. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
…talog premise - Group 1 (chore-prod-readiness--cleanup): shim inventory (S1-S8), dead-code proof method, risk-ordered slice plan, AGENTS-handoff.md -> skill relocation. - Group 2 (chore-deps-hygiene--deps): retract false "catalog unimplemented" finding. Catalog IS live via member package.json `catalog:` (Deno 2.8 protocol); D-G2-1 superseded by D-G2-2; npm catalog-compliance scanner stands as originally scoped (enforces the live invariant, catches inline-pin/stale). - Supervisor: scorecard C1 + phase-registry reflect the AGENTS-handoff relocation. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
…erequisite) PLAN-EVAL reads the `## Design` section of worklog.md; both group worklogs were skeletons without it. Add supervisor-authored Design checkpoints synthesized from the existing plans: - G1 (cleanup): subtractive-run principle, consumer-scan removal method, and the slice -> target -> proving-gate table; off-limits guardrail (F1-F3 functional). - G2 (deps): shared scanner contract (Finding[] + --json + exit), the 3-scanner invariant table, report-only -> FAIL roll-out, prune/bump-wrapper design; this resolves the last open decision (divergent-version policy) in plan.md. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
Group branch off umbrella @ 1f4cafa. Plan/research/Design ready (inherited). Draft sub-PR -> release/jsr-readiness opens next; PLAN-EVAL (OpenHands/minimax M3, separate session) follows. Worktree deferred to implementation launch (WSL Codex). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
Group branch off umbrella @ 1f4cafa. Plan/research/Design ready (inherited; catalog premise corrected via D-G2-2). Draft sub-PR -> release/jsr-readiness opens next; PLAN-EVAL (OpenHands/minimax M3, separate session) follows. Worktree deferred to implementation launch (WSL Codex). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
…launched Per supervisor.md §2: chore/prod-readiness (#54) and chore/deps-hygiene (#55) branched off the umbrella with plan/research/Design ready on each; phase-registry status -> active. GitHub-access blocker resolved (PAT REST path). Worktrees deferred to implementation launch (WSL Codex ext4). PLAN-EVAL per sub-PR follows. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
Verifier session for chore-prod-readiness--cleanup group. Verdict: FAIL_PLAN. Required fixes (each must be made in plan.md and resubmitted to PLAN-EVAL): 1. F3: record the resolution (functional) and add an arch-debt entry. 2. S4 (mysqlJsonExtension): deprecate first, then remove (mirror mssqlJsonExtension). 3. S5 (trustedConnection): name the internal rewrite at mssql.adapter.ts:414-419. 4. S6 (JobBuilder.schedule): add the scaffolder consumer at plugins/workers/src/scaffolding/job-scaffolders.ts:64-65 to the touch list. 5. G1-3 and G1-4: add the scaffold.runtime smoke gate as a regression guard. 6. Per-slice LOC and file list per plan-protocol.md. 7. G1-6: scope the open-ended dead-code sweep or defer to a follow-up run. Co-authored-by: openhands <openhands@all-hands.dev>
Address all 7 required fixes from the minimax-M3 FAIL_PLAN verdict (plan-eval.md): - PR-7 deprecate-before-remove: S4' mysqlJsonExtension (un-@deprecated) deprecated this run, removal deferred; S5 trustedConnection is a behavioural refactor (writer mssql.adapter.ts:415-416 -> authentication .type='ntlm'), not a delete. - F3 ConnectionStrings__{provider}db confirmed FUNCTIONAL (read by service/src/diagnostics/database-connectivity.ts:48,71,94); arch-debt entry database-connectivity-legacy-connstring-alias added. - G1-3 split into G1-3a/G1-3b/G1-3c. - S6: scaffolder consumer plugins/workers/src/scaffolding/job-scaffolders .ts:64-65 + fixture added to G1-5 touch list. - scaffold.runtime smoke gate on every public slice (G1-3a/b/c, G1-4, G1-5). - G1-6 dead-code sweep bounded to touched surfaces + .llm/tools/. - Per-slice file list + LOC budget table added. Re-dispatching PLAN-EVAL cycle 2 (OpenHands minimax M3, separate session). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
…s.md Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
Plan-Gate cleared on cycle 2 (run 27755852001, separate OpenHands minimax-M3 session). All 7 cycle-1 fixes verified against tree; all 8 plan-gate boxes PASS; off-limits guardrail re-confirmed. Implementation gated on user dispatch + G2 PASS. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
…s.md Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
Plan-Gate cleared on cycle 1 (run 27755191977, separate OpenHands minimax-M3 session). All 8 plan-gate boxes PASS; catalog live-invariant spot-check (8 pts) confirmed; off-limits/catalog guardrail PASS. DRAFT marker flipped to ready. Non-blocking NIT recorded for D-2 (anchor scanner on real npm: imports, allow-list windows.ts + registry.manifest.ts). Implementation gated on user dispatch. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
…gistry Group 1 (chore/prod-readiness, PR #54): PASS @ cycle 2 (run 27755852001). Group 2 (chore/deps-hygiene, PR #55): PASS @ cycle 1 (run 27755191977). Both Plan-Gates cleared; implementation gated on explicit user dispatch. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
… worktrees, daemon proof, steering
Co-Authored-By: Codex <noreply@openai.com>
Co-Authored-By: Codex <noreply@openai.com>
…base-path link fix Port the @netscript/fresh-ui design system and netscript-start playground chrome into the static Lume docs site, and fix the GitHub Pages base-path defect. - Adopt fresh-ui --ns-* tokens verbatim (tokens.css: warm-gray + copper + teal, dark default, DM Sans/DM Mono); docs.css ports the SidebarShell chrome (sidebar/topbar/nav, mobile collapse) + prose/table/code styling, all var(--ns-*). - base.vto: SidebarShell layout (brand, docs badge, grouped nav from _data.ts with hierarchical active-highlight), anti-flash dark-mode script (data-theme + localStorage ns-theme), theme/sidebar toggles, skip-link, pagefind search box. - _config.ts: Lume base_path (fixes all root-relative links -> /netscript/), pagefind (static search), code_highlight; kept markdown-it-anchor + location. - favicon.svg (kills /favicon.ico 404). Reference/concept/README content unchanged. Live-checked under /netscript/ via Playwright: build exit 0, 31 pages, 0 bare root-absolute internal links, dark mode + search + code highlighting + sidebar active-state working, 0 console errors on real pages. Closes the US-7 base-path defect and the theme scope gap (drift D-1). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
…release/jsr-readiness Diátaxis user docs site (22 reference + 4 concept + 26 READMEs) with fresh-ui themed chrome, pagefind search, dark mode, and base_path link fix. Live-checked via Playwright.
…e-path fix) Record IMPL-EVAL PASS, the D-1 theme rescope, the LD-DOCS-LANE FAIL_FIX (fresh-ui tokens + playground chrome, base_path/pagefind/code_highlight), the supervisor Playwright live-check (all gates pass under /netscript/), and the user-authorized merge b943e68 into release/jsr-readiness. A1 stays 26/26. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
…tscript/) Builds the Diátaxis docs site with the CI-pinned Deno 2.8.3 toolchain and publishes docs/site/_site to the project Pages site at https://rickylabs.github.io/netscript/. Auto-deploys on push to main touching docs/site; workflow_dispatch enables manual verification deploys from the release branch before the release lands on main. Pages source = GitHub Actions. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
Adds release/jsr-readiness to the Pages push trigger so a verification deploy publishes the current docs/site before the release lands on main. Reverted to main-only once the live site is confirmed. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
The verification deploy is live and confirmed at https://rickylabs.github.io/netscript/. Production Pages now deploys only from main (the released state); workflow_dispatch remains for manual runs. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
Pages A3 deploy GREEN and live at /netscript/. check-test regression on the umbrella root-caused to PR #58 stamping `props: unknown): unknown` on fresh-ui interactive runtime components (satisfies A1 doc-lint, breaks JSX/consumer typecheck guard). Scorecard cannot PASS until fixed (WSL Codex lane). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
…type fix Ready-to-dispatch implementation brief for the check-test regression blocker: replace the over-broad `(props: unknown): unknown` signatures stamped by #58 on the 7 interactive runtime component families with the already-imported concrete prop types + `JSX.Element` return, satisfying both check-test (consumer-render guard) and A1 doc-lint. Not yet dispatched (awaits daemon-attached Codex thread). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
… repro Root cause refined: #58 individually exported the interactive part-functions (main only exposed the namespaces), forcing the (props:unknown):unknown stamp to silence private-type-ref. Fix must return VNode (NOT JSX.Element, which resolves to the private JSXInternal.Element) + concrete props + export the prop/namespace types (approved public-surface expansion). Both gates: deno task test AND deno doc --lint ./mod.ts ./interactive.ts ./primitives.tsx exit 0. Routed to WSL Codex. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
|
[PHASE: IMPL] [VERDICT: PASS] Fresh-ui interactive JSX/doc-lint slice landed on Scope
Commits
Gate Evidence
Notes
|
Formatting-only quality sliceScope: formatting-only fix for CI Formatted files reported by
Formatting commit: Harness evidence commit: Gate evidence:
Diff scope for the formatting commit is one TypeScript file under |
|
@openhands-agent model=openrouter/qwen/qwen3.7-max output=pr-comment iterations=40 use harness ROLE: Scorecard exit-gate evaluator for the UMBRELLA TIP UNDER TEST: CANONICAL SCORECARD: read CONTEXT — the two prior blockers and their fixes (verify they are genuinely resolved, do not assume):
RE-VERIFY EVERY DIMENSION with raw output (this is the program-level exit gate — sub-run PASSes are necessary but not sufficient):
SUB-RUN LEDGER to confirm (each must show plan-eval.md = PASS AND evaluate.md = PASS, no open FAIL_*): #54/#55 (C/D), #56 (F, A2 READMEs), #57 (A user-docs), #58 (A1 fresh-ui). Confirm no unresolved GATE COMMANDS (run from repo root; capture raw exit codes + tails):
OUTPUT: emit a per-dimension table (A1,A2,A3,B1,C1,D1–D5,E1,E2,F1) with PASS/FAIL + the raw evidence line for each, then the overall verdict: HARD CONSTRAINTS (do not cross):
Report the workflow run's raw exit codes and summarize any failing suite/test names. |
OpenHands Agent — Agent failedModel: openrouter/qwen/qwen3.7-max OpenHands Agent Summary — INCOMPLETE (iteration limit)The agent hit the maximum iterations limit (50) before Re-trigger with a narrower task or a higher Run: https://github.com/rickylabs/netscript/actions/runs/27795070641 |
The scorecard-eval (run 27795070641) hit its iteration limit and the OpenHands bot auto-committed its dirty working tree (c4539bf), which included 109 files of `netscript init` smoke-test output under .llm/tmp/init-json-smoke/. That is scratch, not framework source (no packages/plugins/version/lock changes), but it pollutes the release branch and would fail the C1 "zero temp/garbage" dimension. Removing it before the scorecard-eval re-run. Run trace under .llm/tmp/run/openhands/ is retained. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG
|
@openhands-agent model=openrouter/qwen/qwen3.7-max output=pr-comment iterations=120 use harness ROLE: Scorecard exit-gate evaluator for the UMBRELLA TIP UNDER TEST: PR #53 head (currently
READ: CONTEXT — two prior blockers + fixes (verify genuinely resolved, do not assume):
VERIFY YOURSELF (CI does not cover these — this is where your iterations go):
CONFIRM BY EVIDENCE READ (do not re-derive):
OUTPUT — structured verdict comment:
HARD CONSTRAINTS:
Report the workflow run's exit status and a one-line summary: PASS/FAIL + the single most important finding. |
OpenHands Agent — CompletedModel: openrouter/qwen/qwen3.7-max Scorecard Evaluator Session SummaryWorkflow Run: 27795888733 Verdict: PASSAll dimensions A1–F1 satisfied. Program-level exit gate met. Publishing remains evaluator-locked pending explicit user dispatch. Verification ActivitiesCI Evidence (Run 27795718861)
Evaluator-Run Gate Commands
Sub-Run Ledger Review
No open Prior Blockers — Resolved
Advisory Flags (Non-Blocking)
Contract Adherence
Recommended Next StepOn explicit user dispatch, run the publish sequence:
Files Changed
Exit StatusWorkflow run completed successfully. Verdict = PASS. Ready for user dispatch only. Run: https://github.com/rickylabs/netscript/actions/runs/27795888733 |
Evaluator-owned exit-gate verdict for PR #53 release/jsr-readiness. All dimensions A1-F1 verified against CI run 27795718861 + gate commands. Two prior blockers (check-test regression, fmt drift) genuinely resolved. Publishing remains evaluator-locked pending explicit user dispatch. Co-authored-by: openhands <openhands@all-hands.dev>
|
Closing per the locked promotion decision: the JSR-readiness umbrella is never merged whole. It carries the 39-file non-docs prod-readiness payload plus a superseded Lume It is being re-landed split, off current
Closing the PR; the |
JSR Publishing-Readiness Program — Umbrella PR
Umbrella branch for standing up JSR publishing readiness across the workspace. This PR is the
coordination home; implementation lands via four sub-PRs (below). Draft until the umbrella
scorecard passes and publishing is explicitly dispatched.
Exit gate (scorecard)
Publishing is blocked until every dimension is evaluator-verified and all four sub-runs pass
both PLAN-EVAL and IMPL-EVAL. Even then, the real JSR publish fires only on explicit dispatch.
deno doc --lintclean on full exports) + standardized READMEs + onboarding, built via Lume → GitHub Pagespublish:dry-runstays 27 units / 0 slow-type regressionsfile:/link:audit ·deno taskprune ·bump-versionwrapperarch:checkdeno docdocumented in harness + jsr-audit skills ·validate-claude-surface.tsgreenSub-runs (each a full harness run: PLAN-EVAL → Codex impl → IMPL-EVAL)
chore/prod-readinesschore/deps-hygienedocs/user-sitedocs/internal-overhauldeno doc;validate-claude-surfacegreenSequencing:
1 ∥ 2 ∥ (3 & 4 Research+Plan only)→ docs IMPL unlocks after 1 + 2 merge →scorecard pass → publish prep (E: 26 non-CLI @
0.0.1-alpha.0via OIDC; F:@netscript/clilast).Locked decisions
catalog:+ member refs; JSR inlinejsr:per member; neverde-catalog. JSR-version centralization is a scanner gate, not config (Deno has no JSR catalog).
@netscript/clipublishes last.Status
.llm/tmp/run/release-jsr-readiness--supervisor/)Run artifacts live under
.llm/tmp/run/release-jsr-readiness--supervisor/(scorecard, plan,phase-registry, drift) and the four
*--*sub-run directories.🤖 Generated with Claude Code
https://claude.ai/code/session_018fq9V7ujx7e1rWXi57qkPG