Skip to content

Next/v0.1.2 - #16

Merged
djradon merged 5 commits into
mainfrom
next/v0.1.2
May 21, 2026
Merged

Next/v0.1.2#16
djradon merged 5 commits into
mainfrom
next/v0.1.2

Conversation

@djradon

@djradon djradon commented May 21, 2026

Copy link
Copy Markdown
Contributor

Summary by CodeRabbit

  • New Features

    • Added timing instrumentation for validation and generation operations via WEAVE_TIMING environment variable
    • Enhanced repository source handling with floating locators for improved integration workflows
  • Bug Fixes

    • Fixed ResourcePage generation for shape row classification during partial regeneration
    • Improved repository source path validation and filtering
  • Documentation

    • Released v0.1.2 with compatibility updates and known limitations
    • Updated testing guidance and environment variable documentation

Review Change Stack

djradon added 2 commits May 21, 2026 00:33
Render ResourcePage floating repository source metadata with the repository URL
as a link and the repository-root path as plain text. This gives readers useful
source context without implying a pinned branch, commit, or file URL for
floating current-source bindings.
- preserve workingAccessUrl and floating repository locators on first payload ResourcePage models
- validate extracted-source floating repository locators by URL and repository-root path
- resolve canonical and extraction source panels through allowed floating repository checkouts
- keep mesh-owned floating source candidate roots inside the configured workspace boundary
- fill v0.1.2 release notes and fix the live-server branch fixture mount example
- add focused coverage for floating extracted sources and mesh-owned path-policy boundaries
@coderabbitai

coderabbitai Bot commented May 21, 2026

Copy link
Copy Markdown

Warning

Rate limit exceeded

@djradon has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 10 minutes and 40 seconds before requesting another review.

You’ve run out of usage credits. Purchase more in the billing tab.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: f4ebe811-4bf3-4c0e-b8bc-315c550ac862

📥 Commits

Reviewing files that changed from the base of the PR and between e4c3b71 and 874bcac.

📒 Files selected for processing (31)
  • deno.json
  • documentation/notes/release-notes.v0.1.1.md
  • documentation/notes/release-notes.v0.1.2.md
  • documentation/notes/wd.release-runbook.md
  • documentation/notes/wu.cli-reference.extract.md
  • documentation/notes/wu.cli-reference.generate.md
  • documentation/notes/wu.cli-reference.integrate.md
  • documentation/notes/wu.cli-reference.knop.add-reference.md
  • documentation/notes/wu.cli-reference.knop.create.md
  • documentation/notes/wu.cli-reference.md
  • documentation/notes/wu.cli-reference.mesh.create.md
  • documentation/notes/wu.cli-reference.payload.update.md
  • documentation/notes/wu.cli-reference.root-designator.md
  • documentation/notes/wu.cli-reference.set.extraction-source.md
  • documentation/notes/wu.cli-reference.set.history.md
  • documentation/notes/wu.cli-reference.set.next-state.md
  • documentation/notes/wu.cli-reference.target-syntax.md
  • documentation/notes/wu.cli-reference.validate.md
  • documentation/notes/wu.cli-reference.version.md
  • documentation/notes/wu.cli-reference.weave.md
  • documentation/notes/wu.environment-variables.md
  • documentation/notes/wu.logging.md
  • documentation/notes/wu.repository-options.md
  • src/cli/run.ts
  • src/core/weave/weave.ts
  • src/runtime/weave/pages.ts
  • src/runtime/weave/pages_test.ts
  • src/runtime/weave/weave.ts
  • tests/e2e/weave_cli_test.ts
  • tests/integration/validate_version_generate_test.ts
  • tests/integration/weave_test.ts
📝 Walkthrough

Walkthrough

This PR extends the Weave weave pipeline to support repository-backed source payloads via optional repositorySourceFloatingLocator fields. Core validation logic now selects between local working-file and repository source locators; runtime resolution delegates to location-specific helpers; and page metadata renders repository URLs alongside paths. Workspace boundary enforcement prevents mesh-owned local access rules from escaping the policy root.

Changes

Repository source floating locator support

Layer / File(s) Summary
Data contracts and identifier page API
src/core/weave/weave.ts
ReferenceTargetSourcePayloadArtifact adds optional repositorySourceFloatingLocator field; buildFirstPayloadWeavePages option type extended with workingAccessUrl and repositorySourceFloatingLocator; identifierPage API refactored to accept structured source object with conditional emission of workingLocalRelativePath, workingAccessUrl, and repositorySourceFloatingLocator fields.
Extracted-knop validation refactoring
src/core/weave/weave.ts
assertCurrentMeshInventoryShapeForFirstExtractedKnopWeave refactored to accept structured sourceArtifact pick instead of standalone path; new assertHasCurrentSourceLocator validates either local or repository-backed locators; assertHasRepositorySourceFloatingLocator improved with try/catch error handling; obsolete hasCurrentWorkingFileLocator and hasRepositorySourceFloatingLocatorPathFact helpers removed.
First payload weave page building
src/core/weave/weave.ts, src/core/weave/weave_test.ts
buildFirstPayloadWeavePages options forwarded through to identifierPage with workingAccessUrl and repositorySourceFloatingLocator; identifier page expectations updated to remove explicit workingLocalRelativePath: undefined assertions in alice and root knop slices.
Floating repository source preservation in tests
src/core/weave/weave_test.ts
"Preserve floating repository payload source locators" test extended to include workingAccessUrl derived from floating source; extracted-bob test refactored to build and reuse repositorySourceFloatingLocator object; new negative test ensures planWeave rejects mismatched floating repository sources between mesh inventory and reference-target artifact.
Runtime source resolution and metadata rendering
src/runtime/weave/weave.ts, src/runtime/weave/pages.ts, src/runtime/weave/pages_test.ts, tests/integration/weave_test.ts
loadReferenceTargetSourcePayloadArtifact forwards repositorySourceFloatingLocator; new resolvePayloadWorkingSourcePath helper selects between repository-backed and local path resolution; canonical and extraction source panels updated to use helper; "Repository Source" metadata row renders URL as hyperlink with path; test expectations updated for new HTML structure.
Local path policy workspace boundary enforcement
src/runtime/operational/local_path_policy.ts, src/runtime/operational/local_path_policy_test.ts
collectRepositorySourceCandidateRoots tightens filtering to require mesh-sourced rules' roots within policy.workspaceRoot; new test verifies resolveRepositorySourceFloatingLocalPath rejects out-of-workspace checkouts.
Documentation and release notes
documentation/notes/release-notes.v0.1.2.md, documentation/notes/wd.general-guidance.md, documentation/notes/wu.environment-variables.md
Adds v0.1.2 release notes documenting floating repository source locators, timing instrumentation, caching improvements; adds YAML frontmatter metadata to environment-variables documentation; corrects live-server mount path in testing guidance.

