Skip to content

Commit 705d93d

Browse files
committed
fix: align read retry status and validation fixtures
Signed-off-by: Jeremi Joslin <jeremi@joslin.fr>
1 parent 972274d commit 705d93d

6 files changed

Lines changed: 20 additions & 1 deletion

File tree

‎crates/registry-breg/src/api/tests/immediate_action_tests.rs‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -858,9 +858,11 @@ async fn human_identity_is_the_principal_claim_and_a_human_token_without_it_is_r
858858
let registry = compiled();
859859
let idp = MockIdp::start().await;
860860
let audience = "urn:example:breg";
861+
let mut verifier = oidc_verifier_config(idp.issuer(), vec![audience.to_owned()]);
862+
verifier.allowed_clients = vec!["agent-client".to_owned()];
861863
let auth = RegistryAuthenticator::new(
862864
&registry,
863-
oidc_verifier_config(idp.issuer(), vec![audience.to_owned()]),
865+
verifier,
864866
Arc::new(JwksFetcher::new_with_fetch_url_policy(
865867
idp.jwks_uri(),
866868
JwksFetcherConfig::defaults(),
@@ -871,6 +873,7 @@ async fn human_identity_is_the_principal_claim_and_a_human_token_without_it_is_r
871873
.expect("human verifier config is valid");
872874
let claims = json!({
873875
"aud": audience,
876+
"azp": "agent-client",
874877
"registry_principal": "reviewer-principal",
875878
"registry_actor_kind": "human",
876879
"registry_purpose": "case-management",

‎crates/registry-coordinator/src/store.rs‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2531,6 +2531,11 @@ impl DispatchStore for Store {
25312531
|| audit.record.cancel_requested && !uncertain
25322532
{
25332533
"cancelled"
2534+
} else if matches!(
2535+
audit.transition,
2536+
Transition::LeaseLapsed(Disposition::RetryPending)
2537+
) {
2538+
"running"
25342539
} else if !uncertain && matches!(audit.transition, Transition::Expired { .. }) {
25352540
"expired"
25362541
} else {

‎crates/registry-coordinator/tests/read_lease_recovery.rs‎

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -388,6 +388,9 @@ async fn lapsed_read_retries_and_fences_the_old_attempt() {
388388
let worker = Worker::new(harness.store.clone(), replacement.clone());
389389
worker.tick().await.expect("recover lapsed read");
390390
assert_eq!(harness.job(run, "read").await.0, "pending");
391+
let retrying = harness.store.status(run).await.expect("retrying status");
392+
assert_eq!(retrying.state, "running");
393+
assert!(retrying.next_due_at.is_some());
391394
harness.assert_lapse_audit();
392395

393396
harness.make_retry_due(run).await;

‎products/coordinator/README.md‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -245,6 +245,8 @@ only. `coordinatorctl test` rejects misspelled fake record members with `scenari
245245
and invalid computed template data with `scenario.call-input`. Aliases without `record` or
246246
`template` retain their general contracts. Regenerate imports when the owning project changes.
247247

248+
Template data schemas use [Messaging's supported reference form](../messaging/README.md#running-locally).
249+
248250
These imports grant no access. Messaging still checks the connection's caller, sender profile
249251
and template at request time. The [earlier appointment alert](examples/earlier-appointment-alerts/README.md)
250252
shows both imports alongside their owning projects.

‎products/messaging/README.md‎

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -271,6 +271,10 @@ value as `dataSchema`. The export is separate from the immutable
271271
package inputs and never changes the package digest; an existing output file
272272
is refused rather than overwritten.
273273

274+
Use local JSON Pointer references, such as `#/$defs/name`, in template data
275+
schemas. The current schema validator does not support named anchors or dynamic
276+
references.
277+
274278
`--data` names a JSON file, read relative to the directory the command runs
275279
in like any other relative path; each template version's `sample.json`
276280
serves. `messagingctl plan` and `status` use the runtime credential in

‎products/platform/conformance/yaml/expected-failures.yaml‎

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,8 @@ unreachedFormats:
5555
reason: syntax json; the corpus mutates YAML text
5656
- format: messaging/dev-state
5757
reason: syntax json; the corpus mutates YAML text
58+
- format: messaging/template-contracts
59+
reason: syntax json; the corpus mutates YAML text
5860
- format: platform/thunderid-session
5961
reason: syntax json; the corpus mutates YAML text
6062
inapplicableCases: []

0 commit comments

Comments
 (0)