diff --git a/WORK-RECORDS.md b/WORK-RECORDS.md index 6eb9e7a..13bc1a2 100644 --- a/WORK-RECORDS.md +++ b/WORK-RECORDS.md @@ -12,6 +12,7 @@ | workplan | INFO-WP-0019 | blocked | — | workplans/INFO-WP-0019-conformance-and-maintenance.md | | workplan | INFO-WP-0020 | finished | — | workplans/INFO-WP-0020-shared-evidence-model.md | | workplan | INFO-WP-0021 | finished | — | workplans/INFO-WP-0021-identity-model.md | +| workplan | INFO-WP-0022 | finished | — | workplans/INFO-WP-0022-social-collectives.md | | workplan | ITC-WP-0001 | finished | — | workplans/ITC-WP-0001-infospace-scaffold-and-seed-placement.md | | workplan | ITC-WP-0002 | finished | — | workplans/ITC-WP-0002-service-surface-cli-json-api.md | | workplan | ITC-WP-0003 | finished | — | workplans/ITC-WP-0003-validation-indexes-and-generated-views.md | @@ -45,6 +46,9 @@ | task | INFO-WP-0021-T01 | done | — | workplans/INFO-WP-0021-identity-model.md | | task | INFO-WP-0021-T02 | done | — | workplans/INFO-WP-0021-identity-model.md | | task | INFO-WP-0021-T03 | done | — | workplans/INFO-WP-0021-identity-model.md | +| task | INFO-WP-0022-T01 | done | — | workplans/INFO-WP-0022-social-collectives.md | +| task | INFO-WP-0022-T02 | done | — | workplans/INFO-WP-0022-social-collectives.md | +| task | INFO-WP-0022-T03 | done | — | workplans/INFO-WP-0022-social-collectives.md | | task | ITC-WP-0001-T01 | done | — | workplans/ITC-WP-0001-infospace-scaffold-and-seed-placement.md | | task | ITC-WP-0001-T02 | done | — | workplans/ITC-WP-0001-infospace-scaffold-and-seed-placement.md | | task | ITC-WP-0001-T03 | done | — | workplans/ITC-WP-0001-infospace-scaffold-and-seed-placement.md | diff --git a/canon.yaml b/canon.yaml index 8c5b0ac..507c0b5 100644 --- a/canon.yaml +++ b/canon.yaml @@ -1,7 +1,7 @@ repository: info-tech-canon title: InfoTechCanon status: service-baseline -version: 0.9.0 +version: 0.10.0 description: > An evolving, markdown-first canon for building interoperable, adaptable, and extensible information-processing systems. diff --git a/infospace/agent/briefs/model-organization.md b/infospace/agent/briefs/model-organization.md index 9629d6c..0703875 100644 --- a/infospace/agent/briefs/model-organization.md +++ b/infospace/agent/briefs/model-organization.md @@ -25,6 +25,8 @@ Imports and anchors: ## Owned Concepts +- `Community` +- `Household` - `InfoTechCanon Organization Model` ## Related Distinctions diff --git a/infospace/agent/retrieval-index.json b/infospace/agent/retrieval-index.json index 3929177..9fbc01a 100644 --- a/infospace/agent/retrieval-index.json +++ b/infospace/agent/retrieval-index.json @@ -1619,6 +1619,8 @@ ], "kind": "model", "owned_concepts": [ + "Community", + "Household", "InfoTechCanon Organization Model" ], "relationships": [ diff --git a/infospace/agent/retrieval-index.md b/infospace/agent/retrieval-index.md index bef2849..da0bc72 100644 --- a/infospace/agent/retrieval-index.md +++ b/infospace/agent/retrieval-index.md @@ -465,7 +465,7 @@ Items: **78** - Source path: `seeds/InfoTechCanonOrganizationModel_RC1_seed.md` - Summary: Domain model used by canon profiles and standards: InfoTechCanon Organization Model. - Imports and anchors: `kernel/itc-core`, `model/evidence`, `model/identity` -- Owned concepts: `InfoTechCanon Organization Model` +- Owned concepts: `Community`, `Household`, `InfoTechCanon Organization Model` ### InfoTechCanon Purpose And Demand Model Extension diff --git a/infospace/agent/retrieval-index.yaml b/infospace/agent/retrieval-index.yaml index db29879..a5ceab0 100644 --- a/infospace/agent/retrieval-index.yaml +++ b/infospace/agent/retrieval-index.yaml @@ -1028,6 +1028,8 @@ items: summary: 'Domain model used by canon profiles and standards: InfoTechCanon Organization Model.' owned_concepts: + - Community + - Household - InfoTechCanon Organization Model imports: - kernel/itc-core diff --git a/infospace/indexes/concept-ownership.yaml b/infospace/indexes/concept-ownership.yaml index f94d600..de7cacc 100644 --- a/infospace/indexes/concept-ownership.yaml +++ b/infospace/indexes/concept-ownership.yaml @@ -1,4 +1,4 @@ -concept_count: 158 +concept_count: 160 concepts: - concept: "Assimilation \u2014 EmissionCadenceDeclaration handover" owner: assimilation/emission-cadence @@ -340,6 +340,14 @@ concepts: owner: model/organization path: models/organization/InfoTechCanonOrganizationModel.md source: artifact_title +- concept: Community + owner: model/organization + path: models/organization/InfoTechCanonOrganizationModel.md + source: frontmatter.owned_concepts +- concept: Household + owner: model/organization + path: models/organization/InfoTechCanonOrganizationModel.md + source: frontmatter.owned_concepts - concept: InfoTechCanon Purpose And Demand Model Extension owner: model/purpose-demand-extension path: models/governance/InfoTechCanonPurposeDemandExtension.md diff --git a/infospace/kernel/InfoTechCanonKernelMap.md b/infospace/kernel/InfoTechCanonKernelMap.md index 81fb55d..f18c663 100644 --- a/infospace/kernel/InfoTechCanonKernelMap.md +++ b/infospace/kernel/InfoTechCanonKernelMap.md @@ -294,6 +294,8 @@ Network owns communication and reachability. Observability owns signals and runt |---|---| | Person | Organization | | Agent as organizational actor | Organization | +| Community | Organization; CollectiveActor subtype | +| Household | Organization; CollectiveActor subtype, distinct from Family | | Team | Organization | | Organization | Organization | | OrganizationalUnit | Organization | diff --git a/infospace/models/organization/InfoTechCanonOrganizationModel.md b/infospace/models/organization/InfoTechCanonOrganizationModel.md index f0f9902..f728183 100644 --- a/infospace/models/organization/InfoTechCanonOrganizationModel.md +++ b/infospace/models/organization/InfoTechCanonOrganizationModel.md @@ -1,9 +1,28 @@ +--- +id: itc-org:OrganizationModel +title: InfoTechCanon Organization Model +namespace: itc-org +status: RC1-seed +version: RC1-seed +# Incremental machine-readable ownership for the social extension; existing +# organization concepts retain their definitions and ownership declarations below. +owned_concepts: + - Community + - Household +social_collectives_extension: + status: draft + version: 0.1.0 + authority: CUST-ADR-006 R6 + workplan: INFO-WP-0022 +--- + # InfoTechCanon Organization Model **Short Name:** `ITC-ORG` **Document Status:** Seed Standard Release Candidate 1 **Version:** RC1-seed **Date:** 2026-05-22 +**Social collectives extension:** Draft 0.1.0, 2026-09-05 (CUST-ADR-006 R6). **Repository Context:** `info-tech-canon` **Document Type:** InfoTechCanon Domain Standard **Intended Audience:** Organization designers, enterprise architects, platform builders, governance designers, product owners, service owners, HR/people-ops modelers, project/program managers, security architects, knowledge-system builders, standards authors, and agentic tooling. @@ -14,6 +33,12 @@ The **InfoTechCanon Organization Model** defines a canonical seed model for representing organizations, organizational units, actors, memberships, roles, authority, responsibility, accountability, teams, operating structures, collaboration structures, and organizational viability patterns. +This model deliberately extends beyond enterprise structures into social +collectives: Community and Household are distinct CollectiveActor subtypes. +Shared participation or domestic life does not imply corporate structure, +legal authority, kinship, or an access-control grant. Family remains a separate +concept area under CFED-WP-0001-T13 and is not a CollectiveActor subtype here. + It exists to support the broader **InfoTechCanon** goal of building interoperable information-processing systems without forcing rigid organizational assumptions into every subsystem. This standard provides: @@ -172,6 +197,7 @@ A seed standard shall: This standard covers canonical representation of: - organizations, +- communities and households as distinct social collective actors, - organizational units, - teams, - groups, @@ -204,6 +230,7 @@ This standard covers canonical representation of: This standard does not fully define: - legal corporate structures in jurisdiction-specific detail, +- family/kinship modeling, guardianship determinations, or household legal-status rules, - employment law, - compensation and payroll, - full HR management, @@ -361,13 +388,14 @@ OrganizationEntity │ ├── HumanActor │ ├── NonHumanActor │ └── CollectiveActor +│ ├── Community +│ └── Household ├── StructureEntity │ ├── Organization │ ├── OrganizationalUnit │ ├── Team │ ├── Group │ ├── Committee -│ ├── Community │ ├── Network │ └── Collaboration ├── RoleEntity @@ -528,11 +556,72 @@ committee organization external supplier community +household working group ``` --- +## 10.5a Community + +A **Community** is a CollectiveActor formed around participation, affiliation, +shared interest, identity, or social interaction, with a recognizable collective +context. It can be informal, distributed, temporary, online or place-based. +Representation and responsibility arrangements must be recorded when relevant; +common interest alone does not imply shared authority or consent. + +Examples: a neighborhood participation community or an online mutual-learning +community. A mailing-list Group may support a Community, and a Team may carry +out work for it; neither the list nor the team is automatically the community. + +Record its participation basis, scope, membership arrangements and relevant +roles without inferring every participant's beliefs or sensitive attributes. +Imported identity relationships can express affiliation/following without +asserting Membership. A Community is not automatically an Organization with +corporate or administrative structure. + +## 10.5b Household + +A **Household** is a CollectiveActor organized around shared domestic living +arrangements and the coordination of household affairs. Record the applicable +context and time period; membership and arrangements can change. + +Shared domestic arrangements may include residence, day-to-day resources or +household responsibilities. A shared address alone is insufficient to infer one +Household: unrelated households can share premises, and an arrangement may span +locations. Model the actual asserted arrangement and its provenance rather than +using an address as an identity key. + +A Household is not a Family. People who are not kin can share a Household, and +family relationships can extend across households. Do not infer parenthood, +guardianship, dependency or authority from household Membership. Those structures +belong to the separately seeded Family area; no Family model is authored here. + +Household is also not a Tenant (an imported identity isolation/administrative +scope), Customer (a commercial role), Team (shared work) or Group (a collection +of actors). A consumer's account or billing grouping can refer to a household +without defining household membership or determining legal status. + +## 10.5c Social collective boundary cases (P4) + +| Case | Representation | +| --- | --- | +| An online community has a moderator team and a mailing list | Distinct Community, Team and Group linked by explicit relationships. | +| Two unrelated people coordinate a shared home | A Household can exist without a Family assertion. | +| Relatives live in separate domestic arrangements | Do not collapse their households into one based on kinship. | +| Multiple independent domestic units share an address | Address equality alone does not establish Household identity. | +| A household uses one application tenant | Household and imported Tenant remain separate. | +| Someone joins a community group | Group membership alone does not imply authority over the Community. | +| A household member is an adult | Membership and age do not infer guardianship or permission to act for others. | + +These are semantic representation cases, not statutory household eligibility or +family-law determinations. Collect only the information needed for a stated +consumer purpose, preserve relevant provenance, and avoid inferred sensitive +relationships. Community, Household, Team and Group remain distinct under donor +P4, adapted by accepted ADR-006 R6. T07 owns the donor corpus disposition. + +--- + ## 10.6 Organization An **Organization** is a structured collective actor with identity, purpose, boundaries, and some capacity for coordinated action. diff --git a/infospace/views/by-concept.md b/infospace/views/by-concept.md index 39534b1..258acd1 100644 --- a/infospace/views/by-concept.md +++ b/infospace/views/by-concept.md @@ -2,7 +2,7 @@ # By Concept -Concept count: **158** +Concept count: **160** | Concept | Owner | Source | | --- | --- | --- | @@ -91,6 +91,8 @@ Concept count: **158** | InfoTechCanon Network Model | `model/network` | `artifact_title` | | InfoTechCanon Observability Model | `model/observability` | `artifact_title` | | InfoTechCanon Organization Model | `model/organization` | `artifact_title` | +| Community | `model/organization` | `frontmatter.owned_concepts` | +| Household | `model/organization` | `frontmatter.owned_concepts` | | InfoTechCanon Purpose And Demand Model Extension | `model/purpose-demand-extension` | `artifact_title` | | Purpose | `model/purpose-demand-extension` | `frontmatter.owned_concepts` | | ConsumerPurpose | `model/purpose-demand-extension` | `frontmatter.owned_concepts` | diff --git a/tests/test_social_collectives.py b/tests/test_social_collectives.py new file mode 100644 index 0000000..136356e --- /dev/null +++ b/tests/test_social_collectives.py @@ -0,0 +1,15 @@ +from info_tech_canon.generation import concept_ownership +from info_tech_canon.service import load_context + + +def test_social_collectives_have_one_owner_and_family_is_not_a_subtype(): + context = load_context() + rows = concept_ownership(context)["concepts"] + for concept in ["Community", "Household"]: + assert {r["owner"] for r in rows if r["concept"] == concept} == {"model/organization"} + text = (context.infospace_root / "models/organization/InfoTechCanonOrganizationModel.md").read_text() + taxonomy = text.split("# 9. Root Organization Taxonomy", 1)[1].split("# 10.", 1)[0] + assert "CollectiveActor\n│ ├── Community\n│ └── Household" in taxonomy + assert taxonomy.count("Community") == 1 + assert "Family" not in taxonomy + assert "A Household is not a Family" in text diff --git a/workplans/INFO-WP-0022-social-collectives.md b/workplans/INFO-WP-0022-social-collectives.md new file mode 100644 index 0000000..28ed1c8 --- /dev/null +++ b/workplans/INFO-WP-0022-social-collectives.md @@ -0,0 +1,63 @@ +--- +id: INFO-WP-0022 +type: workplan +title: "Organization social collectives extension" +domain: infotech +repo: info-tech-canon +status: finished +owner: codex +topic_slug: canon +created: "2026-09-05" +updated: "2026-09-05" +state_hub_workstream_id: "452a4239-f13e-58fa-acc8-f083fd7178f4" +--- + +# Organization social collectives extension + +Implements CFED-WP-0001-T12 under accepted ADR-006 R6. Broaden itc-org explicitly +from enterprise structures to Community and Household social collectives. + +## Define distinct social collective actors + +```task +id: INFO-WP-0022-T01 +status: done +priority: medium +state_hub_task_id: "c6e55f93-e60c-57fc-b196-e46d05252fd8" +``` + +Define Community/Household under CollectiveActor with explicit scope and P4 +boundaries against Team, Group, Tenant and Family. Preserve numbered anchors. + +## Verify ownership and retrieval + +```task +id: INFO-WP-0022-T02 +status: done +priority: medium +state_hub_task_id: "d9eb233a-f98f-5931-bcd2-a093f1cdb4d8" +``` + +Add incremental machine-readable ownership for the two new definitions and kernel +map entries. Refresh generated retrieval surfaces; check ownership, hierarchy, +source preservation and existing repository tests. + +## Record completion and live continuation + +```task +id: INFO-WP-0022-T03 +status: done +priority: medium +state_hub_task_id: "a394be91-8c7b-5b36-b05e-edcc827d8d58" +``` + +Record project evidence and synchronize work records. CFED T13 remains the live +Family seed task; T07/T08 own corpus distribution and interface cards. No Family +model, consumer adoption or stable social-extension promotion is claimed. + +## Verification — 2026-09-05 + +make check passes: 46 tests, generated consistency, canon and small-saas profile +validation. One owner each for Community/Household; Family excluded from the +collective taxonomy. All 37 protected seed/pre-existing plan files unchanged. +See [project evidence](../../prj-canon-federation/docs/evidence/2026-09-05-social-collectives.md). diff --git a/workplans/index.yaml b/workplans/index.yaml index be177c8..e9c6b97 100644 --- a/workplans/index.yaml +++ b/workplans/index.yaml @@ -16,6 +16,14 @@ implementation_decisions: consumer_workplans_live_in_consumer_repos: true workplans: + - id: INFO-WP-0022 + title: Organization social collectives extension + status: finished + priority: medium + path: workplans/INFO-WP-0022-social-collectives.md + depends_on: [] + produces: [Community, Household] + - id: INFO-WP-0021 title: Identity model and upstream ownership reconciliation status: finished