Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
188 commits
Select commit Hold shift + click to select a range
474ec4c
fix: enforce strict quarantine in isolated and frozen installs
ueberBrot Oct 9, 2026
d6b08d1
test: prove public server-local RPC ready clients
ueberBrot Oct 9, 2026
92bb086
test: prove HTTP SSE and metadata view contracts
ueberBrot Oct 9, 2026
344c13a
Merge ticket #96: enforce strict dependency quarantine
ueberBrot Oct 9, 2026
a55e4e9
Merge branch 'feature/review-programme-0.1.0' into ticket/103-http-vi…
ueberBrot Oct 9, 2026
82ef51f
fix: register install policy verifier for static audits
ueberBrot Oct 9, 2026
c6c8c9e
Merge ticket #103: prove HTTP stream and metadata view contracts
ueberBrot Oct 9, 2026
c2dba19
Merge ticket #110: prove isolated server-local RPC ready clients
ueberBrot Oct 9, 2026
df8e636
docs: measure independent RPC transport overhead (#123)
ueberBrot Oct 9, 2026
16dab3a
Merge branch 'feature/review-programme-0.1.0' into ticket/123-transpo…
ueberBrot Oct 9, 2026
b49e8b7
fix: normalize live values and require fixed Query Core
ueberBrot Oct 9, 2026
1fd82db
Merge branch 'feature/review-programme-0.1.0' into ticket/97-live-values
ueberBrot Oct 9, 2026
d5ecf60
Merge ticket #123: measure independent RPC transport overhead
ueberBrot Oct 9, 2026
0089789
fix: align transport proof ownership and ADR decision
ueberBrot Oct 9, 2026
085508c
chore: keep native quarantine and consolidate cached-view decisions
ueberBrot Oct 9, 2026
12de88f
fix: preserve independent RPC stream interruption Causes (#98)
ueberBrot Oct 9, 2026
0760848
Merge branch 'feature/review-programme-0.1.0' into ticket/98-stream-c…
ueberBrot Oct 9, 2026
c2dbb60
Merge pre-release constraints cleanup
ueberBrot Oct 9, 2026
202b766
Merge integration constraints into live value changes
ueberBrot Oct 9, 2026
9ac577b
chore: align live value changes with pre-release constraints
ueberBrot Oct 9, 2026
7ae6483
test: preserve native stream cancellation before first emission (#98)
ueberBrot Oct 9, 2026
d22bed4
Merge ticket 97 live value normalization
ueberBrot Oct 9, 2026
65ff73c
Merge branch 'feature/review-programme-0.1.0' into ticket/98-stream-c…
ueberBrot Oct 9, 2026
b39236a
chore: centralize workspace TypeScript versions in catalogs
ueberBrot Oct 9, 2026
a42975a
docs: keep ADRs focused on architectural decisions
ueberBrot Oct 9, 2026
24b9c92
Merge branch 'feature/review-programme-0.1.0' into ticket/98-stream-c…
ueberBrot Oct 9, 2026
ef8a717
Merge ticket 98 complete stream Causes
ueberBrot Oct 9, 2026
ba396ff
fix: derive RPC payloadlessness from schema declarations
ueberBrot Oct 9, 2026
548a689
Merge branch 'feature/review-programme-0.1.0' into ticket/99-payload-…
ueberBrot Oct 9, 2026
eb20ef8
Merge ticket 99 declaration-based payload classification
ueberBrot Oct 9, 2026
06c175a
docs: defer Changesets until initial publication
ueberBrot Oct 9, 2026
6ca5957
fix: respect QueryClient hashing defaults
ueberBrot Oct 9, 2026
db859d6
Merge integration stream and payload fixes into hashing
ueberBrot Oct 9, 2026
d2f6480
Merge ticket 100 QueryClient hashing ownership
ueberBrot Oct 9, 2026
2e65e5c
Include accumulated stream policy in cache identity
ueberBrot Oct 9, 2026
06383d5
Merge branch 'feature/review-programme-0.1.0' into ticket/101-stream-…
ueberBrot Oct 9, 2026
f1351c0
docs: prune obsolete HTTP implementation reference
ueberBrot Oct 9, 2026
4aabb52
Merge branch 'feature/review-programme-0.1.0' into ticket/101-stream-…
ueberBrot Oct 9, 2026
dbe4cc9
Merge ticket/101-stream-policy-identity
ueberBrot Oct 9, 2026
c68e9f6
docs: document invalid stream refetch modes
ueberBrot Oct 9, 2026
389ec39
Document typed retries and runner stream lifetimes
ueberBrot Oct 9, 2026
eca7cb1
docs: keep ADRs focused on architectural decisions
ueberBrot Oct 9, 2026
73c0ab5
Merge branch 'feature/review-programme-0.1.0' into ticket/112-retry-r…
ueberBrot Oct 9, 2026
b555d0e
Merge branch 'feature/review-programme-0.1.0' into ticket/112-retry-r…
ueberBrot Oct 9, 2026
f5ed05e
feat: add buffered HTTP metadata query views
ueberBrot Oct 9, 2026
8455272
Merge ticket/112-retry-runner-recipes
ueberBrot Oct 9, 2026
96ed283
Merge branch 'feature/review-programme-0.1.0' into ticket/106-http-me…
ueberBrot Oct 9, 2026
8a3d988
Merge branch 'feature/review-programme-0.1.0' into ticket/106-http-me…
ueberBrot Oct 9, 2026
42b4f98
feat: add accumulated HTTP SSE queries
ueberBrot Oct 9, 2026
fe9e400
Merge branch 'feature/review-programme-0.1.0' into ticket/104-http-ac…
ueberBrot Oct 9, 2026
4123981
Merge ticket/104-http-accumulated-sse
ueberBrot Oct 9, 2026
18b596b
test: complete HTTP stream contract verification
ueberBrot Oct 9, 2026
9c779bd
fix: preserve metadata snapshot ownership through cache sharing
ueberBrot Oct 9, 2026
17eefc2
docs: add stable unary hydration recipes
ueberBrot Oct 9, 2026
3b77894
Merge commit '18b596b' into ticket/107-unary-hydration
ueberBrot Oct 9, 2026
7c80f97
Merge commit '18b596bc2769c41bf1b6071fef79c29eecc76faa' into ticket/1…
ueberBrot Oct 9, 2026
d7eb965
Merge commit '7c80f97b3ac34ca75be329bc7173ba5c59cdb2ea' into feature/…
ueberBrot Oct 9, 2026
c7683ea
Merge commit '3b7789475804d815d43142ec98bc2fdc887bf8a8' into feature/…
ueberBrot Oct 9, 2026
771e174
feat: add HTTP live SSE query views
ueberBrot Oct 9, 2026
923b354
test: verify metadata ownership and hydration recipes
ueberBrot Oct 9, 2026
f7fdb97
merge: synchronize HTTP live SSE with integration
ueberBrot Oct 9, 2026
1601229
test: document metadata selection sharing boundary
ueberBrot Oct 9, 2026
63b1c6f
Merge commit 'f7fdb97645e179b08d6cc6fa2e38b7ea315bf1e9' into feature/…
ueberBrot Oct 9, 2026
3790342
docs: align HTTP capability references with cached views
ueberBrot Oct 9, 2026
fb541b8
test: checkpoint native QueryClient defaults recipes
ueberBrot Oct 9, 2026
a3774e8
wip: save stream snapshot pause checkpoint
ueberBrot Oct 9, 2026
cda3922
Merge commit '3790342a0d9e0872a124fdf9493f5787acf0f3fc' into ticket/1…
ueberBrot Oct 10, 2026
68a277f
Merge integration updates into stream snapshots
ueberBrot Oct 10, 2026
f2f8108
docs: complete native QueryClient defaults recipes
ueberBrot Oct 10, 2026
5a11c6b
Merge native QueryClient defaults recipes
ueberBrot Oct 10, 2026
c74eb26
docs: define native cache filter recipes
ueberBrot Oct 10, 2026
73ec81b
Merge branch 'feature/review-programme-0.1.0' into ticket/114-native-…
ueberBrot Oct 10, 2026
937ba8d
feat: complete owned stream snapshots and cleanup proofs
ueberBrot Oct 10, 2026
3bec444
Merge native defaults recipes into stream snapshots
ueberBrot Oct 10, 2026
cb77907
Merge native cache filter recipes
ueberBrot Oct 10, 2026
ae64a00
docs: keep cache filter guidance focused on usage
ueberBrot Oct 10, 2026
8b922b7
Merge branch 'feature/review-programme-0.1.0' into ticket/108-stream-…
ueberBrot Oct 10, 2026
dc6efae
docs: retain transport error types in cache filter recipe
ueberBrot Oct 10, 2026
6885925
Merge branch 'feature/review-programme-0.1.0' into ticket/114-native-…
ueberBrot Oct 10, 2026
64f580a
Merge typed transport errors in cache filter recipes
ueberBrot Oct 10, 2026
6e6740a
Merge owned stream snapshots and local cleanup
ueberBrot Oct 10, 2026
1d7d78d
test: exercise snapshot controls through the source barrel
ueberBrot Oct 10, 2026
159387c
Isolate application cache owners and persisted directories
ueberBrot Oct 10, 2026
33edbaa
Merge branch 'feature/review-programme-0.1.0' into ticket/116-owner-p…
ueberBrot Oct 10, 2026
18d0a5e
Reconcile optimistic user writes across typed caches
ueberBrot Oct 10, 2026
2ddc430
Merge optimistic user cache workflows
ueberBrot Oct 10, 2026
e3a4436
Keep optimistic write guidance focused on application behavior
ueberBrot Oct 10, 2026
a524532
Guard owner callbacks and remount replacement query clients
ueberBrot Oct 10, 2026
7bb7008
Preserve query view representations through JSON hydration
ueberBrot Oct 10, 2026
b06393d
Merge branch 'feature/review-programme-0.1.0' into ticket/109-hydrati…
ueberBrot Oct 10, 2026
457ec4c
Combine optimistic writes with immutable cache owners
ueberBrot Oct 10, 2026
b4b7bce
Preserve relative order when overlapping user deletions roll back
ueberBrot Oct 10, 2026
bc8e1a6
Merge branch 'feature/review-programme-0.1.0' into ticket/116-owner-p…
ueberBrot Oct 10, 2026
663053c
Merge captured cache owner handoff and persistence
ueberBrot Oct 10, 2026
25f256a
Merge branch 'feature/review-programme-0.1.0' into ticket/109-hydrati…
ueberBrot Oct 10, 2026
2a055ba
Keep tracked mutation option declarations portable
ueberBrot Oct 10, 2026
82c7f33
Merge paired hydration codecs for generated query views
ueberBrot Oct 10, 2026
e06eb6c
Keep ownership handoff explicit and hydration recipes reachable
ueberBrot Oct 10, 2026
f4d6e71
Refresh generated reads from scoped user events
ueberBrot Oct 10, 2026
7b4adc7
Integrate scoped event invalidation recipe
ueberBrot Oct 10, 2026
65547e5
Demonstrate request-owned Start execution and prepared hydration
ueberBrot Oct 10, 2026
1af606d
Merge branch 'feature/review-programme-0.1.0' into ticket/111-server-…
ueberBrot Oct 10, 2026
fa42879
Integrate request-owned Start execution and prepared hydration
ueberBrot Oct 10, 2026
2829acf
Keep Start server imports and snapshot types within their consumers
ueberBrot Oct 10, 2026
fffe200
Certify Vue and Solid consumers with native reactive options
ueberBrot Oct 10, 2026
44952e4
Merge commit '2829acf' into ticket/118-vue-solid-consumers
ueberBrot Oct 10, 2026
8078163
Certify Svelte and Angular generated query consumption
ueberBrot Oct 10, 2026
6eb26e9
Merge commit 'fffe200' into ticket/119-svelte-angular-consumers
ueberBrot Oct 10, 2026
f8122e7
Merge branch 'feature/review-programme-0.1.0' into ticket/119-svelte-…
ueberBrot Oct 10, 2026
a512ad0
Verify packed browser and worker query hosts
ueberBrot Oct 10, 2026
4bdea92
Share framework browser verification and track isolated consumers
ueberBrot Oct 10, 2026
5ff2638
Preserve builder argument contracts and compile reactive guide examples
ueberBrot Oct 10, 2026
952730f
Integrate packed browser and worker hosts
ueberBrot Oct 10, 2026
9b66379
Integrate Vue and Solid consumers and option types
ueberBrot Oct 10, 2026
3814264
Prepare Chromium for packed framework validation
ueberBrot Oct 10, 2026
408e394
Merge commit '5ff2638' into ticket/119-svelte-angular-consumers
ueberBrot Oct 10, 2026
c790592
Merge branch 'feature/review-programme-0.1.0' into ticket/119-svelte-…
ueberBrot Oct 10, 2026
e85ec1b
Keep packed host setup within its acceptance test
ueberBrot Oct 10, 2026
7c64491
Merge branch 'feature/review-programme-0.1.0' into ticket/119-svelte-…
ueberBrot Oct 10, 2026
6a08247
Integrate Svelte and Angular consumers
ueberBrot Oct 10, 2026
eafaed7
Verify application-owned WebSocket query lifetimes
ueberBrot Oct 10, 2026
f574d9e
Merge branch 'feature/review-programme-0.1.0' into ticket/122-websock…
ueberBrot Oct 10, 2026
685c82a
Verify generated OpenAPI HTTP consumers
ueberBrot Oct 10, 2026
d7c7c36
Integrate generated OpenAPI consumer verification
ueberBrot Oct 10, 2026
a1a4045
Exercise copied WebSocket snapshots across peers
ueberBrot Oct 10, 2026
04c66c6
Merge branch 'feature/review-programme-0.1.0' into ticket/122-websock…
ueberBrot Oct 10, 2026
35fe393
Integrate ready WebSocket client verification
ueberBrot Oct 10, 2026
d969778
Add a repeatable stream retention baseline
ueberBrot Oct 10, 2026
9985524
Merge branch 'feature/review-programme-0.1.0' into ticket/124-stream-…
ueberBrot Oct 10, 2026
b8e2c3c
Integrate stream retention baseline
ueberBrot Oct 10, 2026
4419f0c
Measure packed construction, compiler contracts, and bundles
ueberBrot Oct 10, 2026
cdcca1f
Merge branch 'feature/review-programme-0.1.0' into ticket/125-contrac…
ueberBrot Oct 10, 2026
3d87eb9
Keep packed measurements compatible with compiler checks
ueberBrot Oct 10, 2026
5c33b02
Cover seeded stream history publication
ueberBrot Oct 10, 2026
57e81fe
Integrate bounded stream publication investigation
ueberBrot Oct 10, 2026
a3bd759
Make packed bundle measurements independent of file comments
ueberBrot Oct 10, 2026
057b9d3
Merge branch 'feature/review-programme-0.1.0' into ticket/125-contrac…
ueberBrot Oct 10, 2026
23f576f
Verify seeded history values remain unchanged
ueberBrot Oct 10, 2026
c63fb13
Merge commit '23f576fb479b761fc28071c35dfd517171f4e27f' into ticket/1…
ueberBrot Oct 10, 2026
907b2be
Integrate packed contract and bundle baselines
ueberBrot Oct 10, 2026
6f62045
Report Vite cleanup failures and verify command retirement
ueberBrot Oct 10, 2026
dca8eb7
Merge commit '907b2bec1dfa976e623c229d5244333c16e088a1' into ticket/1…
ueberBrot Oct 10, 2026
e94c83f
Integrate example lifecycle and command retirement
ueberBrot Oct 10, 2026
a3d6554
test: audit supported Effect transport behavior
ueberBrot Oct 10, 2026
c9691cb
test: cancel native stream with its queue full
ueberBrot Oct 10, 2026
90fdbb2
test: observe final remote cleanup count
ueberBrot Oct 10, 2026
8b2b346
Integrate supported Effect transport audit
ueberBrot Oct 10, 2026
b9750fa
Update shipped skill with source-backed workflow guidance
ueberBrot Oct 10, 2026
5d43107
Bound cancellation guidance to the verified queue control
ueberBrot Oct 10, 2026
a55b931
Integrate maintained shipped library skill
ueberBrot Oct 10, 2026
2270d9a
docs: reconcile current public behavior and support limits
ueberBrot Oct 10, 2026
dbedd35
docs: correct Vite disposal guarantees
ueberBrot Oct 10, 2026
809bc25
Reconcile public usage documentation
ueberBrot Oct 10, 2026
41fcb18
Prepare initial 0.1.0 package candidate
ueberBrot Oct 10, 2026
32359a8
Prepare reviewed initial 0.1.0 candidate
ueberBrot Oct 10, 2026
0338c07
test: await native WebSocket close before sampling cleanup
ueberBrot Oct 10, 2026
879a98d
Fix WebSocket cleanup observation ordering
ueberBrot Oct 10, 2026
01f5d8c
Simplify candidate documentation and Start imports
ueberBrot Oct 10, 2026
0cfb272
Remove inaccurate stream measurement link
ueberBrot Oct 10, 2026
4ea1e43
Remove unreleased changelog and streamline guidance
ueberBrot Oct 10, 2026
1d4786e
Use Effect platform services in repository workflows
ueberBrot Oct 10, 2026
de12926
Preserve UTF-8 BOMs in Effect workflows
ueberBrot Oct 10, 2026
43d0e6e
Preserve native command output and aggregate limits
ueberBrot Oct 10, 2026
1e235b1
Use Effect platform services in repository tooling
ueberBrot Oct 10, 2026
55ee50f
Replace installed consumer gates with ordinary validation
ueberBrot Oct 10, 2026
e2e1f07
Preserve focused HTTP hydration recipe coverage
ueberBrot Oct 10, 2026
60c89f6
Merge ordinary validation cleanup
ueberBrot Oct 10, 2026
b8f2e44
docs: state external HTTP example versions
ueberBrot Oct 10, 2026
2e4ecf1
Merge external HTTP example version scope
ueberBrot Oct 10, 2026
ce109cb
chore: author Astro config as TypeScript ESM
ueberBrot Oct 10, 2026
6893603
Merge TypeScript ESM Astro configuration
ueberBrot Oct 10, 2026
935c9e0
chore: align native Intent maintainer checks
ueberBrot Oct 10, 2026
f56fbfa
Merge native Intent maintainer alignment
ueberBrot Oct 10, 2026
259b4e1
docs: clarify native framework examples
ueberBrot Oct 10, 2026
a0a363a
Merge native framework guide clarifications
ueberBrot Oct 10, 2026
75a6b09
docs: give each framework its own Query guide
ueberBrot Oct 10, 2026
98894c4
Focus human docs on library integration
ueberBrot Oct 10, 2026
a6713c6
Correct guide prerequisites and cache identity
ueberBrot Oct 11, 2026
bf38d85
Merge commit 'a6713c654d9393c398df1fb20027c38e48c29c5d' into feature/…
ueberBrot Oct 11, 2026
eac8805
Simplify query preparation and strengthen native cache coverage
ueberBrot Oct 11, 2026
bddb85a
Align RPC reference with object-input skipping
ueberBrot Oct 11, 2026
54b6521
Merge reviewed architecture and documentation improvements
ueberBrot Oct 11, 2026
512cd90
Optimize query execution and fix stream and cache ownership edge cases
ueberBrot Oct 11, 2026
f3ba2a6
Optimize query construction and tighten request lifetimes
ueberBrot Oct 11, 2026
8f4723c
Reuse validated CI builds and share release checks
ueberBrot Oct 11, 2026
d870776
Add typed query policies and focus HTTP and RPC docs
ueberBrot Oct 11, 2026
3e3fd37
Refactor shared query contracts and example lifecycle code
ueberBrot Oct 11, 2026
678a169
docs: focus README on minimal RPC and HTTP examples
ueberBrot Oct 11, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
37 changes: 22 additions & 15 deletions .fallowrc.jsonc
Original file line number Diff line number Diff line change
@@ -1,16 +1,19 @@
{
"$schema": "./node_modules/fallow/schema.json",

// Astro copies this browser entry from public/ and loads it through the
// Starlight head configuration, which static import analysis cannot follow.
"entry": ["apps/docs/public/package-version.js", "playwright.docs.config.ts"],
"entry": [
"scripts/measure-construction.mts",
"scripts/verify-docs-examples.mts",
"apps/docs/public/package-version.js",
"playwright.docs.config.ts",
"tests/types/*.{ts,tsx}"
],

"ignorePatterns": ["examples/tanstack-start/src/routeTree.gen.ts"],

// Framework tooling consumes these exports through convention-generated entries.
"ignoreExports": [
{
"file": "apps/docs/astro.config.mjs",
"file": "apps/docs/astro.config.mts",
"exports": ["default"]
},
{
Expand All @@ -27,10 +30,9 @@
}
],

// Each executable example keeps its resource ownership and cancellation
// workflow and UI in place so readers can understand and copy the integration.
// Fingerprints expire when the duplicated code or occurrence count changes.
"duplicates": {
"mode": "semantic",
"near": true,
"ignoredClones": [
"dup:22704c46:2",
"dup:3fec4231:2",
Expand All @@ -54,21 +56,21 @@
]
},

// Vite+ tasks, packing, and imported lint presets invoke tools Fallow cannot trace.
// Keep Effect peer and test dependencies available for the library and fixtures.
"ignoreDependencies": [
"@arethetypeswrong/cli",
"@effect/platform-node",
"@effect/tsgo",
"@effect/vitest",
"@shadcn/lint",
"@tanstack/intent",
"effect",
"publint",
// React belongs to the private apps; Fallow attributes shared example sources to the root.
"react",
"typescript-5.9",
"unplugin-unused"
],

// Health measures shipped library code in src/. Exclude docs, examples,
// tooling, and tests here; other audits retain their repository-wide scope.
"health": {
"ignore": [
"apps/**",
Expand All @@ -85,8 +87,13 @@
"rules": {
"private-type-leaks": "error",

// Public-entry suppressions are valid in the entry audit but necessarily
// look stale in production mode, where package entry exports are exempt.
"stale-suppressions": "off"
}
},

"overrides": [
{
"files": ["src/index.ts"],
"rules": { "unused-types": "off" }
}
]
}
8 changes: 1 addition & 7 deletions .github/actions/setup-repository/action.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,6 @@
name: Set up repository
description: Install the pinned package manager, Vite+, and workspace dependencies.

inputs:
cache:
description: Whether setup-vp should restore and save its dependency cache.
required: false
default: 'true'

runs:
using: composite
steps:
Expand All @@ -17,6 +11,6 @@ runs:
uses: voidzero-dev/setup-vp@1b32467adbe183473499fd9d5d372c3ed9641754 # v1.18.0
with:
node-version-file: .node-version
cache: ${{ inputs.cache }}
cache: true
run-install: |
args: ['--frozen-lockfile']
94 changes: 53 additions & 41 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,6 @@ name: CI

on:
pull_request:
push:
branches:
- main
schedule:
- cron: '17 4 1 * *'
workflow_call:
Expand All @@ -29,6 +26,7 @@ jobs:
name: Check out repository
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
fetch-depth: 0
persist-credentials: false

- &setup_repository
Expand All @@ -38,49 +36,31 @@ jobs:
- name: Verify formatting
run: vp run format

- name: Construct package prerequisite
run: vp run pack

- name: Run type-aware linting
run: vp run lint

- name: Run TypeScript checking
- name: Check shipped skills
env:
INTENT_REVIEW_BASE: ${{ github.event.pull_request.base.sha }}
run: |
vp run skills-check
if [ -n "$INTENT_REVIEW_BASE" ]; then
vp exec intent maintainer check --base "$INTENT_REVIEW_BASE" --github-summary
else
vp exec intent maintainer check --github-summary
fi

- name: Run type-aware linting and TypeScript checking
run: vp run typecheck

- name: Check public API compiler fixtures
run: vp run api-types

- name: Run Effect diagnostics
run: vp run effect-check

- name: Run Vitest
run: vp run test

- name: Run Fallow audits
run: vp run fallow

package-contract:
name: Package contract
needs: source-quality
runs-on: ubuntu-latest
timeout-minutes: 20

steps:
- *checkout
- *setup_repository

- name: Construct and inspect package
run: vp run pack

- name: Verify packed consumers and type scale
run: vp run packed-package

- name: Preserve verified package artifact
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: package-${{ github.sha }}
path: .artifacts/*.tgz
if-no-files-found: error
include-hidden-files: true
compression-level: 0
retention-days: 7
- name: Run Vitest
run: vp run test

example-builds:
name: Example builds
Expand All @@ -98,6 +78,18 @@ jobs:
- name: Build TanStack Start application
run: vp run tanstack-start-build

- name: Preserve application builds
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: application-builds
path: |
dist
examples/vite-react/dist
examples/tanstack-start/dist
if-no-files-found: error
include-hidden-files: true
retention-days: 7

documentation:
name: Documentation
needs: source-quality
Expand All @@ -114,11 +106,20 @@ jobs:
- name: Build documentation
run: vp run docs-build

- name: Preserve documentation build
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: documentation-build
path: apps/docs/dist
if-no-files-found: error
include-hidden-files: true
retention-days: 7

browser:
name: Playwright (${{ matrix.browser }})
needs:
- package-contract
- example-builds
- documentation
runs-on: ubuntu-latest
timeout-minutes: 20

Expand All @@ -134,14 +135,25 @@ jobs:
- *checkout
- *setup_repository

- name: Restore application builds
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
name: application-builds

- name: Restore documentation build
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
name: documentation-build
path: apps/docs/dist

- name: Install ${{ matrix.browser }}
run: vp exec playwright install --with-deps ${{ matrix.browser }}

- name: Check documentation in ${{ matrix.browser }}
run: vp run docs-e2e --project=${{ matrix.browser }}
run: vp run --ignore-depends-on docs-e2e --project=${{ matrix.browser }}

- name: Run ${{ matrix.browser }} acceptance tests
run: vp run e2e:${{ matrix.browser }}
run: vp run --ignore-depends-on e2e:${{ matrix.browser }}

- name: Preserve Playwright failure diagnostics
if: failure()
Expand Down
27 changes: 21 additions & 6 deletions .github/workflows/deploy-docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,12 @@ name: Deploy documentation

on:
workflow_call:
inputs:
build-artifact:
description: Validated documentation artifact from this workflow run.
required: false
type: string
default: ''
workflow_dispatch:

permissions:
Expand All @@ -20,23 +26,32 @@ jobs:
timeout-minutes: 15

steps:
- name: Restore validated documentation
if: inputs.build-artifact != ''
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
with:
name: ${{ inputs.build-artifact }}
path: apps/docs/dist

- name: Check out repository
if: inputs.build-artifact == ''
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
fetch-depth: 0
persist-credentials: false

- name: Set up repository
if: inputs.build-artifact == ''
uses: ./.github/actions/setup-repository

- name: Check documentation
run: vp run docs-check
- name: Build documentation
if: inputs.build-artifact == ''
run: vp run docs-build

- name: Build and upload documentation
uses: withastro/action@e84f40bd8d2caa9e768ec82ad30dd81f0b280853 # v6
- name: Upload documentation
uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 # v5
with:
package-manager: pnpm@12.8.2
path: ./apps/docs
path: apps/docs/dist

deploy:
name: Deploy documentation
Expand Down
Loading
Loading