@carecard/jwt-read 3.28.0 → 3.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -54,30 +54,79 @@ Always publish packages in this order, one repository at a time:
54
54
  5. `@carecard/telemetry`
55
55
 
56
56
  Publish by pushing the package release branch, creating or reusing a pull
57
- request into `development`, marking it ready, waiting for checks, squash-merging
57
+ request into `main`, marking it ready, waiting for checks, squash-merging
58
58
  with administrator privileges, and verifying npm publication with:
59
59
 
60
60
  ```sh
61
61
  npm view <package-name>@<target-version> version
62
62
  ```
63
63
 
64
- The package GitHub workflow publishes automatically from `development`. Do not
65
- create a `main` merge unless the user explicitly asks for it.
64
+ The package GitHub workflows accept pushes to `main` and `development` and
65
+ publish an unpublished version. Use the `main` squash merge as the release
66
+ path and verify npm publication before continuing. Subsequent development
67
+ synchronization must reuse the same version; it is not a second release.
68
+
69
+ ## Default Git Policy
70
+
71
+ Apply these defaults unless the user explicitly specifies otherwise. The
72
+ prohibition on deleting or force-pushing `main` always applies.
73
+
74
+ 1. Use `main` as the PR base and freshly fetched `origin/main` as the source of
75
+ truth. `origin/HEAD`, a stale local `main`, and the presence of `development`
76
+ do not change this default. If remote `main` is missing or cannot be fetched,
77
+ report the blocker instead of selecting another base.
78
+ 2. At task start, fetch `origin/main`, then create new work from that commit or
79
+ rebase the existing working branch onto it when needed. Honor an explicit
80
+ working-branch instruction; it changes branch selection, not freshness.
81
+ 3. Fetch again before every source-branch push. Rebase when the working branch
82
+ does not already contain the latest `origin/main`; a clean mergeability
83
+ check is not proof that rebasing is unnecessary. If it already contains that
84
+ commit, no rebase is needed. The direct `development` replacement below is a
85
+ ref synchronization, not a source-branch rebase.
86
+ 4. Squash-merge into remote `main` after the applicable validation passes.
87
+ Administrator privileges may be used to merge without GitHub reviews; they
88
+ do not authorize bypassing required checks. Verify the merge, then delete
89
+ the merged source branch remotely and locally.
90
+ 5. Fetch the latest remote `main` after merging and fast-forward local `main`
91
+ to that commit. Preserve divergent local work and report a blocked update
92
+ rather than discarding it.
93
+ 6. Replace branches named exactly `development`, locally and remotely, with
94
+ the latest remote `main` commit. Use an explicit, observed-commit
95
+ `--force-with-lease` for a non-fast-forward remote update. Create a missing
96
+ counterpart when local or remote `development` exists; leave repositories
97
+ with neither unchanged. If `development` was the merged source, recreate
98
+ it from the new `main` after deleting it. Other working branches are not
99
+ development synchronization targets.
100
+ 7. Never delete local or remote `main`, and never force-push to remote `main`,
101
+ including with `--force-with-lease`, a forced refspec, or a mirror push.
102
+ Check the exact destination ref before every deletion or forced update.
103
+
104
+ Fetches needed to establish a fresh `origin/main` at task start and before a
105
+ source-branch push are authorized without a separate approval question. Commits,
106
+ pushes, PR mutations, and branch cleanup require an authorized task; a request
107
+ for local work alone does not authorize publication. An authorized squash merge
108
+ into `main` includes the merged-source cleanup, local `main` update, and
109
+ `development` synchronization below unless the user explicitly says otherwise.
110
+ Never delete local or remote `main`, or force-push to remote `main`, including
111
+ with `--force-with-lease`.
66
112
 
67
113
  ## Deferred Package Push
68
114
 
69
115
  Commit coordinated version and dependency updates locally as the release sequence
70
116
  progresses. Do not push a `pkg-*` release branch until that package is the next
71
- package being published by merge into `development`.
117
+ package being published by merge into `main`.
72
118
 
73
119
  Immediately before each package's publishing turn:
74
120
 
75
121
  1. Verify the repository is on the intended release branch and has a clean
76
122
  working tree.
77
123
  2. Run required validation and every direct `.husky` script for that repository.
78
- 3. Push that package's release branch.
79
- 4. Create or reuse the pull request into `development`, merge it, and wait for
80
- npm publication before continuing to dependency fanout.
124
+ 3. Fetch `origin/main` again, rebase the release branch when it does not already
125
+ contain that commit, and push with hooks enabled. Use an explicit observed-commit
126
+ lease if a rebase requires rewriting an already-pushed source branch.
127
+ 4. Create or reuse the pull request into `main`, merge it, and wait for
128
+ npm publication before continuing to dependency fanout. Complete merged-source
129
+ cleanup and main/development synchronization under the default Git policy.
81
130
 
