Files
tuliprox/.gitignore
T
euzuandGitHub 91f6c57159 Fix/merge live and vod recording (#876)
feat(dvr)!: unify live and VOD/series recording into one recoverable DVR

Merge fix/merge_live_and_vod_recording into develop.

- One recording queue for scheduled live captures and VOD/series transfers,
  with a shared transition graph, provider-slot scheduling, resumable HTTP
  transfers (strong ETag / Last-Modified validation) and ffmpeg live capture.
- Crash-recoverable persistence: B+Tree repository with a journal-first
  recovery history; one file can be shared by several library entries.
- Admission checks quota and disk on request, at transfer start (real size)
  and before an entry attaches to a finished file; idempotent requests.
- REST is command-only; state reaches clients via owner-filtered WebSocket
  snapshots.
- Deleting a recording removes the file once no entry holds it; removing an
  entry keeps a finished file and cleans up orphaned partials.
- User ids derive from the configured username (web:/api:); the identity
  registry is gone.
- Spanish locale added; ru/ar completed; locale parity test.

BREAKING CHANGE: `video.download` is now `video.recording` (nested
`recording` keys move up, `download_priority`/`recording_priority` become
`priority`); old configs fail to load with a migration hint.
BREAKING CHANGE: `/api/v1/file/download*` and `/file/record` are removed in
favour of `/api/v1/recording/*`.
BREAKING CHANGE: `download.*` and `recording.write` permissions are replaced
by `recording.read|create|manage|delete`; tokens from before the change must
re-authenticate.
BREAKING CHANGE: the old recording queue does not migrate; existing
`identity_registry.json` is ignored.
2026-10-04 16:02:55 +02:00

84 lines
1.3 KiB
Plaintext

.tools
.worktrees
dist
/resources/*.ts
/release
/target
/frontend/build
# Default ignored files
/shelf/
/workspace.xml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml
/dev/
/debug/
/testkit-report
# ignore everything inside docs
docs/**/*
# allow src inside docs
!docs/src/
# allow everything inside src
!docs/src/**/*
docker/binaries
.DS_Store
*.m3u
.idea/
*.idea
*.iml
node_modules
yarn.lock
*.log
docker/web
docker/tuliprox
docker/resources
artifacts
# Ignore VSCode settings and files
/.vscode
.envrc
backend/app/Cargo.lock
# Ignore markdown files
*.md
!docs/src/**/*.md
!README.md
!CHANGELOG.md
!CONTRIBUTING.md
# Ignore ai documentation files
# no ai files
# Local AI tooling configuration. Machine-specific (it names binaries that
# only exist on a developer's own machine), so it is not project source.
/.claude/
/.mcp.json
# Local refactoring measurements (clippy inventories, cargo metadata, timings).
# These are engineering artifacts of the modularization work, not project docs.
/baselines/
# Scratch directory some backend tests create relative to the crate root.
# Test output must never become tracked source.
/backend/app/tmp/
# Local secret environment files
.env
.env.*
!.env.example
# Testkit report artifacts
/testkit-report/