@dreamteamer/roles 0.0.0-stage → 0.1.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 CHANGED
@@ -1,3 +1,13 @@
1
- # Temporary Holding Version
1
+ # @dreamteamer/roles
2
2
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
3
+ The positions people hold — team leader, backend developer, product manager, QA engineer — as one
4
+ list the whole workspace shares. A person lists the roles they hold on `users.roles` (an overlay this
5
+ module adds to users), and each role lists its people back, generated. A role is a position, never a
6
+ task and never an area of ownership (that is `@dreamteamer/responsibilities`).
7
+
8
+ ```bash
9
+ npm install @dreamteamer/roles @dreamteamer/users
10
+ npx dreamteamer compile
11
+ ```
12
+
13
+ Until core 0.12.0 this shipped inside `@dreamteamer/core`; records stay in `data/roles/` under the same ids.
package/UPDATING.md ADDED
@@ -0,0 +1,19 @@
1
+ # Updating @dreamteamer/roles
2
+
3
+ One section per release, newest first. Each says what you have to **do** in a workspace that
4
+ installs this module; most of the time it is `dt compile`, then `dt check`.
5
+
6
+ ```bash
7
+ npm install @dreamteamer/roles@latest
8
+ npx dreamteamer compile
9
+ npx dreamteamer check
10
+ ```
11
+
12
+ ---
13
+
14
+ ## 0.1.0 — out of core, a package of its own
15
+
16
+ `roles` shipped inside `@dreamteamer/core` through 0.11; from core 0.12.0 core is a preset of the small
17
+ modules and this is one of them. The descriptor moved verbatim — the same fields, the same storage path
18
+ and the same id shape — so no record moves and nothing is migrated. A workspace that updates core gets
19
+ this package as a preset member; nothing to do but `dt compile`.
@@ -0,0 +1,64 @@
1
+ # roles — the positions people hold, as one list the whole workspace shares.
2
+ name: roles
3
+ description: >-
4
+ A position a person holds — team leader, backend developer, product manager, QA engineer. One record per role; a person lists the roles they hold on `users.roles`.
5
+ use_when: >-
6
+ a person's position is named — find or create the role here, then list it on the person's `roles`; asked "who are the backend developers", list users filtered by role
7
+ storage:
8
+ path: data/roles
9
+ format: md
10
+ suffix: role
11
+ ids:
12
+ from: '{{ name | slug }}'
13
+ pattern: ^[a-z0-9][a-z0-9-]*$
14
+ fields:
15
+ name:
16
+ type: string
17
+ required: true
18
+ description: The role as the workspace says it — "team leader", "backend developer".
19
+ description:
20
+ type: string
21
+ description: What the role covers, in one line.
22
+ users:
23
+ type: users
24
+ many: true
25
+ mirror_of: roles
26
+ description: GENERATED — who holds this role. Set `roles` on the user.
27
+ notes:
28
+ type: markdown
29
+ body: true
30
+ description: Expectations, scope, how the role is filled.
31
+ tags:
32
+ type: string
33
+ many: true
34
+ examples: ['onboarding', 'client:northwind']
35
+ pattern: ^[a-z0-9]+(-[a-z0-9]+)*(:[a-z0-9]+(-[a-z0-9]+)*)?$
36
+ description: Free labels, lowercase and hyphenated, optionally key:value with no space around the colon.
37
+ author:
38
+ type: string
39
+ examples: ['agents/claude-code', 'scripts/read-git@2']
40
+ pattern: '^(agents|scripts)/[a-z0-9][a-z0-9-]*(@[a-z0-9][a-z0-9./-]*)?$'
41
+ description: >-
42
+ Which agent or script wrote this record: `agents/<harness>`, or `scripts/<name>@<version>` for a reader. Absent when a person wrote it. The model, when it matters, goes in `creation_context`.
43
+ creation_context:
44
+ type: string
45
+ description: How and why this record came to be, in one line — and the reason whenever confidence is low.
46
+ source:
47
+ title: Information source
48
+ type: string
49
+ description: 'Where the INFORMATION came from, prefixed so it stays machine-readable: <collection>/<id> · file:<path> · url:<…> · migration:<id>.'
50
+ confidence:
51
+ type: string
52
+ default: normal
53
+ enum: [low, normal, high]
54
+ description: How much to trust this record. When low, the reason goes in creation_context — there is no separate note field.
55
+ display:
56
+ nav:
57
+ icon: symbol-class
58
+ list:
59
+ columns: [name, description, users]
60
+ form:
61
+ sections:
62
+ - title: Provenance
63
+ fields: [author, creation_context, source, confidence]
64
+ collapsed: true
@@ -0,0 +1,8 @@
1
+ # OVERLAY of users — the roles a person holds, so "who are the backend developers" is a filter.
2
+ name: users
3
+ overlay: true
4
+ fields:
5
+ roles:
6
+ type: roles
7
+ many: true
8
+ description: The positions they hold — `roles` records, one list the whole workspace shares.
package/package.json CHANGED
@@ -1,6 +1,32 @@
1
1
  {
2
- "name": "@dreamteamer/roles",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
6
- }
2
+ "name": "@dreamteamer/roles",
3
+ "version": "0.1.0",
4
+ "description": "The positions people hold — team leader, backend developer — as one shared list each person names on users.roles.",
5
+ "license": "Apache-2.0",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "git+https://github.com/dreamteamer/dreamteamer-modules.git",
9
+ "directory": "modules/roles"
10
+ },
11
+ "keywords": [
12
+ "dreamteamer",
13
+ "dreamteamer-module",
14
+ "roles"
15
+ ],
16
+ "files": [
17
+ "README.md",
18
+ "UPDATING.md",
19
+ "collections"
20
+ ],
21
+ "peerDependencies": {
22
+ "@dreamteamer/users": ">=0.3.0"
23
+ },
24
+ "dreamteamer": {
25
+ "title": "Roles",
26
+ "description": "`roles`: a position a person holds — team leader, backend developer, product manager, QA engineer — one record per role, and an overlay of `users` adding `roles`, so \"who are the backend developers\" is a filter and each role lists its people back. Depends on `users`.",
27
+ "engine": ">=0.48.0",
28
+ "dependencies": [
29
+ "@dreamteamer/users"
30
+ ]
31
+ }
32
+ }