82
131
  ## Dependency Fanout
83
132
 
package/AGENTS.md CHANGED
@@ -1,4 +1,16 @@
1
- # Codex Instructions
1
+ # Agent Instructions
2
+
3
+ ## Mandatory startup for every agent
4
+
5
+ Every agent, including Codex, Claude, other assistants, and delegated agents,
6
+ must read and follow [carecard-must-do](.agents/skills/carecard-must-do/SKILL.md)
7
+ before beginning or resuming any task. This includes planning, questions,
8
+ read-only investigation, coding, review, documentation, and validation.
9
+
10
+ Then load the [repository engineering standards](.agents/skills/pkg-jwt-read-coding-standards-and-best-practices/SKILL.md)
11
+ and the specialist skills relevant to the task.
12
+ An agent without automatic skill discovery must open the skill explicitly;
13
+ the requirement applies regardless of the agent platform.
2
14
 
3
15
  ## Non-negotiable Codex banked-reset requirement
4
16
 
package/CLAUDE.md ADDED
@@ -0,0 +1,43 @@
1
+ # Repository Agent Instructions
2
+
3
+ ## Mandatory startup for every agent
4
+
5
+ Every agent, including Codex, Claude, other assistants, and delegated agents,
6
+ must read and follow [carecard-must-do](.agents/skills/carecard-must-do/SKILL.md)
7
+ before beginning or resuming any task. This includes planning, questions,
8
+ read-only investigation, coding, review, documentation, and validation.
9
+
10
+ Then load the [repository engineering standards](.agents/skills/pkg-jwt-read-coding-standards-and-best-practices/SKILL.md)
11
+ and the specialist skills relevant to the task.
12
+ An agent without automatic skill discovery must open the skill explicitly;
13
+ the requirement applies regardless of the agent platform.
14
+
15
+ Also read [AGENTS.md](AGENTS.md) for the full repository instructions.
16
+
17
+ ## Existing repository isolation contract
18
+
19
+ Non-negotiable repository isolation rule: Every repository must run its Husky
20
+ hooks and tests using only files, code, fixtures, dependencies, and services
21
+ contained within that repository. Tests and Husky scripts must not import,
22
+ require, read, execute, or otherwise depend on sibling repositories or paths
23
+ outside the repository root. app-e2e-tests is the only exception because
24
+ cross-repository end-to-end testing is its explicit responsibility.
25
+
26
+ ## Existing test-preservation policy
27
+
28
+ The TDD and validation requirements are non-negotiable and cannot be
29
+ overridden. The separate pre-existing-test protection still requires the
30
+ user's fresh, explicit permission for each exact proposed test modification.
31
+
32
+ A pre-existing test—defined as any test present before work on the current task
33
+ begins—must not be deleted, disabled, skipped, weakened, excluded from execution,
34
+ or otherwise removed. A pre-existing test must not be modified without the
35
+ user's explicit approval for the exact proposed change. If changing a
36
+ pre-existing test is believed necessary, stop before making the change and
37
+ request approval. The request must identify every affected test, describe the
38
+ precise proposed modification, provide detailed technical justification, and
39
+ explain all known or reasonably foreseeable regression risks. Until approval is
40
+ granted, leave every pre-existing test unchanged.
41
+
42
+ Also apply [$carecard-workspace-standards](.agents/skills/carecard-workspace-standards/SKILL.md)
43
+ for the mandatory TDD and code organization rules.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@carecard/jwt-read",
3
- "version": "3.28.0",
3
+ "version": "3.29.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "https://github.com/CareCard-ca/pkg-jwt-read.git"
@@ -50,15 +50,15 @@
50
50
  "typescript": "6.0.3"
51
51
  },
52
52
  "dependencies": {
53
- "@carecard/auth-util": "3.28.0",
54
- "@carecard/common-util": "3.28.0",
55
- "@carecard/validate": "3.28.0"
53
+ "@carecard/auth-util": "3.29.0",
54
+ "@carecard/common-util": "3.29.0",
55
+ "@carecard/validate": "3.29.0"
56
56
  },
57
57
  "overrides": {
58
58
  "diff": "8.0.4",
59
59
  "brace-expansion": "5.0.9",
60
60
  "minimatch": "10.2.6",
61
61
  "serialize-javascript": "7.0.5",
62
- "js-yaml": "4.3.1"
62
+ "js-yaml": "4.3.2"
63
63
  }
64
64
  }