Possibly related PRs

  • semantic-flow/weave#2: Extends payload artifact handling in src/runtime/weave to support integrated-woven slice history and page seams, building on the same payload/page infrastructure this PR further extends with repository source locator preservation and metadata rendering.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Poem

🐰 A floating source takes wing,
No local path to bind the thing—
Repository roots dance free and wide,
Yet safe within the workspace tide.
Metadata blooms with URL and way,
As weaves grow stronger every day! 🌿

🚥 Pre-merge checks | ✅ 3 | ❌ 2

❌ Failed checks (1 warning, 1 inconclusive)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ❓ Inconclusive The title 'Next/v0.1.2' is overly vague and does not clearly summarize the main changes; it uses a generic naming pattern that could refer to any release or version bump without conveying meaningful information about what was actually changed. Use a more descriptive title that highlights the primary change, such as 'Add floating repository source locators and refactor source handling' or 'Support repository-backed payload source locators for weave integration'.
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch next/v0.1.2

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@src/runtime/weave/pages.ts`:
- Around line 1035-1047: The code builds an <a href> from repositoryUrl inside
the rows.push block (variables repositoryUrl, repositoryPathFromRoot) without
validating its scheme; update this rendering so you first validate
repositoryUrl's scheme (e.g., using a URL parse or regex) and only emit an <a
href="..."> when the scheme is http or https; if the scheme is invalid, render
the escaped repositoryUrl as plain text (or an anchor without an executable
href) and ensure any anchor you do emit includes safe attributes
(rel="noreferrer noopener" and target="_blank" if desired). Locate the rows.push
block around repositorySourceFloatingLocator and change the html/value
generation to perform this validation and conditional rendering instead of
directly interpolating repositoryUrl into href.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 25faaeb9-79ed-4732-bda2-0ec5706ef04a

📥 Commits

Reviewing files that changed from the base of the PR and between de074d6 and e4c3b71.

📒 Files selected for processing (11)
  • documentation/notes/release-notes.v0.1.2.md
  • documentation/notes/wd.general-guidance.md
  • documentation/notes/wu.environment-variables.md
  • src/core/weave/weave.ts
  • src/core/weave/weave_test.ts
  • src/runtime/operational/local_path_policy.ts
  • src/runtime/operational/local_path_policy_test.ts
  • src/runtime/weave/pages.ts
  • src/runtime/weave/pages_test.ts
  • src/runtime/weave/weave.ts
  • tests/integration/weave_test.ts

Comment thread src/runtime/weave/pages.ts Outdated
@codecov

codecov Bot commented May 21, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 80.14528% with 82 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
src/core/weave/weave.ts 74.68% 48 Missing and 12 partials ⚠️
src/runtime/weave/weave.ts 90.65% 7 Missing and 3 partials ⚠️
src/cli/run.ts 84.61% 2 Missing and 4 partials ⚠️
src/runtime/weave/pages.ts 76.92% 4 Missing and 2 partials ⚠️

📢 Thoughts on this report? Let us know!

djradon added 3 commits May 21, 2026 08:34
- expand v0.1.2 release notes with source locator, ResourcePage, caching, timing, and validation details
- add focused CLI reference pages for weave, validate, version, generate, mesh, integrate, extract, payload, knop, set, target, and root-designator commands
- document WEAVE_LOG_DIR, WEAVE_TIMING, WEAVE_GENERATED_AT, and host-local policy environment behavior
- apply formatter cleanup to touched weave runtime/source files
- skip ResourcePage rewrites when only the generated timestamp footer changes
- surface timestamp-only generate skips in runtime results, operational logs, and CLI output
- add current-state-only overwriteExistingState support for explicit payload release targets
- cover generate, validate, duplicate release-state, overwrite, and CLI rerun behavior
- link expanded CLI, environment, and logging docs from v0.1.2 release notes
- add user-facing logging documentation
- format local path policy for the source quality gate
- verify deno task ci
@djradon
djradon merged commit 0354fad into main May 21, 2026
5 of 6 checks passed
@coderabbitai coderabbitai Bot mentioned this pull request Jul 29, 2026
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