@airmark/quiver 0.32.2 → 0.34.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.
- package/README.md +63 -21
- package/package.json +9 -7
- package/quills/af4141/0.1.0/Quill.yaml +4 -13
- package/quills/af4141/0.1.0/example.md +53 -0
- package/quills/afmc_moa/0.0.1/Quill.yaml +39 -62
- package/quills/afmc_moa/0.0.1/example.md +114 -0
- package/quills/afmc_moa/0.0.1/packages/typst-afmc-moa/src/config.typ +1 -1
- package/quills/classic_resume/0.0.1/Quill.yaml +281 -0
- package/quills/classic_resume/0.0.1/example.md +111 -0
- package/quills/classic_resume/0.0.1/packages/ttq-classic-resume/LICENSE +21 -0
- package/quills/classic_resume/0.0.1/packages/ttq-classic-resume/fonts/EBGaramond/EBGaramond-Bold.ttf +0 -0
- package/quills/classic_resume/0.0.1/packages/ttq-classic-resume/fonts/EBGaramond/EBGaramond-BoldItalic.ttf +0 -0
- package/quills/classic_resume/0.0.1/packages/ttq-classic-resume/fonts/EBGaramond/EBGaramond-Italic.ttf +0 -0
- package/quills/classic_resume/0.0.1/packages/ttq-classic-resume/fonts/EBGaramond/EBGaramond-Regular.ttf +0 -0
- package/quills/classic_resume/0.0.1/packages/ttq-classic-resume/fonts/EBGaramond/OFL.txt +94 -0
- package/quills/classic_resume/0.0.1/packages/ttq-classic-resume/src/components.typ +214 -0
- package/quills/classic_resume/0.0.1/packages/ttq-classic-resume/src/config.typ +61 -0
- package/quills/classic_resume/0.0.1/packages/ttq-classic-resume/src/layout.typ +86 -0
- package/quills/classic_resume/0.0.1/packages/ttq-classic-resume/src/lib.typ +7 -0
- package/quills/classic_resume/0.0.1/packages/ttq-classic-resume/src/util.typ +37 -0
- package/quills/classic_resume/0.0.1/packages/ttq-classic-resume/typst.toml +26 -0
- package/quills/classic_resume/0.0.1/plate.typ +143 -0
- package/quills/cyber_ribbon_chart/0.0.1/Quill.yaml +327 -0
- package/quills/cyber_ribbon_chart/0.0.1/example.md +55 -0
- package/quills/cyber_ribbon_chart/0.0.1/plate.typ +609 -0
- package/quills/daf1206/0.1.0/Quill.yaml +15 -18
- package/quills/daf1206/0.1.0/example.md +55 -0
- package/quills/daf4392/0.1.0/Quill.yaml +16 -7
- package/quills/daf4392/0.1.0/example.md +51 -0
- package/quills/daf4392/0.1.0/plate.typ +2 -2
- package/quills/usaf_letter/0.1.0/Quill.yaml +179 -0
- package/quills/usaf_letter/0.1.0/assets/dod_seal.png +0 -0
- package/quills/usaf_letter/0.1.0/assets/dow_seal.png +0 -0
- package/quills/usaf_letter/0.1.0/example.md +35 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/.gitignore +7 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/LICENSE +201 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/fonts/CopperplateCC/CopperplateCC-Bold.otf +0 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/fonts/CopperplateCC/LICENSE.md +79 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/fonts/LiberationMono/LICENSE +102 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/fonts/LiberationMono/LiberationMono-Regular.ttf +0 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/fonts/NimbusRomanNo9L/GNU General Public License.txt +340 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/fonts/NimbusRomanNo9L/NimbusRomNo9L-Med.otf +0 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/fonts/NimbusRomanNo9L/NimbusRomNo9L-MedIta.otf +0 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/fonts/NimbusRomanNo9L/NimbusRomNo9L-Reg.otf +0 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/fonts/NimbusRomanNo9L/NimbusRomNo9L-RegIta.otf +0 -0
- package/quills/{usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/fonts/Cinzel/LICENSE → usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/fonts/SpectralSC/OFL.txt} +2 -2
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/fonts/SpectralSC/SpectralSC-Italic.ttf +0 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/fonts/SpectralSC/SpectralSC-Regular.ttf +0 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/src/backmatter.typ +32 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/src/config.typ +45 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/src/frontmatter.typ +226 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/src/lib.typ +35 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/src/mainmatter.typ +140 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/src/primitives.typ +544 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/src/utils.typ +334 -0
- package/quills/usaf_letter/0.1.0/packages/tonguetoquill-usaf-letter/typst.toml +22 -0
- package/quills/usaf_letter/0.1.0/plate.typ +121 -0
- package/quills/usaf_memo/0.2.0/Quill.yaml +8 -41
- package/quills/usaf_memo/0.2.0/example.md +45 -0
- package/quills/usaf_memo/0.2.0/packages/tonguetoquill-usaf-memo/LICENSE +201 -21
- package/quills/usaf_memo/0.2.0/packages/tonguetoquill-usaf-memo/typst.toml +1 -1
- package/quills/usaf_memo/0.3.0/Quill.yaml +51 -69
- package/quills/usaf_memo/0.3.0/example.md +48 -0
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/LICENSE +201 -21
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/fonts/SpectralSC/OFL.txt +93 -0
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/fonts/SpectralSC/SpectralSC-Italic.ttf +0 -0
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/fonts/SpectralSC/SpectralSC-Regular.ttf +0 -0
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/src/backmatter.typ +29 -17
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/src/body.typ +97 -126
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/src/config.typ +12 -45
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/src/frontmatter.typ +81 -87
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/src/indorsement.typ +58 -66
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/src/lib.typ +14 -36
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/src/mainmatter.typ +47 -19
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/src/primitives.typ +158 -111
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/src/utils.typ +41 -141
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/typst.toml +3 -8
- package/quills/usaf_memo/0.3.0/plate.typ +78 -85
- package/templates/af4141.md +23 -0
- package/templates/appointment_letter.md +58 -0
- package/templates/daf1206.md +23 -0
- package/templates/daf4392.md +34 -0
- package/templates/deros_extension.md +40 -0
- package/templates/pass_request.md +48 -0
- package/templates/rebuttal.md +63 -0
- package/templates/templates.json +65 -0
- package/templates/usaf_template.md +30 -0
- package/templates/ussf_template.md +30 -0
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/fonts/Cinzel/Cinzel[wght].ttf +0 -0
- package/quills/usaf_memo/0.3.0/packages/tonguetoquill-usaf-memo/fonts/CopperplateCC/CopperplateCC-Heavy.otf +0 -0
package/README.md
CHANGED
|
@@ -7,14 +7,17 @@ and aligned to the current Quillmark spec.
|
|
|
7
7
|
|
|
8
8
|
## Contents
|
|
9
9
|
|
|
10
|
-
| Quill
|
|
11
|
-
|
|
12
|
-
| `usaf_memo`
|
|
13
|
-
| `usaf_memo`
|
|
14
|
-
| `
|
|
15
|
-
| `
|
|
16
|
-
| `
|
|
17
|
-
| `
|
|
10
|
+
| Quill | Version | Description |
|
|
11
|
+
|----------------------|---------|----------------------------------------------------------------------------------|
|
|
12
|
+
| `usaf_memo` | 0.3.0 | USAF / DAF Official Memorandum (AFH 33-337) |
|
|
13
|
+
| `usaf_memo` | 0.2.0 | Previous release, retained so documents pinned to `@0.2` keep resolving |
|
|
14
|
+
| `usaf_letter` | 0.1.0 | USAF / DAF Personal Letter (AFH 33-337) |
|
|
15
|
+
| `af4141` | 0.1.0 | AF Form 4141 — Individual's Record of Duties and Experience (Ground Environment) |
|
|
16
|
+
| `daf1206` | 0.1.0 | DAF Form 1206 — Nomination for Award |
|
|
17
|
+
| `daf4392` | 0.1.0 | DAF Form 4392 — Pre-Departure Safety Briefing (Page 2) |
|
|
18
|
+
| `afmc_moa` | 0.0.1 | DoD Memorandum of Agreement (DoDI 4000.19) |
|
|
19
|
+
| `classic_resume` | 0.0.1 | Classic single-page resume |
|
|
20
|
+
| `cyber_ribbon_chart` | 0.0.1 | 17X Cyber Operations Officer ribbon chart and career vector planner |
|
|
18
21
|
|
|
19
22
|
## Install
|
|
20
23
|
|
|
@@ -22,8 +25,8 @@ and aligned to the current Quillmark spec.
|
|
|
22
25
|
npm install @airmark/quiver @quillmark/quiver @quillmark/wasm
|
|
23
26
|
```
|
|
24
27
|
|
|
25
|
-
This package ships
|
|
26
|
-
exposes no JavaScript API. Loading is `@quillmark/quiver`'s, rendering is
|
|
28
|
+
This package ships the source-quiver assets (`Quiver.yaml` + `quills/`) and the
|
|
29
|
+
official [templates](#templates), and exposes no JavaScript API. Loading is `@quillmark/quiver`'s, rendering is
|
|
27
30
|
`@quillmark/wasm`'s.
|
|
28
31
|
|
|
29
32
|
## Usage
|
|
@@ -91,11 +94,32 @@ quills/
|
|
|
91
94
|
<name>/
|
|
92
95
|
<x.y.z>/
|
|
93
96
|
Quill.yaml
|
|
97
|
+
example.md
|
|
94
98
|
plate.typ
|
|
95
99
|
assets/
|
|
96
100
|
packages/
|
|
101
|
+
templates/
|
|
102
|
+
templates.json
|
|
103
|
+
<file>.md
|
|
97
104
|
```
|
|
98
105
|
|
|
106
|
+
## Templates
|
|
107
|
+
|
|
108
|
+
`templates/` holds the official starter documents Tongue to Quill offers in its
|
|
109
|
+
template library. They sit beside the quiver rather than inside it: the quiver
|
|
110
|
+
loaders never read them, and a consumer reaches them as files, through
|
|
111
|
+
`@airmark/quiver/templates/templates.json` and the Markdown it names. Each entry
|
|
112
|
+
is `{ id, name, description, file, tags }`, and every listed template is live.
|
|
113
|
+
|
|
114
|
+
An entry's `id` is permanent. Tongue to Quill derives the template's row id and
|
|
115
|
+
its shareable short code from it, so renaming one retires the old template (its
|
|
116
|
+
stars and its short code with it) and publishes a new one. Removing an entry
|
|
117
|
+
retires it the same way.
|
|
118
|
+
|
|
119
|
+
`npm test` renders every template against this quiver after `quillkit test`, and
|
|
120
|
+
a warning fails it as an error does, so a quill change that breaks a template
|
|
121
|
+
fails here rather than on the app's build.
|
|
122
|
+
|
|
99
123
|
## Working on a quill
|
|
100
124
|
|
|
101
125
|
Two verbs, and they answer different questions.
|
|
@@ -106,23 +130,27 @@ this collection's own `node_modules`, so the versions pinned here are the format
|
|
|
106
130
|
the quiver is packed in and the wasm the gate renders through.
|
|
107
131
|
|
|
108
132
|
**Does it work?** `quillkit test` loads the collection with `fromDir`, compiles
|
|
109
|
-
every quill, and renders each one's
|
|
110
|
-
|
|
111
|
-
|
|
133
|
+
every quill, and renders each one's seed, every field absent but what a card
|
|
134
|
+
kind's `seed:` writes and rendering its `default:` or its blank, and its
|
|
135
|
+
`example.md`, one filled-in page of made-up values. `npm test` then fails a
|
|
136
|
+
quill that ships no example or whose example warns, and a template that warns.
|
|
137
|
+
It is the gate CI runs, so a validation failure surfaces here rather than on a
|
|
138
|
+
consumer's build:
|
|
112
139
|
|
|
113
140
|
```bash
|
|
114
141
|
npm install
|
|
115
142
|
npm test
|
|
116
143
|
```
|
|
117
144
|
|
|
118
|
-
The gate renders
|
|
119
|
-
|
|
145
|
+
The gate renders one answer per quill, so a page with a long list or a
|
|
146
|
+
wrapping value in it is a design fixture's to exercise (`design/`).
|
|
120
147
|
|
|
121
148
|
**What is it like to use?** `npm run dev` is `quillkit studio`: it packs this
|
|
122
149
|
quiver, serves the studio client over it, and repacks on every save — pick a
|
|
123
|
-
quill, edit
|
|
124
|
-
|
|
125
|
-
|
|
150
|
+
quill, edit its example (or, with **Examples** off, its seed), or open one
|
|
151
|
+
of the official templates from **Templates…**, watch it paint, read the
|
|
152
|
+
diagnostics. The client is quillkit's own, so there is nothing to install for it
|
|
153
|
+
and nothing to keep in step.
|
|
126
154
|
|
|
127
155
|
Reload to pick up a repack. Editing a quill into an invalid state is not a
|
|
128
156
|
failure of the loop: it packs, and the client says what is wrong with that quill
|
|
@@ -134,7 +162,10 @@ wasm it was built against, and nothing at runtime reconciles the two. The gate
|
|
|
134
162
|
is authoritative, studio is advisory.
|
|
135
163
|
|
|
136
164
|
`npm run site` writes the arrangement a deploy serves into `site/` — the client
|
|
137
|
-
at the root, a built quiver at `quiver/` beneath it — without serving it.
|
|
165
|
+
at the root, a built quiver at `quiver/` beneath it — without serving it. It
|
|
166
|
+
passes `--drafts`, so the `0.0.x` prototypes are packed beside the releases, and
|
|
167
|
+
`--templates`, so every deploy previews them and the templates as `npm run dev`
|
|
168
|
+
does. CI
|
|
138
169
|
uploads that on every run, so a pull request — a fork's included — is reviewed
|
|
139
170
|
by downloading the artifact and serving the directory.
|
|
140
171
|
|
|
@@ -142,7 +173,18 @@ by downloading the artifact and serving the directory.
|
|
|
142
173
|
that same command and keeps the deploy here: nothing outside this repository
|
|
143
174
|
holds `pages: write`.
|
|
144
175
|
|
|
176
|
+
`vercel.json` deploys the same layout to Vercel, where a pull request gets a
|
|
177
|
+
preview URL instead of an artifact to download. It carries the build, the output
|
|
178
|
+
directory and the one cache rule a host owes this layout — `assets/*` immutable,
|
|
179
|
+
which is the engine, and everything else already right by default. Importing the
|
|
180
|
+
repository is the rest of the setup. Both deploys run off `main` and neither
|
|
181
|
+
knows about the other.
|
|
182
|
+
|
|
145
183
|
## License
|
|
146
184
|
|
|
147
|
-
Apache-2.0
|
|
148
|
-
`
|
|
185
|
+
Apache-2.0, the quill packages under `quills/` included, except
|
|
186
|
+
`classic_resume`'s `ttq-classic-resume`, which is MIT. Two things a quill
|
|
187
|
+
carries are not the project's to license: the fonts its package bundles, which
|
|
188
|
+
keep their own upstream terms — see the `packages/` directory inside each quill
|
|
189
|
+
— and the DoD and DoW seals under `quills/*/*/assets/`, which are US
|
|
190
|
+
Government insignia and whose use is governed as such.
|
package/package.json
CHANGED
|
@@ -1,29 +1,31 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@airmark/quiver",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.34.0",
|
|
4
4
|
"description": "Airmark Quiver — Air Force and DAF document Quills for Quillmark.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
7
7
|
"./Quiver.yaml": "./Quiver.yaml",
|
|
8
8
|
"./quills/*": "./quills/*",
|
|
9
|
+
"./templates/*": "./templates/*",
|
|
9
10
|
"./package.json": "./package.json"
|
|
10
11
|
},
|
|
11
12
|
"files": [
|
|
12
13
|
"quills",
|
|
14
|
+
"templates",
|
|
13
15
|
"Quiver.yaml"
|
|
14
16
|
],
|
|
15
17
|
"engines": {
|
|
16
18
|
"node": ">=24"
|
|
17
19
|
},
|
|
18
20
|
"devDependencies": {
|
|
19
|
-
"@quillmark/quiver": "0.
|
|
20
|
-
"@quillmark/wasm": "^0.
|
|
21
|
-
"quillkit": "0.
|
|
21
|
+
"@quillmark/quiver": "0.33.0",
|
|
22
|
+
"@quillmark/wasm": "^0.121.0",
|
|
23
|
+
"quillkit": "0.13.0"
|
|
22
24
|
},
|
|
23
25
|
"scripts": {
|
|
24
|
-
"test": "quillkit test",
|
|
25
|
-
"site": "quillkit site --out site",
|
|
26
|
-
"dev": "quillkit studio"
|
|
26
|
+
"test": "quillkit test && node scripts/check-examples.mjs && node scripts/check-templates.mjs",
|
|
27
|
+
"site": "quillkit site --out site --drafts --templates templates",
|
|
28
|
+
"dev": "quillkit studio --templates templates"
|
|
27
29
|
},
|
|
28
30
|
"keywords": [
|
|
29
31
|
"quillmark",
|
|
@@ -14,13 +14,11 @@ main:
|
|
|
14
14
|
name:
|
|
15
15
|
type: string
|
|
16
16
|
default: ""
|
|
17
|
-
example: "Doe, John A."
|
|
18
17
|
description: Full name in Last, First, Middle Initial format.
|
|
19
18
|
|
|
20
19
|
unit:
|
|
21
20
|
type: string
|
|
22
21
|
default: ""
|
|
23
|
-
example: 1st Air Control Squadron
|
|
24
22
|
description: Unit or organization of assignment.
|
|
25
23
|
|
|
26
24
|
grade:
|
|
@@ -35,9 +33,9 @@ main:
|
|
|
35
33
|
|
|
36
34
|
card_kinds:
|
|
37
35
|
experience:
|
|
36
|
+
title: Record of Experience
|
|
38
37
|
description: Each card represents one row in the Record of Experience table. Rows fill page 1 (up to 16 rows) then page 2 (up to 21 rows), for a maximum of 37 rows.
|
|
39
38
|
ui:
|
|
40
|
-
title: Record of Experience
|
|
41
39
|
groups: [record]
|
|
42
40
|
body:
|
|
43
41
|
enabled: false
|
|
@@ -45,7 +43,6 @@ card_kinds:
|
|
|
45
43
|
date:
|
|
46
44
|
type: date
|
|
47
45
|
default: ""
|
|
48
|
-
example: "2026-03-14"
|
|
49
46
|
ui:
|
|
50
47
|
group: record
|
|
51
48
|
description: Date of the action (column A).
|
|
@@ -53,7 +50,6 @@ card_kinds:
|
|
|
53
50
|
action:
|
|
54
51
|
type: string
|
|
55
52
|
default: ""
|
|
56
|
-
example: Upgraded to 5-level; assumed ADO duties
|
|
57
53
|
ui:
|
|
58
54
|
group: record
|
|
59
55
|
description: One type of action per line (column B).
|
|
@@ -61,16 +57,14 @@ card_kinds:
|
|
|
61
57
|
written_grade:
|
|
62
58
|
type: string
|
|
63
59
|
default: ""
|
|
64
|
-
example: "3"
|
|
65
60
|
ui:
|
|
66
61
|
group: record
|
|
67
62
|
compact: true
|
|
68
|
-
description: Written grade, if applicable (column C).
|
|
63
|
+
description: Written grade, as in 3, if applicable (column C).
|
|
69
64
|
|
|
70
65
|
written_grade_date:
|
|
71
66
|
type: date
|
|
72
67
|
default: ""
|
|
73
|
-
example: "2026-02-28"
|
|
74
68
|
ui:
|
|
75
69
|
group: record
|
|
76
70
|
compact: true
|
|
@@ -79,16 +73,14 @@ card_kinds:
|
|
|
79
73
|
positional_grade:
|
|
80
74
|
type: string
|
|
81
75
|
default: ""
|
|
82
|
-
example: "2"
|
|
83
76
|
ui:
|
|
84
77
|
group: record
|
|
85
78
|
compact: true
|
|
86
|
-
description: Positional grade, if applicable (column E).
|
|
79
|
+
description: Positional grade, as in 2, if applicable (column E).
|
|
87
80
|
|
|
88
81
|
positional_grade_date:
|
|
89
82
|
type: date
|
|
90
83
|
default: ""
|
|
91
|
-
example: "2026-03-14"
|
|
92
84
|
ui:
|
|
93
85
|
group: record
|
|
94
86
|
compact: true
|
|
@@ -97,7 +89,6 @@ card_kinds:
|
|
|
97
89
|
auth_or_remarks:
|
|
98
90
|
type: string
|
|
99
91
|
default: ""
|
|
100
|
-
example: "J.A.D."
|
|
101
92
|
ui:
|
|
102
93
|
group: record
|
|
103
|
-
description: Authentication or remarks entry (column G).
|
|
94
|
+
description: Authentication initials, as in J.A.D., or remarks entry (column G).
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
~~~
|
|
2
|
+
$quill: af4141
|
|
3
|
+
name: Doe, John A.
|
|
4
|
+
unit: 1st Air Control Squadron
|
|
5
|
+
grade: SSgt
|
|
6
|
+
commanders_auth: R.T.K., Lt Col
|
|
7
|
+
~~~
|
|
8
|
+
|
|
9
|
+
~~~
|
|
10
|
+
$kind: experience
|
|
11
|
+
date: 2025-06-02
|
|
12
|
+
action: Assigned to 1st Air Control Squadron
|
|
13
|
+
auth_or_remarks: M.S.P.
|
|
14
|
+
~~~
|
|
15
|
+
|
|
16
|
+
~~~
|
|
17
|
+
$kind: experience
|
|
18
|
+
date: 2025-09-19
|
|
19
|
+
action: Completed initial qualification training
|
|
20
|
+
auth_or_remarks: M.S.P.
|
|
21
|
+
~~~
|
|
22
|
+
|
|
23
|
+
~~~
|
|
24
|
+
$kind: experience
|
|
25
|
+
date: 2026-02-28
|
|
26
|
+
action: Initial evaluation, written phase
|
|
27
|
+
written_grade: "3"
|
|
28
|
+
written_grade_date: 2026-02-28
|
|
29
|
+
auth_or_remarks: L.E.W.
|
|
30
|
+
~~~
|
|
31
|
+
|
|
32
|
+
~~~
|
|
33
|
+
$kind: experience
|
|
34
|
+
date: 2026-03-14
|
|
35
|
+
action: Initial evaluation, positional phase
|
|
36
|
+
positional_grade: "2"
|
|
37
|
+
positional_grade_date: 2026-03-14
|
|
38
|
+
auth_or_remarks: L.E.W.
|
|
39
|
+
~~~
|
|
40
|
+
|
|
41
|
+
~~~
|
|
42
|
+
$kind: experience
|
|
43
|
+
date: 2026-03-14
|
|
44
|
+
action: Upgraded to 5-level
|
|
45
|
+
auth_or_remarks: R.T.K.
|
|
46
|
+
~~~
|
|
47
|
+
|
|
48
|
+
~~~
|
|
49
|
+
$kind: experience
|
|
50
|
+
date: 2026-03-16
|
|
51
|
+
action: Assumed ADO duties
|
|
52
|
+
auth_or_remarks: R.T.K.
|
|
53
|
+
~~~
|
|
@@ -16,7 +16,6 @@ main:
|
|
|
16
16
|
first_party_name:
|
|
17
17
|
type: plaintext
|
|
18
18
|
inline: true
|
|
19
|
-
example: "[First Party Name and Acronym]"
|
|
20
19
|
ui:
|
|
21
20
|
group: parties
|
|
22
21
|
description: "Full organization name and acronym of the first party (the MOA's proponent). Printed as 'THE [FIRST PARTY]' in the title block and referenced throughout as '[the First Party]'."
|
|
@@ -24,7 +23,6 @@ main:
|
|
|
24
23
|
second_party_name:
|
|
25
24
|
type: plaintext
|
|
26
25
|
inline: true
|
|
27
|
-
example: "[Second Party Name and Acronym]"
|
|
28
26
|
ui:
|
|
29
27
|
group: parties
|
|
30
28
|
description: "Full organization name and acronym of the second party. Printed as 'THE [SECOND PARTY]' in the title block."
|
|
@@ -40,7 +38,6 @@ main:
|
|
|
40
38
|
subject:
|
|
41
39
|
type: plaintext
|
|
42
40
|
inline: true
|
|
43
|
-
example: "[Insert Subject]"
|
|
44
41
|
ui:
|
|
45
42
|
group: parties
|
|
46
43
|
description: "Subject of the agreement, printed in the title block ('FOR [SUBJECT]') and on the Attachment A cover if reimbursable."
|
|
@@ -48,7 +45,6 @@ main:
|
|
|
48
45
|
agreement_number:
|
|
49
46
|
type: plaintext
|
|
50
47
|
inline: true
|
|
51
|
-
example: "[Insert Agreement Number]"
|
|
52
48
|
ui:
|
|
53
49
|
group: parties
|
|
54
50
|
description: Unique agreement identification number, printed in the title block.
|
|
@@ -58,8 +54,6 @@ main:
|
|
|
58
54
|
items:
|
|
59
55
|
type: plaintext
|
|
60
56
|
default: []
|
|
61
|
-
example:
|
|
62
|
-
- "[Insert Second Party Mailing Address]"
|
|
63
57
|
ui:
|
|
64
58
|
group: correspondence
|
|
65
59
|
description: "Second Party's mailing address for MOA correspondence and notices. Also shown in the intro paragraph if second_party_is_non_government is true."
|
|
@@ -76,7 +70,6 @@ main:
|
|
|
76
70
|
type: richtext
|
|
77
71
|
inline: true
|
|
78
72
|
default: ""
|
|
79
|
-
example: "[Insert Reimbursable Support]"
|
|
80
73
|
ui:
|
|
81
74
|
group: financial_details
|
|
82
75
|
description: "Attachment A, item 1: description of the reimbursable support. Only used when reimbursable is true."
|
|
@@ -85,27 +78,24 @@ main:
|
|
|
85
78
|
type: plaintext
|
|
86
79
|
inline: true
|
|
87
80
|
default: ""
|
|
88
|
-
example: "$[Insert Estimated Amount]"
|
|
89
81
|
ui:
|
|
90
82
|
group: financial_details
|
|
91
83
|
compact: true
|
|
92
|
-
description: "Attachment A, item 2: estimated amount of funds to be reimbursed. Only used when reimbursable is true."
|
|
84
|
+
description: "Attachment A, item 2: estimated amount of funds to be reimbursed, as in $50,000. Only used when reimbursable is true."
|
|
93
85
|
|
|
94
86
|
appropriation_fy:
|
|
95
87
|
type: plaintext
|
|
96
88
|
inline: true
|
|
97
89
|
default: ""
|
|
98
|
-
example: "[Insert Appropriation FY]"
|
|
99
90
|
ui:
|
|
100
91
|
group: financial_details
|
|
101
92
|
compact: true
|
|
102
|
-
description: "Attachment A, item 2: appropriation fiscal year. Only used when reimbursable is true."
|
|
93
|
+
description: "Attachment A, item 2: appropriation fiscal year, printed after 'FY', as in 2027. Only used when reimbursable is true."
|
|
103
94
|
|
|
104
95
|
cost_center_provider:
|
|
105
96
|
type: plaintext
|
|
106
97
|
inline: true
|
|
107
98
|
default: ""
|
|
108
|
-
example: "[Insert Provider Cost Center Number]"
|
|
109
99
|
ui:
|
|
110
100
|
group: financial_details
|
|
111
101
|
compact: true
|
|
@@ -115,7 +105,6 @@ main:
|
|
|
115
105
|
type: plaintext
|
|
116
106
|
inline: true
|
|
117
107
|
default: ""
|
|
118
|
-
example: "[Insert Receiver Cost Center Number]"
|
|
119
108
|
ui:
|
|
120
109
|
group: financial_details
|
|
121
110
|
compact: true
|
|
@@ -125,7 +114,6 @@ main:
|
|
|
125
114
|
type: plaintext
|
|
126
115
|
inline: true
|
|
127
116
|
default: ""
|
|
128
|
-
example: "[Insert Provider Financial POC]"
|
|
129
117
|
ui:
|
|
130
118
|
group: financial_details
|
|
131
119
|
description: "Attachment A, item 4: provider's financial point of contact. Only used when reimbursable is true."
|
|
@@ -134,7 +122,6 @@ main:
|
|
|
134
122
|
type: plaintext
|
|
135
123
|
inline: true
|
|
136
124
|
default: ""
|
|
137
|
-
example: "[Insert Receiver Financial POC]"
|
|
138
125
|
ui:
|
|
139
126
|
group: financial_details
|
|
140
127
|
description: "Attachment A, item 4: receiver's financial point of contact. Only used when reimbursable is true."
|
|
@@ -143,7 +130,6 @@ main:
|
|
|
143
130
|
type: richtext
|
|
144
131
|
inline: true
|
|
145
132
|
default: ""
|
|
146
|
-
example: "[Insert Any Additional Financial Information]"
|
|
147
133
|
ui:
|
|
148
134
|
group: financial_details
|
|
149
135
|
description: "Attachment A, item 5: any other financial information required by DoD 7000.14-R or desired in the agreement. Only used when reimbursable is true."
|
|
@@ -151,7 +137,6 @@ main:
|
|
|
151
137
|
first_party_signatory:
|
|
152
138
|
type: plaintext
|
|
153
139
|
inline: true
|
|
154
|
-
example: "[First Party Signatory Name and Title]"
|
|
155
140
|
ui:
|
|
156
141
|
group: signatures
|
|
157
142
|
description: "Name and title of the First Party's approval authority, printed under the signature line."
|
|
@@ -159,7 +144,6 @@ main:
|
|
|
159
144
|
second_party_signatory:
|
|
160
145
|
type: plaintext
|
|
161
146
|
inline: true
|
|
162
|
-
example: "[Second Party Signatory Name and Title]"
|
|
163
147
|
ui:
|
|
164
148
|
group: signatures
|
|
165
149
|
description: "Name and title of the Second Party's approval authority, printed under the signature line."
|
|
@@ -173,35 +157,31 @@ main:
|
|
|
173
157
|
|
|
174
158
|
card_kinds:
|
|
175
159
|
background:
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
example: |
|
|
160
|
+
title: Background
|
|
161
|
+
description: "Background section (DoDI 4000.19 paragraph 1) explaining the circumstances leading to this MOA. The body opens with 'BACKGROUND:'. Optional: include it only to explain a need the purpose does not make self-evident, typically with another federal agency; between OSD or DoD Components it is normally omitted. Authored as its own card, but rendered inline as the body's numbered paragraphs — same chained decimal numbering as the rest of the body, no page break. Exactly one is expected; if more than one is supplied, only the first is used. Renders before authorities."
|
|
162
|
+
seed:
|
|
163
|
+
$body: |
|
|
181
164
|
BACKGROUND: [If there is a need to discuss background, do so here. Normally, there is no need to discuss the background or provide justification for the MOA, particularly if between OSD or DoD Components. Occasionally, however, there is a desire to explain the need for the MOA; particularly where it is not self-evident from the purpose or it is with another federal agency.]
|
|
182
165
|
|
|
183
166
|
authorities:
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
example: |
|
|
167
|
+
title: Authorities
|
|
168
|
+
description: "Authorities section citing the legal basis for this MOA. The body opens with 'AUTHORITIES:' and states the legal authority for the MOA, such as the Economy Act, and each Party's authorities. Another federal agency's own asserted authority is prefaced 'The [Party] asserts the following authority:'; DoD need not agree with it. Authored as its own card, but rendered inline as the body's numbered paragraphs — same chained decimal numbering as the rest of the body, no page break. Exactly one is expected; if more than one is supplied, only the first is used. Renders after background, before purpose_and_scope."
|
|
169
|
+
seed:
|
|
170
|
+
$body: |
|
|
189
171
|
AUTHORITIES: [State the legal authority upon which the reimbursable MOA is based, such as the Economy Act, or any other legal or significant authority that authorizes any such actions associated with this MOA. Discuss the authorities of the Parties here. If the other Party is another federal agency and insists on stating what it believes to be its own authority, preface that assertion with "The [Party] asserts the following authority:" The DoD has no obligation to agree with such assertions of authority by other federal agencies.]
|
|
190
172
|
|
|
191
173
|
purpose_and_scope:
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
example: |
|
|
174
|
+
title: Purpose and Scope
|
|
175
|
+
description: "Purpose and Scope section describing what this MOA establishes. The body opens with 'PURPOSE AND SCOPE:' and states the MOA's purpose and scope. Every MOA includes it. Authored as its own card, but rendered inline as the body's numbered paragraphs — same chained decimal numbering as the rest of the body, no page break. Exactly one is expected; if more than one is supplied, only the first is used. Renders after authorities, before responsibilities_of_the_parties."
|
|
176
|
+
seed:
|
|
177
|
+
$body: |
|
|
197
178
|
PURPOSE AND SCOPE: [State the purpose and the scope of the MOA here. Always use this paragraph.]
|
|
198
179
|
|
|
199
180
|
responsibilities_of_the_parties:
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
example: |
|
|
181
|
+
title: Responsibilities of the Parties
|
|
182
|
+
description: "Responsibilities of the Parties section listing each party's obligations under this MOA. The body opens with 'RESPONSIBILITIES OF THE PARTIES:', then a list item per Party ('The [First Party] will—', 'The [Second Party] will—', 'Both Parties will—'), each nesting every specific obligation of that Party. Authored as its own card, but rendered inline as the body's numbered paragraphs — same chained decimal numbering as the rest of the body, no page break. Exactly one is expected; if more than one is supplied, only the first is used. Renders after purpose_and_scope, before personnel."
|
|
183
|
+
seed:
|
|
184
|
+
$body: |
|
|
205
185
|
RESPONSIBILITIES OF THE PARTIES:
|
|
206
186
|
|
|
207
187
|
- The [First Party] will—
|
|
@@ -212,19 +192,17 @@ card_kinds:
|
|
|
212
192
|
- [insert as many responsibilities as necessary but ensure that they apply to both Parties]
|
|
213
193
|
|
|
214
194
|
personnel:
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
example: |
|
|
195
|
+
title: Personnel
|
|
196
|
+
description: "Personnel section describing each party's responsibility for its own personnel costs. The body opens with 'PERSONNEL:' and states each Party's responsibility for all costs of its personnel (pay and benefits, support, travel) and for their supervision and management, with the process for any shared supervision. Authored as its own card, but rendered inline as the body's numbered paragraphs — same chained decimal numbering as the rest of the body, no page break. Exactly one is expected; if more than one is supplied, only the first is used. Renders after responsibilities_of_the_parties, before general_provisions."
|
|
197
|
+
seed:
|
|
198
|
+
$body: |
|
|
220
199
|
PERSONNEL: [Explain each Party's responsibility for all costs of its personnel, including pay and benefits, support, and travel, if applicable to the agreement. Each Party is responsible for supervision and management of its personnel. For shared supervision or management, explain the process to accomplish that.]
|
|
221
200
|
|
|
222
201
|
general_provisions:
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
example: |
|
|
202
|
+
title: General Provisions
|
|
203
|
+
description: "General Provisions section covering points of contact, termination, expiration, and other standard MOA terms. The body opens with 'GENERAL PROVISIONS:', then a list of DoDI 4000.19's standard provisions, each led by its capitalized title: POINTS OF CONTACT (a primary and an alternate POC per Party, each with name, position, office, phone and email), CORRESPONDENCE, REVIEW OF AGREEMENT (a non-reimbursable MOA at least at mid-point, a reimbursable one annually for financial impacts), MODIFICATION OF AGREEMENT, DISPUTES, TERMINATION OF AGREEMENT (its days of written notice), TRANSFERABILITY, ENTIRE AGREEMENT, EFFECTIVE DATE, EXPIRATION DATE, NO THIRD PARTY BENEFICIARIES, SEVERABILITY and OTHER FEDERAL AGENCIES. CANCELLATION OR MODIFICATION OF PREVIOUS AGREEMENT, naming that agreement's subject, number and effective date, appears only when this MOA supersedes one. Authored as its own card, but rendered inline as the body's numbered paragraphs — same chained decimal numbering as the rest of the body, no page break. Exactly one is expected; if more than one is supplied, only the first is used. Renders after personnel, before financial_details."
|
|
204
|
+
seed:
|
|
205
|
+
$body: |
|
|
228
206
|
GENERAL PROVISIONS:
|
|
229
207
|
|
|
230
208
|
- POINTS OF CONTACT (POCS). The following POCs will be used by the Parties to communicate matters concerning this MOA. Each Party may change its POC upon reasonable notice to the other Party.
|
|
@@ -249,11 +227,10 @@ card_kinds:
|
|
|
249
227
|
- OTHER FEDERAL AGENCIES. This MOA does not bind any federal agency, other than the Parties, nor waive required compliance with any law or regulation.
|
|
250
228
|
|
|
251
229
|
financial_details:
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
example: |
|
|
230
|
+
title: Financial Details
|
|
231
|
+
description: "Financial Details section (DoDI 4000.19 paragraph 7) covering availability of funds, billing, payment, and Economy Act determination. The body opens with 'FINANCIAL DETAILS:'. A non-reimbursable MOA follows it with 'This MOA does not provide for reimbursement between the Parties.' A reimbursable one lists AVAILABILITY OF FUNDS, BILLING, PAYMENT OF BILLS, FINANCIAL SPECIFICS (referring to Attachment A and stating any allowance or advance payments) and ECONOMY ACT DETERMINATION AND FINDINGS (D&F). The D&F adds that the provider can render the support without jeopardizing its missions when the provider is an OSD or DoD Component, and that any required D&F is completed when a separate written one is required. Authored as its own card, but rendered inline as the body's numbered paragraphs — same chained decimal numbering as the rest of the body, no page break. Exactly one is expected; if more than one is supplied, only the first is used. Renders after general_provisions, before list_of_attachments."
|
|
232
|
+
seed:
|
|
233
|
+
$body: |
|
|
257
234
|
FINANCIAL DETAILS [include Attachment A in all reimbursable MOAs; if the MOA is not reimbursable add, "This MOA does not provide for reimbursement between the Parties"]:
|
|
258
235
|
|
|
259
236
|
- AVAILABILITY OF FUNDS. This MOA does not document the obligation of funds between the Parties. The obligation of funds by the Parties, resulting from this MOA, is subject to the availability of funds pursuant to the DoD Financial Management Regulation. No provision in this MOA will be interpreted to require obligation or payment of funds in violation of the Anti-Deficiency Act, Section 1341 of Title 31, United States Code.
|
|
@@ -263,27 +240,27 @@ card_kinds:
|
|
|
263
240
|
- ECONOMY ACT DETERMINATION AND FINDINGS (D&F). If the MOA is being entered into in accordance with Section 1535 of Title 31, United States Code (the Economy Act), both Parties agree that the requirements listed in Paragraph (a) of the Economy Act have been met. [Add the following sentence if the provider is an OSD or DoD Component] The provider has determined that the capabilities exist to render the requested support without jeopardizing its assigned missions. [Add the following sentence only if a separate, written Economy Act D&F is required.] Any required Economy Act D&F has been completed.
|
|
264
241
|
|
|
265
242
|
list_of_attachments:
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
example: |
|
|
243
|
+
title: List of Attachments
|
|
244
|
+
description: "List of Attachments section enumerating this MOA's attachments. The body opens with 'LIST OF ATTACHMENTS:', then a list item per attachment, as in 'Attachment A, Financial Details'. Authored as its own card, but rendered inline as the body's numbered paragraphs — same chained decimal numbering as the rest of the body, no page break. Exactly one is expected; if more than one is supplied, only the first is used. Renders last, after financial_details, immediately before the signature blocks."
|
|
245
|
+
seed:
|
|
246
|
+
$body: |
|
|
271
247
|
LIST OF ATTACHMENTS:
|
|
272
248
|
|
|
273
249
|
- [List each attachment here, e.g. "Attachment A, Financial Details".]
|
|
274
250
|
|
|
275
251
|
attachment:
|
|
252
|
+
title: Attachment
|
|
276
253
|
description: "A lettered attachment to the MOA, starting at Attachment B (Attachment A is reserved for the reimbursable financial-details page and is generated automatically when 'reimbursable' is true). Each card starts on its own page."
|
|
277
254
|
ui:
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
255
|
+
groups: [attachment]
|
|
256
|
+
seed:
|
|
257
|
+
title: "[Insert Attachment Title]"
|
|
258
|
+
$body: |
|
|
281
259
|
[Describe the attachment's content here.]
|
|
282
260
|
fields:
|
|
283
261
|
title:
|
|
284
262
|
type: plaintext
|
|
285
263
|
inline: true
|
|
286
|
-
example: "[Insert Attachment Title]"
|
|
287
264
|
ui:
|
|
288
265
|
group: attachment
|
|
289
266
|
description: "Subject of the attachment, printed on the cover line ('to [subject], [agreement_number] [title]')."
|