Estimate managment from PostIt #53

Merged
notazof merged 20 commits from feat/sign-estimate into main 2026-09-19 18:39:26 +01:00

2026-09-19

Updated
Some checks failed
Dotnet build and test / build (pull_request) Failing after 16m28s
2026-09-19 18:09:02 +01:00
Org Markdown : Markdig
All checks were successful
Dotnet build and test / build (pull_request) Successful in 6m22s
2026-09-19 18:00:09 +01:00
optimisation of workflows : Skiasharp deps already installed
All checks were successful
Dotnet build and test / build (pull_request) Successful in 11m20s
Forgejo Release / release (push) Successful in 6m11s
2026-09-19 16:37:57 +01:00
test(blogs): configure SiteSettings.Blog in MappedClaimsBlogsWebServerFixture
Some checks failed
Forgejo Release / release (push) Failing after 6m42s
Dotnet build and test / build (pull_request) Failing after 5m30s
BlogSpotService's constructor throws InvalidOperationException
("SiteSettings.Blog is not configured.") when IOptions<SiteSettings>.Blog
is null, so every request to BlogApiController 500'd resolving the
service — all 3 BlogApiMappedClaimsTests were failing with
InternalServerError.

The mapped-claims fixture never configured SiteSettings (the main
BlogsWebServerFixture does, pointing Blog at a per-run temp dir).
Mirror that: Configure<SiteSettings>(s => s.Blog = <temp dir>)
before AddScoped<BlogSpotService>(). These tests are JSON-only
(AttachFiles short-circuits), but the service must be constructible.

Verified: BlogApiMappedClaimsTests 3/3 green; full Yavsc.Blogs.Tests
37/37 green.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-19 14:14:28 +01:00
build: disable StaticWebAssets cache to stop MSB4018 race
DefineStaticWebAssets.ReadOrCreateCache opens the *.dswa.cache.json
files under obj/.../ via File.OpenRead with no try/catch, so under
parallel solution builds a sharing-violation / TOCTOU race on the cache
file escapes as MSB4018 and fails the whole build (seen on
Yavsc.Blogs during the rc15 solution build).

Set StaticWebAssetsCacheDefineStaticWebAssetsEnabled=false so
CacheManifestPath is empty and ReadOrCreateCache short-circuits to a
no-file-I/O path. The cache is a pure build-speed optimization; no
effect on output correctness, only on incremental rebuild speed of the
wwwroot-light web projects.

Verified: Yavsc.Api (transitive web deps) and Yavsc.Blogs.Tests build
clean, and zero *.dswa.cache.json files are produced.

Refs:
  https://source.dot.net/Microsoft.NET.Sdk.StaticWebAssets.Tasks/DefineStaticWebAssets.Cache.cs.html
  https://github.com/dotnet/sdk/issues/49039

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-19 13:53:25 +01:00
changelog: add 1.0.8-rc15 entry
Cover the 60 commits since 1.0.8-rc14: blog attachments + Markdown
preview, the Estimate pipeline (list/edition/validation + API + EF
migrations), provider ongoing requests, file-ACL and genericEstimate
migrations, POSTIT_SETTINGS_JSON, billing filtered by user, shared
YavscMessageSender, Gitleaks CI, and the test stabilization wave.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-19 12:56:02 +01:00

2026-09-18

preview the Markdown
Some checks failed
Dotnet build and test / build (pull_request) Failing after 8m16s
2026-09-18 19:45:35 +01:00
+MarkdownViewer
Some checks failed
Dotnet build and test / build (pull_request) Failing after 11m45s
2026-09-18 13:58:31 +01:00
post the file
Some checks failed
Dotnet build and test / build (pull_request) Has been cancelled
2026-09-18 13:38:42 +01:00
corrige la création du lien
All checks were successful
Dotnet build and test / build (pull_request) Successful in 15m51s
2026-09-18 12:13:00 +01:00
test: cover BlogApiClient.CreateMultipartContent shape + server round-trip
Expose CreateMultipartContent as public so the blogs backend tests can
assert on its wire shape directly and round-trip it through the live
BlogsWebServerFixture host. New CreateMultipartContentTests:
- shape: blog part is camelCase JSON with WhenWritingNull, one file
  part per attachment (filename, Content-Type, octet-stream fallback);
- round-trip: POST the built body to /api/v1/blogspot, assert 201
  Created + attachment row + file landed under BlogFilesRoot.

Co-Authored-By: Claude <noreply@anthropic.com>
2026-09-18 11:39:45 +01:00
-Config.Temp
All checks were successful
Dotnet build and test / build (pull_request) Successful in 12m53s
2026-09-18 11:13:44 +01:00

2026-09-16

Supprime un faux message d'erreur
Some checks failed
Dotnet build and test / build (pull_request) Failing after 11m27s
2026-09-16 19:48:13 +01:00
better indications
All checks were successful
Dotnet build and test / build (pull_request) Successful in 10m36s
2026-09-16 18:53:17 +01:00
new defaults
All checks were successful
Dotnet build and test / build (pull_request) Successful in 21m36s
2026-09-16 18:23:52 +01:00